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 的跨度属性。它为流行的框架(如 LangChain、LlamaIndex 和 Haystack)提供仪器化适配器,可自动创建跨度而无需手动配置。追踪记录以 OTLP 兼容的跨度形式发出,可导出到本地 JSON 文件、控制台或云后端(如 Okahu)。
适用人群
- 应用开发者:希望深入洞察其 GenAI 应用,而无需编写定制追踪代码。
- 平台和基础设施工程师:更倾向于使用包装器或操作符将可观测性注入应用。
- 企业及 SRE 团队:需要符合标准、OTel 兼容的追踪记录以及 CI 友好的测试,以确保可靠性和合规性。
主要特性
- 原生 OpenTelemetry 支持:发出与任何 OTel 后端兼容的标准 OTLP 跨度。
- 自动仪器化:内置对多种智能体框架、大语言模型提供商和向量存储的适配器。
- 基于追踪的测试:
monocle-test-tools包支持类似 pytest 的断言,用于验证智能体行为、工具使用情况和推理成本。 - 灵活部署:支持代码内初始化,也支持无需代码的包装器/操作符模式,便于平台级集成。
- AI 助手追踪:包含专用钩子,用于追踪 AI 编码助手,如 Claude CLI、GitHub Copilot 和 OpenAI Codex CLI。
相关
- 项目
- 项目
- 项目
- 项目
- 项目