vespa-engine/sample-apps

Repository of sample applications for https://vespa.ai, the open big data serving engine

解决的问题

本仓库提供了一系列参考实现和教程,帮助开发者使用 Vespa 引擎实现高级搜索和检索模式。它弥合了核心引擎功能与 RAG、混合搜索和视觉检索等实际 AI 应用之间的差距。

工作原理

每个示例应用都遵循标准结构,包括数据集、应用包(包含模式和服务配置),以及可选的构建脚本。这些示例展示了多种技术,包括:

  • 混合搜索:结合传统的关键词匹配(BM25)与语义向量搜索。
  • 向量索引:使用 HNSW 实现近似最近邻搜索,并使用多向量索引处理长文档。
  • RAG 流水线:集成 LLM 实现文档增强和响应生成,支持本地和云服务两种方式。
  • 视觉检索:使用视觉语言模型(VLM)如 ColPali,将 PDF 页面作为图像进行索引和检索。
  • 高级嵌入:实现二进制嵌入(Cohere)、Matryoshka 嵌入(OpenAI)和稀疏表示(SPLADE)。

适用人群

正在使用或评估 Vespa 构建搜索引擎、推荐系统或检索增强生成(RAG)应用的开发者和 AI 工程师。

主要亮点

  • 生产级 RAG:为将 RAG 应用扩展至生产环境提供蓝图。
  • 多模态能力:使用 VLM 实现数十亿级图像搜索和视觉 PDF 检索的示例。
  • 多语言支持:支持多语言语义搜索的实现。
  • 效率优化:通过二进制向量和 Matryoshka 嵌入,演示减少存储和内存占用的方案。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目