跳至主要內容

OpenTelemetry

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

必要條件​

您需要一個已啟用 追蹤功能 的 LiteLLM 閘道、一個 LiteLLM key,以及已設定的模型別名。進行調查時需要 Lens worker;僅檢視追蹤不需要。

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

設定​

對於新的 checkout:

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

如果您已經 clone 了儲存庫,請從 opentelemetry/ 執行其餘指令。若 .env.example 不存在,請將其複製為 .env,然後設定:

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

檢入的值是針對本機開發閘道。請將它們替換為您的部署設定。保留 .env.example 中的 exporter 設定;這些範例會在程式碼中設定其追蹤 exporter。它們會使用 LiteLLM key 作為 bearer token,將追蹤送至 LITELLM_GATEWAY_URL/v1/traces。

除非您打算額外將一份追蹤複本送至本機 recorder,否則請保持 MOCK_LITELLM_GATEWAY_URL 未設定。

執行範例​

簡單代理程式​

一個手動的 research_agent span 包覆一次 OpenAI 模型呼叫。

uv run --env-file .env --package lens-opentelemetry-simple simple/main.py

請參閱 simple/main.py 以了解實作。

代理程式群集​

一個 research_agent span 包含 search_agent 和 writer_agent 子 span,每個都會進行一次模型呼叫。

uv run --env-file .env --package lens-opentelemetry-swarm swarm/main.py

請參閱 swarm/main.py 以了解實作。

驗證追蹤​

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

追蹤如何運作​

這些範例會手動建立代理程式 span,並設定其名稱、輸入與輸出。OpenInference 會對 OpenAI client 加上 instrument,且共用的閘道 transport 會加入帶有閘道 call ID 的 request-attempt span。

請參閱 共用的閘道 transport 以取得 request-attempt 與 spend-correlation 的詳細資訊。

疑難排解​

如果模型呼叫失敗,請檢查閘道 URL、key,以及模型別名。如果有看到答案但缺少追蹤,請檢查終端機中的 exporter 錯誤,並確認同一個閘道上已啟用追蹤功能。模型呼叫成功,不代表其追蹤匯出也成功。

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