原文地址: 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.