原文地址: https://www.elastic.co/guide/en/elasticsearch/reference/7.7/dense-vector.html, 原文档版权归 www.elastic.co 所有
IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
Dense vector datatypeedit
A dense_vector
field stores dense vectors of float values.
The maximum number of dimensions that can be in a vector should
not exceed 2048. A dense_vector
field is a single-valued field.
These vectors can be used for document scoring. For example, a document score can represent a distance between a given query vector and the indexed document vector.
You index a dense vector as an array of floats.
PUT my_index { "mappings": { "properties": { "my_vector": { "type": "dense_vector", "dims": 3 }, "my_text" : { "type" : "keyword" } } } } PUT my_index/_doc/1 { "my_text" : "text1", "my_vector" : [0.5, 10, 6] } PUT my_index/_doc/2 { "my_text" : "text2", "my_vector" : [-0.5, 10, 10] }
Internally, each document’s dense vector is encoded as a binary
doc value. Its size in bytes is equal to
4 * dims + 4
, where dims
—the number of the vector’s dimensions.