定义

什么是向量搜索?

向量搜索利用机器学习 (ML) 来捕获非结构化数据(包括文本和图像)的含义和上下文,并将其转换为数值表示。向量搜索常用于语义搜索,它使用近似最近邻 (ANN) 算法查找相似的数据。与传统的关键字搜索相比,向量搜索可以产生更相关的结果并更快地执行。

Video thumbnail

为什么向量搜索很重要?

您是否经常遇到想查找某物,但不确定它叫什么的情况?您可能知道它的用途或有相关描述。但如果没有关键字,您只能进行搜索。

向量搜索克服了这一限制,允许您通过您的意思进行搜索。它可以根据相似性搜索快速提供查询答案。这是因为向量嵌入可以捕获文本以外的非结构化数据,如视频、图像和音频。您可以通过将向量搜索与过滤和聚合相结合来优化相关性,从而增强搜索体验,方法是实施混合搜索并将其与传统评分相结合。

向量搜索引擎是如何工作的?

向量搜索引擎(被称为向量数据库语义或余弦搜索)会找到给定(向量化)查询的最近邻居。

传统搜索依赖于关键字的提及、词汇相似性和单词出现频率,而向量搜索引擎使用嵌入空间中的距离来表示相似性。查找相关数据变成了搜索查询的最近邻居。

Diagram of how a vector search engine works using vector embeddings
  • 向量嵌入

    向量嵌入是数据和相关上下文的数值表示,存储在高维(密集)向量中。可以对生成嵌入的模型进行数百万个示例的训练,以提供更相关和准确的结果。在某些情况下,您收集或工程化来表示文档关键特征的数值数据可以用作嵌入。您只需要能够高效搜索的能力。

  • 相似度分数

    向量搜索引擎的核心思想是,如果数据和文档相似,它们的向量也会相似。通过使用向量嵌入为查询和文档编制索引,您可以找到与查询最相似的文档作为最近邻居。

  • ANN 算法

    传统的最近邻算法,如 k 最近邻算法 (kNN),会导致过长的执行时间和耗费计算资源。ANN 以牺牲完美准确性为代价,换取在高维嵌入空间中大规模高效执行。

向量搜索用例

向量搜索不仅为下一代搜索体验提供动力,还为一系列新的可能性打开了大门。

  • 向量搜索为语义或相似性搜索提供支持。由于含义和上下文已捕获在嵌入中,因此向量搜索可以找到用户所指的内容,无需完全匹配关键字。它适用于文本数据(文档)、图像和音频。轻松快速地查找与查询相似或相关的产品。

  • 推荐

    生成嵌入的模型学会识别相似的文档及其在嵌入空间中的向量。例如,应用程序可能会推荐其他购买过您所购商品的人也喜欢的电影或产品。但是,请确保嵌入是通过某种受欢迎程度或喜爱程度作为目标指标导出的。

    向量距离可以与其他指标结合使用,以便推荐达到多个目标。例如,按满意度评分和收入潜力对产品推荐进行排名。

  • 问题解答

    将文档转换为文本嵌入可以与现代自然语言处理 (NLP) 相结合,以提供问题的全文答案。这种方法使用户无需研究冗长的手册,并使您的团队能够更快地提供答案。

    “问题解答”转换器模型可以获取知识库文档和您当前问题的文本嵌入表示,以提供最接近的匹配项作为“答案”。

不要止步于语义搜索!

  • 浏览非结构化数据

    搜索任何非结构化数据。您可以为文本、图像、音频或传感器测量值创建嵌入。

  • 按元数据筛选

    使用元数据筛选向量搜索结果。通过在线应用近似最近邻 (ANN) 搜索的过滤器,在不牺牲速度的情况下保持召回率。

  • 重新排名搜索结果

    向量相似性可以解释为相似度评分,您可以使用其他数据对其进行重新排名。这包括您的向量搜索数据库中已有的静态字段,以及通过应用机器学习模型获得的新属性。

  • 混合评分

    为了进一步优化,将向量相似性与 BM25F 分数结合使用,称为混合评分。这允许您通过向量相似性对图像进行排名,同时实现 BM25F,它可以为文本提供更好的排名。

如何开始

通过 Elastic 轻松实现向量搜索和 NLP

您不必费力就能实现向量搜索并应用 NLP 模型。借助 Elasticsearch Relevance Engine™ (ESRE),您将获得一套用于构建 AI 搜索应用程序的工具包,这些工具包可与生成式 AI大型语言模型 (LLM) 一起使用。

借助 ESRE,您可以构建创新的搜索应用程序,生成嵌入,存储和搜索向量,并使用 Elastic 的 Learned Sparse Encoder 实现语义搜索。了解更多关于如何将 Elasticsearch 用作您的向量数据库的信息,或尝试这个自主学习的向量搜索实践课程

Video thumbnail
  • 大型语言模型

    使用您的私有数据(而不仅仅是公开训练的数据)为 LLM 提供业务特定信息。使用 Elasticsearch 并通过与您选择的 LLM 集成的 API 和插件访问生成式 AI。

  • 文本嵌入和更多

    了解如何使用 Elastic 为您的数据分配情感和其他类别。应用命名实体识别 (NER) 来使用其他元数据改善搜索体验。