monocle2ai/monocle
Monocle is a framework for tracing GenAI app code. This repo contains implementation of Monocle for GenAI apps written in Python.
它解決的問題
Monocle 為生成式 AI 應用程式和代理提供可觀察性與測試功能。它透過將複雜的多步驟工作流程(包括模型呼叫、工具調用和向量查詢)轉換為結構化、逐步的追蹤,解決了 AI 代理的「黑箱」問題。它還讓開發者能夠超越簡單的輸入/輸出測試,透過對實際執行追蹤進行斷言(例如,驗證特定工具是否被呼叫,或 Token 成本是否在預算內)。
如何運作
Monocle 是一個基於 OpenTelemetry (OTel) 的專為 GenAI 設計的可觀察性層。它使用標準化的元模型,將 AI 特定實體(如提示、回應和向量操作)映射到 OTel 之 span 屬性。它提供針對流行框架(如 LangChain、LlamaIndex 和 Haystack)的儀器化適配器,可自動建立 span 而無需手動配置。追蹤以 OTLP 兼容的 span 發出,可匯出至本地 JSON 檔案、控制台或雲端後端(如 Okahu)。
適用對象
- 應用程式開發者:希望深入掌握其 GenAI 應用程式的運作狀況,而無需撰寫專屬的追蹤程式碼。
- 平台與基礎設施工程師:偏好使用包裝器或操作員將可觀察性注入應用程式。
- 企業與 SRE:需要符合標準的 OTel 追蹤以及 CI 友好的測試,以確保可靠性和合規性。
主要特色
- 原生 OpenTelemetry 支援:發出與任何 OTel 後端相容的標準 OTLP span。
- 自動儀器化:內建廣泛的代理框架、LLM 提供商和向量資料庫的適配器。
- 基於追蹤的測試:
monocle-test-tools套件允許以 pytest 風格對代理行為、工具使用和推論成本進行斷言。 - 彈性部署:支援程式碼內初始化與零程式碼包裝器/操作員模式,便於平台級整合。
- AI 助手追蹤:包含專用的鉤子,可追蹤 AI 程式碼助手,如 Claude CLI、GitHub Copilot 和 OpenAI Codex CLI。
相關
- 專案
- 專案
- 專案
- 專案
- 專案