Link Search Menu Expand Document Documentation Menu

搜索向量数据

OpenSearch 支持多种向量数据搜索方法,这些方法根据向量的创建和索引方式进行了定制。本指南介绍了原始向量搜索和自动生成嵌入式搜索的查询语法及选项。

搜索类型比较

下表比较了每种向量搜索方法的搜索语法和典型用例。

功能 查询类型 输入格式 所需模型 用例
原始向量 knn 向量数组 原始向量搜索
自动生成的嵌入 neural 文本或图像数据 AI 搜索

搜索原始向量

要搜索原始向量,请使用 knn 查询类型,提供 vector 数组作为输入,并指定返回结果的数量 k

GET /my-raw-vector-index/_search
{
  "query": {
    "knn": {
      "my_vector": {
        "vector": [0.1, 0.2, 0.3],
        "k": 2
      }
    }
  }
}

搜索自动生成的嵌入

OpenSearch 支持AI 驱动的搜索方法,包括语义搜索、混合搜索、多模态搜索以及带有检索增强生成 (RAG) 的对话式搜索。这些方法会自动从查询输入中生成嵌入。

要运行 AI 驱动的搜索,请使用 neural 查询类型。指定 query_text 输入、您在摄取管道中配置的嵌入模型的模型 ID,以及返回结果的数量 k。要从搜索结果中排除嵌入,请在 _source.excludes 参数中指定嵌入字段。

GET /my-ai-search-index/_search
{
  "_source": {
    "excludes": [
      "output_embedding"
    ]
  },
  "query": {
    "neural": {
      "output_embedding": {
        "query_text": "What is AI search?",
        "model_id": "mBGzipQB2gmRjlv_dOoB",
        "k": 2
      }
    }
  }
}

处理稀疏向量

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

后续步骤

剩余 350 字符

有问题?

想贡献?