定义
关键词搜索匹配包含查询中精确词汇的文档,而语义搜索使用向量 embedding 查找概念上相似的文档,即使使用了不同的词汇。
深入了解
传统关键词搜索依赖词频、倒排索引和 BM25 等算法对包含查询词汇的文档进行排名。语义搜索使用神经网络将文本转换为高维向量(embedding),并基于向量空间中的余弦相似度查找结果。这意味着对"affordable accommodation"的语义搜索可以匹配关于"budget hotels"或"cheap places to stay"的文档。在 RAG 应用中,结合两种方法能获得最佳结果:语义搜索用于召回,关键词搜索用于精确度。Scavio 等搜索 API 从主要平台返回关键词匹配结果,可以与向量数据库结果结合形成混合检索策略。
用法示例
一个 RAG 管道使用语义搜索查询内部文档向量数据库,并通过 Scavio 使用关键词搜索获取实时网络结果。两个结果集在发送给 LLM 作为上下文前被合并和重排,将机构知识与当前信息相结合。
平台
语义搜索 vs 关键词搜索在以下平台中相关,所有这些平台都可通过Scavio的统一API访问:
- YouTube