Vertex AI Vector Search 可讓使用者透過向量嵌入搜尋語意相似的項目。 使用 Spanner 到 Vertex AI Vector Search 工作流程,整合 Spanner 資料庫與 Vector Search,對 Spanner 資料執行向量相似度搜尋。
下圖顯示完整的應用程式工作流程,說明如何啟用及使用 Spanner 資料的向量搜尋功能:

一般工作流程如下所示:
- 生成及儲存向量嵌入。 - 您可以生成資料的向量嵌入,然後與營運資料一起儲存在 Spanner 中並進行管理。您可以使用 Spanner 的 - ML.PREDICTSQL 函式生成嵌入,存取 Vertex AI 文字嵌入模型,或使用部署至 Vertex AI 的其他嵌入模型。
- 將嵌入內容同步到 Vector Search。 - 使用 Spanner To Vertex AI Vector Search Workflow,透過 Workflows 部署,將嵌入匯出並上傳至 Vector Search 索引。您可以使用 Cloud Scheduler 定期排定這項工作流程,讓 Vector Search 索引與 Spanner 中最新的嵌入內容變更保持同步。 
- 使用 Vector Search 索引執行向量相似度搜尋。 
用途範例
向量搜尋的說明用途範例:某線上零售商有數十萬件商品。在這個情境中,您是線上零售商的開發人員,希望在 Spanner 的產品目錄中使用向量相似度搜尋,協助顧客根據搜尋查詢找到相關產品。
按照一般工作流程中的步驟 1 和步驟 2,為產品目錄產生向量嵌入項目,並將這些嵌入項目同步至向量搜尋。
現在假設有位顧客在瀏覽應用程式時搜尋「最棒的快乾運動短褲,可穿下水」。應用程式收到這項查詢時,您需要使用 Spanner ML.PREDICT SQL 函式,為這項搜尋要求產生要求嵌入。請務必使用與產品目錄嵌入相同的嵌入模型。
接著,查詢 Vector Search 索引,找出對應嵌入與客戶搜尋要求產生的要求嵌入相似的產品 ID。搜尋索引可能會推薦語意相似項目的產品 ID,例如滑水短褲、衝浪服和泳褲。
向量搜尋傳回這些類似產品 ID 後,您可以查詢 Spanner,取得產品說明、庫存數量、價格和其他相關中繼資料,並向顧客顯示。
您也可以使用生成式 AI 處理 Spanner 傳回的結果,再向顧客顯示。舉例來說,您可以使用 Google 的大型生成式 AI 模型,生成建議產品的簡要摘要。詳情請參閱這篇教學課程,瞭解如何在電子商務應用程式中,使用生成式 AI 取得個人化建議。
後續步驟
- 瞭解如何使用 Spanner 產生嵌入項目。
- 進一步瞭解 AI 的多功能工具:向量嵌入
- 如要進一步瞭解機器學習和嵌入,請參閱嵌入速成課程。
- 如要進一步瞭解 Spanner 到 Vertex AI Vector Search 工作流程,請參閱 GitHub 存放區。
- 進一步瞭解開放原始碼 spanner-analytics 套件,這個套件可簡化 Python 中常見的資料分析作業,並整合 Jupyter 筆記本。