跳至主要內容

Claude Agent SDK

使用本儲存庫中的可執行範例,將 Claude Agent SDK 追蹤傳送至 LiteLLM Lens。

必備條件​

您需要一個已啟用 追蹤 的 LiteLLM 閘道、一個 LiteLLM 金鑰,以及已設定的模型別名。swarm 範例需要支援工具呼叫的模型。進行調查時需要 Lens worker;檢視追蹤則不需要。

安裝 uv。它會使用已檢入的 Python 版本,並從其 uv 工作區解析每個範例的相依性。

設定​

對於全新檢出:

git clone https://github.com/BerriAI/litellm-lens-example.git
cd litellm-lens-example/claude-agent-sdk
cp .env.example .env

如果您已經複製了儲存庫,請從 claude-agent-sdk/ 執行其餘命令。將 .env.example 複製到 .env,如果它不存在,然後設定:

變數值
LITELLM_GATEWAY_URL您的閘道基底 URL,不含結尾斜線或 /v1,例如 http://localhost:4002
LITELLM_API_KEY您的 LiteLLM 金鑰
LITELLM_MODEL您的閘道上已設定的模型別名

已檢入的值是針對本機開發閘道。請為您的部署加以取代。保留 .env.example 中的匯出器設定;這些範例會在程式碼中設定其追蹤匯出器。它們會使用 LiteLLM 金鑰作為 bearer token,將追蹤傳送至 LITELLM_GATEWAY_URL/v1/traces。

除非您打算將額外的追蹤副本傳送到本機 記錄器,否則請讓 MOCK_LITELLM_GATEWAY_URL 保持未設定。

執行範例​

簡易代理程式​

一個 research_agent 會回答一個問題。

uv run --env-file .env --package lens-claude-agent-sdk-simple simple/main.py

實作請參見 simple/main.py。

代理程式群組​

一個協調器會委派給 search_agent 和 writer_agent 子代理程式。

uv run --env-file .env --package lens-claude-agent-sdk-swarm swarm/main.py

實作請參見 swarm/main.py。

驗證追蹤​

在範例印出答案後,請在您的閘道上開啟 Lens > Traces,然後選取新的執行。尋找與 research_agent 相關聯的執行。檢視輸入、輸出與模型 span。對於 swarm,請檢視上方所述的專家活動;其確切的 span 版面配置取決於框架。

追蹤如何運作​

OpenInference 會記錄 SDK 查詢與工具 span。隨附的 CLI 也會使用範例中設定的追蹤環境變數匯出其模型與工具 span。模型呼叫使用閘道的 Anthropic messages 端點。

疑難排解​

如果模型呼叫失敗,請檢查閘道 URL、金鑰與模型別名。如果答案已出現但追蹤缺失,請檢查終端機中的匯出器錯誤,並確認在同一個閘道上已啟用追蹤。模型呼叫成功並不代表其追蹤匯出已成功。

swarm 範例針對其已設定的 Agent 工具使用 bypassPermissions。在新增可修改檔案或執行命令的工具之前,請先檢視該範例。

將模型呼叫對應到花費​

本機 adapter 會將實際的 Anthropic 訊息 ID 加入 request-id 回應標頭,而 CLI 會將其記錄在模型 span 上。串流回應位元組會保持不變地通過。

請在與 claude-agent-sdk/ 分開的終端機中啟動它,並使用 .env 中設定的閘道:

uv run --env-file .env --package lens-claude-agent-sdk-simple gateway.py

對 adapter 執行這些範例。針對這些命令,請保持 MOCK_LITELLM_GATEWAY_URL 為空,因為 adapter 會處理任何額外的記錄器匯出:

LITELLM_GATEWAY_URL=http://localhost:4319 MOCK_LITELLM_GATEWAY_URL= \
uv run --env-file .env --package lens-claude-agent-sdk-simple simple/main.py

LITELLM_GATEWAY_URL=http://localhost:4319 MOCK_LITELLM_GATEWAY_URL= \
uv run --env-file .env --package lens-claude-agent-sdk-swarm swarm/main.py

adapter 會繫結到 localhost。CLAUDE_GATEWAY_PORT 會變更其預設連接埠 4319;請更新範例 URL 以符合。若要將追蹤匯出複製到可選的記錄器,請在啟動 adapter 時設定 MOCK_LITELLM_GATEWAY_URL=http://localhost:4318。

請從這個資料夾執行 adapter 檢查:

uv run --package lens-claude-agent-sdk-simple python -m unittest discover -s . -p test_gateway.py

參考資料​

Claude Agent SDK 可觀測性。

LiteLLM Enterprise
為正式環境打造的 SSO/SAML、稽核記錄、支出追蹤、多團隊管理與防護欄。
深入瞭解 →