本頁面介紹 RAG Engine 支援的向量資料庫,並說明如何將向量資料庫 (向量儲存庫) 連接至 RAG 語料庫。
向量資料庫在 RAG 應用程式的擷取作業中扮演重要角色。向量資料庫提供專門的向量嵌入儲存和查詢方式,向量嵌入是文字或其他資料的數學表示形式,可擷取語意和關係。向量嵌入可讓 RAG 系統在龐大的知識庫中,快速準確地找出最相關的資訊,即使是處理複雜或細微的查詢也沒問題。結合嵌入模型後,向量資料庫有助於克服 LLM 的限制,並提供更準確、相關且全面的回覆。
支援的向量資料庫
建立 RAG 語料庫時,RAG Engine 會預設提供企業適用的 RagManagedDb 做為向量資料庫,不需要額外佈建或管理。RagManagedDb 提供 KNN 和 ANN 搜尋選項,並允許切換至基本層級,進行一些快速原型設計和實驗。如要進一步瞭解如何選擇 RagManagedDb 的擷取策略或更新層級,請參閱「搭配 RAG 使用 RagManagedDb」。如要讓 RAG Engine 自動建立及管理向量資料庫,請參閱 REST 資源:projects.locations.ragCorpora
。
除了預設的 RagManagedDb,RAG Engine 也可讓您在 RAG 語料庫中佈建及使用向量資料庫。在這種情況下,您必須負責向量資料庫的生命週期和可擴充性。
比較向量資料庫選項
下表列出 RAG Engine 支援的向量資料庫,並提供相關頁面的連結,說明如何在 RAG 語料庫中使用向量資料庫。
| 向量資料庫 | 福利 | 最適合用於 | 缺點 | 支援的距離指標 | 搜尋類型 | 發布階段 |
|---|---|---|---|---|---|---|
RagManagedDb (預設) 是區域分散式可擴充資料庫服務,提供極高的一致性和高可用性,可用於向量搜尋。easy simple fast quick |
|
|
|
cosine |
KNN (預設) 和 ANN | 正式發布版 |
| 向量搜尋是 Agent Platform 中的向量資料庫服務,專為機器學習工作最佳化。 |
|
|
|
cosinedot-product |
ANN | 正式發布版 |
| Vertex AI 特徵儲存庫是代管服務,可整理、儲存及提供機器學習特徵。 |
|
|
|
cosinedot-productL2 squared |
ANN | 預覽 |
| Weaviate 是彈性模組化的開放原始碼向量資料庫。 |
|
|
|
cosinedot-productL2 squaredhammingmanhattan |
支援 ANN + 混合搜尋 | 預覽 |
| Pinecone 是全代管的雲端原生向量資料庫,專為高效能相似度搜尋而設計。 |
|
|
|
cosineeuclideandot-product |
ANN | 正式發布版 |
後續步驟
如要建立 RAG 語料庫,請參閱「方法:ragCorpora.create」
如要列出 RAG 語料庫,請參閱「方法:ragCorpora.list」一文。