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

本頁面將介紹如何使用 LangChain 建構採用 LLM 的應用程式。本頁面的總覽會連結至 GitHub 中的程序指南。

什麼是 LangChain?

LangChain 是一種 LLM 自動化調度管理框架,可協助開發人員建構生成式 AI 應用程式或檢索增強生成 (RAG) 工作流程。提供結構、工具和元件,簡化複雜的 LLM 工作流程。

如要進一步瞭解 LangChain,請參閱 Google LangChain 頁面。如要進一步瞭解 LangChain 架構,請參閱 LangChain 產品說明文件。

MySQL 適用的 Cloud SQL 的 LangChain 元件

MySQL 適用的 Cloud SQL 提供下列 LangChain 介面:

瞭解如何搭配使用 LangChain 和 MySQL 適用的 Cloud SQL LangChain 快速入門

MySQL 適用的 Cloud SQL 向量儲存區

向量儲存區會從向量資料庫擷取及儲存文件和中繼資料。 向量儲存空間可讓應用程式執行語意搜尋,解讀使用者查詢的含意。這類搜尋稱為向量搜尋,可找出概念上與查詢相符的主題。在查詢時,向量儲存區會擷取與搜尋要求嵌入最相似的嵌入向量。在 LangChain 中,向量儲存庫會負責儲存嵌入資料,並為您執行向量搜尋。

如要在 MySQL 適用的 Cloud SQL 中使用向量儲存區,請使用 MySQLVectorStore 類別。

詳情請參閱 LangChain Vector Stores 產品說明文件。

向量儲存庫程序指南

向量儲存空間適用的 MySQL 適用的 Cloud SQL 指南說明如何執行下列操作:

  • 安裝整合套件和 LangChain
  • 建立 MySQLEngine 物件,並設定連線集區至 MySQL 適用的 Cloud SQL 資料庫
  • 初始化資料表
  • 使用 VertexAIEmbeddings 建立嵌入物件
  • 初始化預設 MySQLVectorStore
  • 新增文字
  • 刪除文字
  • 搜尋文件
  • 依向量搜尋文件
  • 新增索引來加快向量搜尋查詢速度
  • 移除索引
  • 建立自訂向量儲存空間
  • 使用中繼資料篩選器搜尋文件

MySQL 適用的 Cloud SQL 文件載入器

文件載入器會儲存、載入及刪除 LangChain Document 物件。舉例來說,您可以將資料載入至嵌入內容進行處理,然後儲存在向量儲存空間,或做為工具,為鏈結提供特定脈絡。

如要從 MySQL 適用的 Cloud SQL 中的文件載入器載入文件,請使用 MySQLLoader 類別。MySQLLoader 方法會從表格傳回一或多份文件。使用 MySQLDocumentSaver 類別儲存及刪除文件。

詳情請參閱「LangChain 文件載入器」主題。

文件載入器程序指南

文件載入器適用的 MySQL 適用的 Cloud SQL 指南說明如何執行下列操作:

  • 安裝整合套件和 LangChain
  • 從資料表載入文件
  • 在載入器中新增篩選器
  • 自訂連線和驗證
  • 指定客戶內容和中繼資料,自訂文件建構方式
  • 如何使用及自訂 MySQLDocumentSaver 來儲存和刪除文件

MySQL 適用的 Cloud SQL 的即時通訊訊息記錄

問答應用程式需要對話記錄,才能瞭解對話脈絡,進而回答使用者提出的問題。應用程式可透過 LangChain ChatMessageHistory 類別將訊息儲存至資料庫,並在需要時擷取訊息,以制定進一步的答案。訊息可以是問題、答案、陳述、問候語,或使用者/應用程式在對話期間提供的任何其他文字。ChatMessageHistory會儲存每則訊息,並將每則對話的訊息串連在一起。

MySQL 適用的 Cloud SQL 會使用 MySQLChatMessageHistory 擴充這個類別。

Chat 訊息記錄程序指南

這份 MySQL 適用的 Cloud SQL 指南說明如何執行下列操作:

  • 安裝 LangChain 並驗證 Google Cloud
  • 建立 MySQLEngine 物件,並設定連線集區至 MySQL 適用的 Cloud SQL 資料庫
  • 初始化資料表
  • 初始化 MySQLChatMessageHistory 類別,即可新增及刪除訊息
  • 使用 LangChain 運算式語言 (LCEL) 和 Google 的 Vertex AI 聊天模型,建立訊息記錄的鏈結