向量搜索
Elastic Stack Serverless
提示
正在寻找一种最小的配置方法? semantic_text
字段类型通过合理的默认设置和自动模型管理,提供了对这些向量搜索实现的抽象。 这是大多数用户的推荐方法。 了解更多关于 semantic_text 的信息。
向量嵌入是现代搜索中的一项核心技术,它使模型能够学习和表示输入数据中的复杂关系。当您的内容被向量化后,Elasticsearch 可以帮助用户根据含义和相似性查找内容,而不仅仅是关键字或完全匹配的术语。
向量搜索是大多数现代 语义搜索 实现的重要组成部分。它也可以独立地用于各种相似性匹配用例。 在 概述 页面中了解更多关于人工智能驱动搜索的用例。
本指南探讨了向量搜索方法的更手动的技术实现,这些方法不使用更高级的 semantic_text
工作流程。
您使用哪种方法取决于您的具体要求和用例。
这是一个 Elasticsearch 中可用的向量搜索字段类型和查询的快速参考概述
向量类型 | 字段类型 | 查询类型 | 主要用例 |
---|---|---|---|
密集 | dense_vector |
knn |
使用您选择的嵌入模型进行语义相似性搜索 |
稀疏 | sparse_vector |
sparse_vector |
使用 ELSER 模型进行语义术语扩展 |
稀疏或密集 | semantic_text |
semantic |
与实现细节无关的托管语义搜索 |
密集神经网络嵌入通过将内容转换为固定长度的浮点数向量来捕获语义含义。 相似的内容映射到向量空间中的附近点,使其非常适合
- 查找语义上相似的内容
- 将问题与答案匹配
- 图像相似性搜索
- 基于内容的推荐
稀疏向量方法使用 ELSER 模型来扩展具有语义相关术语的内容。 这种方法在添加语义理解的同时保留了解释性,使其非常适合
- 增强的关键字搜索
- 需要可解释结果的案例
- 特定领域的搜索
- 大规模部署