本頁面說明如何開始在應用程式中導入生成式 AI 功能,並介紹 Firestore 的生成式 AI 功能和整合方式。
使用 Cloud Firestore 進行向量搜尋的快速入門導覽課程
如要為產品推薦和聊天機器人等用途打造創新的 AI 輔助解決方案,通常需要向量相似度搜尋 (簡稱向量搜尋)。您可以在 Firestore 資料上執行向量搜尋,不必費心將資料複製到其他向量搜尋解決方案,維持操作的簡單和效率。
Cloud Firestore 中的向量搜尋核心工作流程包含 4 個步驟。
生成向量嵌入
使用向量搜尋的第一步是生成向量嵌入。 嵌入是文字、圖片和影片等不同類型資料的表示法,可擷取所代表實體之間的語意或語法相似度。您可以使用服務 (例如 Vertex AI Text Embeddings API) 計算嵌入。
將嵌入內容儲存在 Firestore 中
生成嵌入後,您可以使用其中一個支援的 SDK,將嵌入儲存在 Firestore 中。NodeJS SDK 中的這項作業如下所示:
const db = new Firestore();
let collectionRef = db.collection("beans");
await collectionRef.add({
name: "Kahawa coffee beans",
type: "arabica",
description: "Information about the Kahawa coffee beans.",
embedding_field: FieldValue.vector([0.1, 0.3, ..., 0.2]), // a vector with 768 dimensions
});
建立向量索引
下一步是建立 Firestore KNN 向量索引,用於儲存向量嵌入。在預先發布版中,您需要使用 gcloud
指令列工具建立索引。
執行向量搜尋
新增所有向量嵌入並建立向量索引後,即可執行搜尋。然後,您會在集合參照上使用 find_nearest
呼叫,傳遞要與儲存的嵌入項目比較的查詢向量嵌入項目,並指定要使用的距離函式。
如要再次瞭解工作流程和更多用途,請參閱我們的網誌文章。
解決方案:向量搜尋
摘要:儲存及查詢向量嵌入。
用途:這項功能供其他工具和功能使用。
解決方案:使用 Firebase 擴充功能進行向量搜尋
摘要:使用 Firebase 擴充功能,透過向量搜尋功能自動嵌入及查詢 Firestore 文件。
用途:在 Firebase 專案中執行自動向量搜尋。
解決方案:LangChain 整合功能
摘要:將 Firestore 做為 LangChain 的向量儲存庫、文件載入器或對話訊息記錄來源。
用途:建構生成式 AI 應用程式或檢索增強生成 (RAG) 工作流程。
解決方案:Genkit
摘要:Genkit 是開放原始碼架構,可協助您建構、部署及監控可用於正式環境的 AI 輔助應用程式。
用途:使用 Genkit 和 Cloud Firestore 建立應用程式,產生自訂內容、使用語意搜尋、處理非結構化輸入內容、根據業務資料回答問題等!