Spanner AI 總覽

Spanner 及其多模態功能與 Google Cloud的 AI 服務和開放原始碼架構 LangChain 整合,可協助建構生成式 AI 應用程式。您可以透過相似度搜尋、檢索增強生成 (RAG) 和知識圖譜等功能,強化應用程式。Spanner 以擴充性、可用性和一致性為基礎,建構這項功能。

搭配使用 Spanner 和 Vector Search,對非結構化文字資料執行相似度搜尋。Spanner 可與 Vertex AI 等服務整合,從非結構化文字資料叫用向量嵌入的生成作業。這些嵌入是反映文字語意含義的數值表示法。如要找出概念上相似的項目,請使用向量距離函式,找出與搜尋要求嵌入最相似的嵌入向量。這個程序可讓您建構產品或內容推薦等功能。

如要開始使用,請先為現有文字資料大量生成及回填 Vertex AI 向量嵌入。方法是使用 SQL 和 Vertex AI 嵌入模型 (例如 text-embedding 模型),詳情請參閱文字嵌入 API 說明文件。 Spanner 支援使用近似最鄰近 (ANN)K 近鄰 (KNN) 查詢向量嵌入項目。ANN 會使用向量索引進行快速搜尋,並傳回近似結果。KNN 會執行詳盡的搜尋,傳回更準確的結果,但處理大型資料集時可能會較慢。您可以使用多個向量距離函式測量相似度,包括:

  • 餘弦距離:測量兩個向量之間的角度餘弦值,有助於找出方向相似的項目,不論大小為何。

  • 歐幾里得距離:測量兩個向量之間的直線距離。

  • 點積:計算向量大小的乘積,以及向量間角度的餘弦值。對於標準化向量而言,這可能是運算效率最高的選項。

如需詳細資訊,請參閱下列主題:

使用 SQL 生成機器學習預測

您可以在 Spanner 中使用 SQL 查詢,叫用部署在 Vertex AI 的大型語言模型 (LLM)。直接存取 LLM 可讓您對 Spanner 中儲存的資料執行預測,以進行情緒分析、文字分類和翻譯等工作。

使用 ML.PREDICT (GoogleSQL) 或 spanner.ML_PREDICT_ROW (PostgreSQL) 函式,即可產生機器學習 (ML) 預測結果,完全不需移動資料,也不必編寫自訂應用程式碼與 LLM 互動。這項功能可簡化應用程式架構,並讓機器學習功能更貼近資料。詳情請參閱「使用 SQL 生成 ML 預測」。

使用 Model Context Protocol (MCP) 連線至 LLM 代理

您可以將 Spanner 執行個體連線至支援模型上下文協定 (MCP) 的 IDE。 MCP 是一種開放通訊協定,可用於將大型語言模型連結至 Spanner 中的資料。連線後,LLM 代理程式就能查詢及與 Spanner 執行個體互動。詳情請參閱「將 IDE 連線至 Spanner」。

透過 Spanner 圖表發掘洞察資料

如要處理更多進階 RAG 用途,Spanner Graph 可整合圖形資料庫功能和 Spanner 的核心優勢。Spanner Graph 可讓您建立、儲存及查詢高度連結的資料。

整合 Spanner Graph 與 LangChain,建構 GraphRAG 應用程式。這項整合功能可強化傳統 RAG。GraphRAG 可讓您建立應用程式,擷取實體之間的複雜關係,例如知識圖譜。除了向量搜尋,這項整合功能還會使用圖表查詢,擷取資料中複雜的隱含關係。與單獨使用向量搜尋相比,同時使用圖形查詢和向量搜尋,可讓大型語言模型提供更準確且相關的回覆。

詳情請參閱「使用 Vertex AI 和 Spanner Graph 建構生成式 AI 的 GraphRAG 基礎架構」。

使用 LangChain 建構採用 LLM 的應用程式

Spanner 提供多個類別,可透過程式輔助方式使用 LangChain。LangChain 是一種 LLM 自動化調度管理架構,提供可簡化複雜 LLM 工作流程的結構、工具和元件。使用 LangChain 建構生成式 AI 應用程式和 RAG 工作流程。適用於 Spanner 的 LangChain 類別包括:

  • SpannerVectorStore: 儲存及搜尋向量嵌入,以便在應用程式中透過類別啟用相似度搜尋。

  • SpannerLoader:從 Spanner 載入資料,用於嵌入或為 LLM 鏈結提供特定背景資訊。

  • SpannerChatMessageHistory: 將對話記錄儲存在 Spanner 資料庫中,啟用對話式 AI 應用程式。

詳情請參閱「使用 LangChain 建構 LLM 輔助應用程式」和「適用於 LangChain 的 Spanner 用戶端程式庫」。

探索用途

運用 Spanner 的 AI 功能,為下列用途建構智慧型應用程式:

  • 電子商務推薦引擎:為產品說明生成向量嵌入項目,以支援推薦引擎。這項引擎可向顧客推薦類似商品,提升購物體驗並增加銷售量。詳情請參閱「在電子商務應用程式中,使用生成式 AI 取得個人化建議」。

  • 管理即時通訊訊息記錄:使用 Spanner 和 LangChain 儲存及擷取對話記錄。Spanner 會將這項資料儲存在資料庫中,並提供 SpannerChatMessageHistory 類別。這個類別會擴充 LangChain 基本類別,以便從資料庫儲存及擷取訊息。詳情請參閱「使用 Spanner 儲存即時通訊訊息記錄」。

  • 金融詐欺偵測:運用 Spanner Graph 分析使用者、帳戶和交易之間的複雜關係,找出傳統關聯式資料庫難以偵測的可疑模式和異常狀況。

  • 顧客 360:透過 Spanner Graph 追蹤關係、偏好設定和購買記錄,全面掌握顧客資訊。提供個人化建議、指定行銷廣告活動,以及提升客戶服務體驗。

  • 社群網路:模擬使用者活動和與 Spanner Graph 的互動,提供好友建議,並在社群網路上探索內容。

後續步驟

如要進一步瞭解如何在 Spanner 中導入 AI 功能,請參閱下列主題: