操作指南
在這裡,您將找到「我該如何....?」類型問題的答案。這些指南是目標導向且具體的;它們旨在幫助您完成特定任務。如需概念性解釋,請參閱概念指南。如需端到端逐步解說,請參閱教學課程。如需每個類別和函數的完整描述,請參閱API 參考。
安裝
主要功能
這突顯了使用 LangChain 的核心功能。
組件
這些是您在建構應用程式時可以使用的核心組件。
聊天模型
聊天模型是較新形式的語言模型,它接收訊息並輸出訊息。請參閱支援的整合,以取得特定供應商的聊天模型入門詳細資訊。
- 操作指南:進行函數/工具呼叫
- 操作指南:讓模型返回結構化輸出
- 操作指南:快取模型回應
- 操作指南:取得對數機率
- 操作指南:建立自訂聊天模型類別
- 操作指南:串流回覆
- 操作指南:追蹤 Token 使用量
- 操作指南:跨供應商追蹤回應元資料
- 操作指南:使用聊天模型呼叫工具
- 操作指南:串流工具呼叫
- 操作指南:處理速率限制
- 操作指南:少量提示工具行為
- 操作指南:綁定模型特定格式化的工具
- 操作指南:強制特定的工具呼叫
- 操作指南:使用本機模型
- 操作指南:在一行程式碼中初始化任何模型
訊息
訊息是聊天模型的輸入和輸出。它們具有一些 content
和 role
,用於描述訊息的來源。
提示範本
提示範本負責將使用者輸入格式化為可以傳遞給語言模型的格式。
範例選擇器
範例選擇器負責選擇正確的少量範例傳遞給提示。
- 操作指南:使用範例選擇器
- 操作指南:按長度選擇範例
- 操作指南:按語義相似度選擇範例
- 操作指南:按語義 n-gram 重疊選擇範例
- 操作指南:按最大邊際相關性選擇範例
- 操作指南:從 LangSmith 少量範例資料集中選擇範例
LLM
LangChain 稱為 LLM 的是較舊形式的語言模型,它接收字串並輸出字串。
輸出解析器
輸出解析器負責接收 LLM 的輸出並解析為更結構化的格式。
- 操作指南:從訊息物件解析文本
- 操作指南:使用輸出解析器將 LLM 回應解析為結構化格式
- 操作指南:解析 JSON 輸出
- 操作指南:解析 XML 輸出
- 操作指南:解析 YAML 輸出
- 操作指南:當輸出解析錯誤發生時重試
- 操作指南:嘗試修復輸出解析中的錯誤
- 操作指南:編寫自訂輸出解析器類別
文件載入器
文件載入器負責從各種來源載入文件。
- 操作指南:載入 PDF 檔案
- 操作指南:載入網頁
- 操作指南:載入 CSV 資料
- 操作指南:從目錄載入資料
- 操作指南:載入 HTML 資料
- 操作指南:載入 JSON 資料
- 操作指南:載入 Markdown 資料
- 操作指南:載入 Microsoft Office 資料
- 操作指南:編寫自訂文件載入器
文本分割器
文本分割器接收文件並分割成可用於檢索的區塊。
- 操作指南:遞迴地分割文本
- 操作指南:分割 HTML
- 操作指南:按字元分割
- 操作指南:分割程式碼
- 操作指南:按標題分割 Markdown
- 操作指南:遞迴地分割 JSON
- 操作指南:將文本分割成語義區塊
- 操作指南:按 Token 分割
嵌入模型
嵌入模型接收一段文本並建立其數值表示形式。請參閱支援的整合,以取得特定供應商的嵌入模型入門詳細資訊。
向量儲存庫
向量儲存庫是可以有效儲存和檢索嵌入的資料庫。請參閱支援的整合,以取得特定供應商的向量儲存庫入門詳細資訊。
檢索器
檢索器負責接收查詢並返回相關文件。
- 操作指南:使用向量儲存庫檢索資料
- 操作指南:生成多個查詢以檢索資料
- 操作指南:使用情境壓縮來壓縮檢索到的資料
- 操作指南:編寫自訂檢索器類別
- 操作指南:將相似度分數添加到檢索器結果
- 操作指南:合併來自多個檢索器的結果
- 操作指南:重新排序檢索到的結果,以減輕「迷失在中間」效應
- 操作指南:為每個文件生成多個嵌入
- 操作指南:檢索區塊的完整文件
- 操作指南:生成元資料篩選器
- 操作指南:建立時間加權檢索器
- 操作指南:使用混合向量和關鍵字檢索
索引
索引是使您的向量儲存庫與底層資料來源保持同步的過程。
工具
LangChain 工具包含工具的描述(傳遞給語言模型)以及要呼叫的函數的實作。請參考此處以取得預建工具的列表。
- 操作指南:建立工具
- 操作指南:使用內建工具和工具組
- 操作指南:使用聊天模型呼叫工具
- 操作指南:將工具輸出傳遞給聊天模型
- 操作指南:將運行時值傳遞給工具
- 操作指南:為工具添加人為迴路
- 操作指南:處理工具錯誤
- 操作指南:強制模型呼叫工具
- 操作指南:停用並行工具呼叫
- 操作指南:從工具存取
RunnableConfig
- 操作指南:從工具串流事件
- 操作指南:從工具返回 Artifact
- 操作指南:將可執行物件轉換為工具
- 操作指南:為模型添加臨時工具呼叫功能
- 操作指南:傳遞運行時機密資訊
多模態
代理程式
如需代理程式的深入操作指南,請查看 LangGraph 文件。
回呼
回呼允許您掛鉤到 LLM 應用程式執行的各個階段。
自訂
LangChain 的所有組件都可以輕鬆擴展以支援您自己的版本。
- 操作指南:建立自訂聊天模型類別
- 操作指南:建立自訂 LLM 類別
- 操作指南:建立自訂嵌入類別
- 操作指南:編寫自訂檢索器類別
- 操作指南:編寫自訂文件載入器
- 操作指南:編寫自訂輸出解析器類別
- 操作指南:建立自訂回呼處理器
- 操作指南:定義自訂工具
- 操作指南:調度自訂回呼事件
序列化
使用案例
這些指南涵蓋特定使用案例的詳細資訊。
使用 RAG 進行問答
檢索增強生成 (RAG) 是將 LLM 連接到外部資料來源的一種方式。如需 RAG 的高階教學課程,請查看本指南。
萃取
萃取是指當您使用 LLM 從非結構化文本中萃取結構化資訊時。如需萃取的高階教學課程,請查看本指南。
聊天機器人
聊天機器人涉及使用 LLM 進行對話。如需建構聊天機器人的高階教學課程,請查看本指南。
查詢分析
查詢分析是使用 LLM 生成要發送到檢索器的查詢的任務。如需查詢分析的高階教學課程,請查看本指南。
基於 SQL + CSV 的問答
您可以使用 LLM 對表格資料進行問答。如需高階教學課程,請查看本指南。
基於圖形資料庫的問答
您可以使用 LLM 對圖形資料庫進行問答。如需高階教學課程,請查看本指南。
摘要
LLM 可以摘要和提煉文本中的所需資訊,包括大量文本。如需高階教學課程,請查看本指南。
LangChain 運算式語言 (LCEL)
LCEL 是一種協調解決方案。請參閱我們的概念頁面,以取得有關何時使用 LCEL 的建議。
LangChain 運算式語言是一種建立任意自訂鏈的方式。它建立在 Runnable 協定之上。
LCEL 速查表:如需如何使用主要 LCEL 基本元素的快速概觀。
遷移指南:適用於將舊版鏈抽象遷移到 LCEL。
- 操作指南:鏈接可執行物件
- 操作指南:串流可執行物件
- 操作指南:並行調用可執行物件
- 操作指南:為可執行物件添加預設調用參數
- 操作指南:將任何函數轉換為可執行物件
- 操作指南:將輸入從一個鏈步驟傳遞到下一個步驟
- 操作指南:在運行時配置可執行物件行為
- 操作指南:為鏈添加訊息歷史記錄(記憶體)
- 操作指南:在子鏈之間路由
- 操作指南:建立動態(自我建構)鏈
- 操作指南:檢查可執行物件
- 操作指南:為可執行物件添加後備方案
- 操作指南:將運行時機密資訊傳遞給可執行物件
LangGraph
LangGraph 是 LangChain 的擴展,旨在透過將步驟建模為圖形中的邊和節點,來建構具有 LLM 的穩健且具狀態的多參與者應用程式。
LangGraph 文件目前託管在另一個網站上。您可以在此處瀏覽 LangGraph 操作指南。
LangSmith
LangSmith 允許您密切追蹤、監控和評估您的 LLM 應用程式。它與 LangChain 和 LangGraph 無縫整合,您可以使用它來檢查和偵錯您建構的鏈和代理程式的個別步驟。
LangSmith 文件託管在另一個網站上。您可以在此處瀏覽 LangSmith 操作指南,但我們將重點介紹以下幾個與 LangChain 特別相關的部分
評估
評估效能是建構 LLM 驅動應用程式的重要部分。LangSmith 有助於流程的每個步驟,從建立資料集到定義指標,再到執行評估器。
若要瞭解更多資訊,請查看LangSmith 評估操作指南。
追蹤
追蹤讓您能夠觀察鏈和代理程式的內部運作,對於診斷問題至關重要。
您可以在LangSmith 文件的此部分中查看一般追蹤相關的操作指南。