Link Search Menu Expand Document Documentation Menu

将数据摄取到向量索引中

创建向量索引后,您需要摄取原始向量数据,或者在摄取数据时将其转换为嵌入。

摄取方法比较

下表比较了两种摄取方法。

功能 数据格式 摄入管道 向量生成 附加字段
原始向量摄取 预生成向量 非必需 外部 可选元数据
摄取时将数据转换为嵌入 文本或图像数据 必需 内部(摄取期间) 原始数据 + 嵌入

原始向量摄取

当处理原始向量或在 OpenSearch 之外生成的嵌入时,您可以直接将向量数据摄取到 knn_vector 字段。由于向量已生成,因此不需要管道。

PUT /my-raw-vector-index/_doc/1
{
  "my_vector": [0.1, 0.2, 0.3],
  "metadata": "Optional additional information"
}

您也可以使用 Bulk API 高效地摄取多个向量。

PUT /_bulk
{"index": {"_index": "my-raw-vector-index", "_id": 1}}
{"my_vector": [0.1, 0.2, 0.3], "metadata": "First item"}
{"index": {"_index": "my-raw-vector-index", "_id": 2}}
{"my_vector": [0.2, 0.3, 0.4], "metadata": "Second item"}

摄取时将数据转换为嵌入

配置了自动生成嵌入的摄取管道后,您可以将文本数据直接摄取到索引中。

PUT /my-ai-search-index/_doc/1
{
  "input_text": "Example: AI search description"
}

管道会自动生成嵌入并将其存储在 output_embedding 字段中。

您也可以使用 Bulk API 高效地摄取多个文档。

PUT /_bulk
{"index": {"_index": "my-ai-search-index", "_id": 1}}
{"input_text": "Example AI search description"}
{"index": {"_index": "my-ai-search-index", "_id": 2}}
{"input_text": "Bulk API operation description"}

处理稀疏向量

OpenSearch 也支持稀疏向量。有关更多信息,请参阅神经稀疏搜索

文本分块

有关在密集或稀疏 AI 搜索期间生成嵌入之前将大型文档拆分为更小片段的信息,请参阅文本分块

后续步骤

剩余 350 字符

有问题?

想贡献?