monocle2ai/monocle

Monocle is a framework for tracing GenAI app code. This repo contains implementation of Monocle for GenAI apps written in Python.

What it solves

Monocle은 Generative AI 애플리케이션과 에이전트를 위한 관측성(observability) 및 테스트 기능을 제공합니다. Monocle은 모델 호출, 도구 호출, 벡터 조회 등 복잡하고 다단계인 워크플로우를 구조화된 단계별 트레이스로 변환함으로써 AI 에이전트의 "black-box" 특성을 해결합니다. 또한 개발자가 실제 실행 트레이스에 대한 어설션(assertion)을 수행할 수 있게 함으로써(예: 특정 도구가 호출되었는지 또는 토큰 비용이 예정된 예산 내에 머물렀는지 확인) 단순한 입출력 테스트를 넘어설 수 있도록 지원합니다.

How it works

Monocle은 OpenTelemetry (OTel)를 기반으로 구축된 GenAI 전용 관측성 레이어입니다. 표준화된 메타모델을 사용하여 AI 특화 엔티티(프롬프트, 응답, 벡터 연산 등)를 OTel span 속성에 매핑합니다. 인기 있는 프레임워크(LangChain, LlamaIndex, Haystack 등)를 위한 인스트루멘테이션 어댑터를 제공하여 수동 연결 없이도 자동으로 span을 생성합니다. 트레이스는 OTLP 호환 span으로 방출되며, 이는 로컬 JSON 파일, 콘솔 또는 Okahu와 같은 클라우드 백엔드로 내보낼 수 있습니다.

Who it’s for

  • App developers가 별도의 트레이싱 코드를 작성하지 않고도 GenAI 앱에 대한 심층적인 가시성을 확보하고자 할 때.
  • Platform and infrastructure engineers가 래퍼(wrapper)나 오퍼레이터(operator)를 사용하여 애플리케이션에 관측성을 주입하는 방식을 선호할 때.
  • Enterprises and SREs가 신뢰성과 규정 준수를 위해 표준화된, OTel 호환 트레이스와 CI 친화적인 테스트를 필요로 할 때.

Highlights

  • Native OpenTelemetry Support: 모든 OTel 백엔드와 호환되는 표준 OTLP span을 방출합니다.
  • Auto-Instrumentation: 다양한 에이전트 프레임워크, LLM 제공업체 및 벡터 스토어에 대한 내장 어댑터를 제공합니다.
  • Trace-Based Testing: monocle-test-tools 패키지를 통해 에이전트 동작, 도구 사용 및 추론 비용에 대해 pytest 스타일의 어설션을 수행할 수 있습니다.
  • Flexible Deployment: 코드 내 초기화와 플랫폼 수준 통합을 위한 zero-code 래퍼/오퍼레이터 모드를 모두 지원합니다.
  • AI Assistant Tracing: Claude CLI, GitHub Copilot, OpenAI Codex CLI와 같은 AI 코딩 어시스턴트를 트레이싱하기 위한 특화된 훅(hook)을 포함합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트