Output Parsers

Output Parsers

將 LLM 輸出轉為 JSON 等格式的工具

詳細解釋

在 LLM 工作流中,將模型的文本輸出轉換為結構化數據(Python 對象、JSON、數據庫記錄)的組件,是連接「自由文本」和「程序邏輯」的橋樑。

為何需要:

  • LLM 輸出是自由文本,程序需要結構化數據操作
  • 直接字符串處理易錯、脆弱
  • 類型安全:編譯時檢查而非運行時報錯

解析策略:

  • Pydantic:定義類,自動驗證和轉換
  • JSON:要求模型輸出 JSON,用標準庫解析
  • XML/CSV:特定場景的結構化格式
  • 正則:從文本提取特定模式
  • 復試:解析失敗時重試或請模型修正

LangChain 的輸出解析器:

  • PydanticOutputParser:最常用,類型安全
  • StructuredOutputParser:字典列表結構
  • CommaSeparatedListOutputParser:簡單列表
  • DatetimeOutputParser:日期時間對象

錯誤處理:

  • 格式錯誤:模型未按指示輸出有效 JSON
  • 類型錯誤:數字字段輸出字符串
  • 缺失字段:必填項未提供
  • 驗證失敗:值不在允許範圍(如年齡 > 200)

最佳實踐:

  • 提示中給出示例(Few-shot)
  • 使用「修復」鏈:解析失敗 → 反饋錯誤 → 重新生成
  • 寬鬆模式:允許部分解析,不強求全有或全無

這是 LLM 應用的「膠水代碼」—— 看似簡單,但佔據大量開發時間,好的解析器能顯著提升系統魯棒性。

探索更多AI詞彙

查看所有分類,繼續學習AI知識