Skip to content

Create Index Mapping: The dims parameter for dense vector field type should be optional #714

@spinscale

Description

@spinscale

Java API client version

8.11.1

Java version

21

Elasticsearch Version

8.11.1

Problem description

The following snippet returns an error, but should not according to the documentation

        client.indices().create(b -> b
                .index("wikipedia-german")
                .mappings(mb -> mb
                        .properties("paragraphs", pb -> pb.nested(nb -> nb
                                .properties("vector", vb -> vb.denseVector(t -> t))
                                .properties("text", tb -> tb.text(t -> t.index(false))))
                        )
                )
        );

results in

Exception in thread "main" co.elastic.clients.util.MissingRequiredPropertyException: Missing required property 'DenseVectorProperty.dims'

However, the documentation for 8.11 states at https://www.elastic.co/guide/en/elasticsearch/reference/current/dense-vector.html#dense-vector-params:

 dims
    (Optional, integer) Number of vector dimensions. Can’t exceed 4096. If dims is not specified, it will be set to the length of the first vector added to the field. 

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area: SpecificationRelated to the API spec used to generate client code

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions