目標先講清楚:
這篇聚焦 LangSmith 設定與使用體感;同場加映兩個開源替代(Langfuse、OpenLIT)與 LiveKit Dashboard 的極簡介紹。
因為 LangSmith 跟 LangGraph 的相容性非常高:官方明說「只要設幾個環境變數就能自動追蹤 LangGraph 工作流」,不用大改程式。你會拿到每次呼叫的完整 Trace,包含節點、訊息與工具互動,後續擴充能力(RAG、Tools、記憶)時也能一路觀測。
路線 | 特色 | 我實測的優缺點(簡短) |
---|---|---|
LangSmith(雲) | LangChain/LangGraph 一線整合,Trace 與 Dashboard 開箱即用 | 優點:設定最少、與 LangGraph 深度對齊、可顯示 Token 與成本估算、Prompt 與輸出可視化。缺點:只有雲端版本。([LangChain Docs][2]) |
Langfuse(開源、自架) | OSS、可自託管,觀測/評估/Prompt 管理一應俱全 | 優點:本地部署、開源自由度。注意:呈現方式與預設視覺化偏工程取向,團隊可能需要自行調整看板。 |
OpenLIT(開源、自架) | OpenTelemetry 原生,覆蓋 LLM、向量庫、GPU | 優點:一條指令就能打點,OTel 生態相容。注意:官方文件目前未標示「租戶(tenant)/多租戶」管理能力,若要多團隊隔離需自行規劃。([docs.openlit.io][4]) |
我這輪選 LangSmith:最少變更就能把 LangGraph Agent 「看得一清二楚」。
.env
範例(直接可用)把 Agent 換成 LangGraph 後,只需加上這 4 個變數;重啟服務,Trace 自動上傳,其他程式不用改:
dotenv
# LangSmith 基本追蹤設定
LANGSMITH_TRACING=true
LANGSMITH_API_KEY=lsm_xxx_your_key_here
LANGSMITH_ENDPOINT=https://api.smith.langchain.com
LANGSMITH_PROJECT=project_xxx
# (可選)你也能走「程式內設定」,但用環境變數最單純
# 參考:Trace without env vars
下圖是我這次的觀測畫面(LangSmith Trace 與成本/延遲摘要):
LiveKit 自帶雲端儀表可看連線與用量健康度。
目前只是使用LiveKit監控房間人數。
接下來進入到結構化輸出的技巧介紹部分,開始搭配Google- agentic Design Patterns,去修改Agent的部分