elasticsearch-java
elasticsearch-java copied to clipboard
Create Index Mapping: The dims parameter for dense vector field type should be optional
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.