Hybrid Search
探索混合搜索如何结合关键字匹配与语义 AI。了解如何使用来自 Ultralytics YOLO26 的元数据构建上下文感知的搜索管道。
这种搜索方法结合了传统关键词匹配的精确性和现代 AI 的上下文理解能力,通过利用稀疏和密集数据表示来检索并对信息进行排序。标准的 search engine 完全依赖于精确的关键词匹配(即 lexical search),而 vector search engines 则完全依赖于 semantic similarity,混合搜索引擎通过融合这两种方法来提供高度准确且具备上下文感知的结果。
工作原理
典型的混合搜索流程会同时执行两种不同的检索方法,并将它们的输出合并为一个单一的、优化后的排序结果:
- 词法 (稀疏) 搜索:使用类似 BM25 的算法,根据词频对精确的关键词匹配进行评分。这对于检索纯语义模型可能难以识别的特定实体、首字母缩写、产品 SKU 或专业术语至关重要。
- 语义 (密集) 搜索:利用 AI 模型生成高维数字数组,以理解查询的深层含义和上下文。这使得系统即便在查询中缺少确切词汇时,也能找到相关结果。
一旦两种方法都检索到各自的候选结果,fusion algorithm(最常见的是 Reciprocal Rank Fusion (RRF))会将这些列表合并。RRF 根据每一项在各自稀疏和密集结果集中的排名计算出一个新分数。这确保了在任一或两种搜索中排名靠前的文档能够脱颖而出,从而在广泛的上下文匹配与精准的关键词准确性之间取得平衡。
现实世界的 AI 和 ML 应用
现代 AI 架构在生产环境中严重依赖这种技术,以克服仅使用单一检索方法的局限性。
- 混合 RAG (检索增强生成):在企业知识系统中,为 Large Language Model (LLM) 提供最相关的上下文对于防止 hallucinations 至关重要。混合 RAG 设置确保模型在检索满足精确技术约束的文档的同时,也能提取语义相关的段落。
- 电子商务和视觉产品发现:零售商利用混合搜索来驱动产品目录。用户可能会搜索“红色跑鞋”。词法引擎匹配精确的品牌或类别关键词,而 vision AI model 则使用图像嵌入来呈现视觉上相似的商品。
如今,几乎所有主要的 vector database(包括 Pinecone、Qdrant、OpenSearch 以及通过 pgvector 使用的 PostgreSQL)都原生支持混合搜索。这使得开发者可以在单一基础设施中高效索引稀疏关键词和密集向量。
为混合搜索生成元数据
在 computer vision 流程中,你可以从图像中提取有意义的关键词来构建混合索引的稀疏组件。使用 Ultralytics YOLO26,你可以自动对图像执行 object detection,并将这些 class names 用作 metadata tags。然后,这些关键词标签可以与图像的密集向量嵌入配对,实现综合索引。
from ultralytics import YOLO
# Load the recommended Ultralytics YOLO26 object detection model
model = YOLO("yolo26n.pt")
# Run inference to detect objects in an image
results = model("store_aisle.jpg")
# Extract predicted class names to be indexed as keyword metadata (sparse data)
keywords = [model.names[int(box.cls)] for box in results[0].boxes]
print("Sparse keywords for lexical search:", keywords)通过将精确的、由 AI 生成的稀疏关键词与密集图像嵌入相结合,开发者可以利用 Ultralytics Platform 和支持混合搜索的向量数据库,构建出强大且能够完美理解数据中显式文本标签和隐式视觉上下文的 multimodal search engines。






