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 嵌入,示範減少儲存與記憶體用量的方案。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案