에이전트 관측성(Agent Observability) — Langfuse, Phoenix, Opik
2026년에는 세 가지 오픈소스 에이전트 관측성(Agent Observability) 플랫폼이 두드러집니다. Langfuse(MIT)는 월 600만 회 이상의 설치를 기록하며, 추적(tracing), 프롬프트 관리(prompt management), 평가(evals), 세션 리플레이(session replay)를 제공합니다. Arize Phoenix(Elastic 2.0)는 에이전트 특화 평가, RAG 관련성(relevancy), OpenInference 자동 계측(auto-instrumentation)에 강합니다. Comet Opik(Apache 2.0)은 자동 프롬프트 최적화, 가드레일(guardrails), LLM 심판(LLM-as-judge) 기반 환각(hallucination) 감지에 강합니다.
유형: Learn
언어: Python (stdlib)
선수 학습: Phase 14 · 23 (OTel GenAI)
소요 시간: 약 45분
학습 목표
- 대표적인 세 가지 오픈소스 에이전트 관측성 플랫폼과 각 라이선스를 말할 수 있습니다.
- 각 플랫폼의 강점을 구분합니다. Langfuse는 프롬프트 관리와 세션, Phoenix는 RAG와 자동 계측, Opik은 최적화와 가드레일에 강합니다.
- 2026년 기준 조직의 89%가 에이전트 관측성을 갖췄다고 보고하는 이유를 설명합니다.
- LLM 심판(LLM-as-judge) 평가를 포함한 stdlib 기반 추적-대시보드(trace-to-dashboard) 파이프라인을 구현합니다.
문제
OTel GenAI(23강)는 스키마(schema)를 제공합니다. 하지만 여전히 스팬(span)을 수집하고, 평가(evaluation)를 실행하며, 프롬프트 버전을 저장하고, 회귀(regression)를 드러내 주는 플랫폼이 필요합니다. 세 경쟁 후보는 각자 에이전트 생명주기(lifecycle)의 서로 다른 부분을 강조합니다.
개념
Langfuse (MIT)
- SDK 설치 수가 월 600만 회 이상이고, GitHub 스타(star)가 1.9만 개 이상입니다.
- 기능에는 추적, 버전 관리와 플레이그라운드(Playground)를 포함한 프롬프트 관리, 평가(LLM-as-judge, 사용자 피드백, 커스텀 평가), 세션 리플레이가 포함됩니다.
- 2025년 6월에는 기존에 상용으로 제공되던 모듈(LLM-as-a-judge, 주석 큐(annotation queue), 프롬프트 실험(prompt experiment), 플레이그라운드(Playground))이 MIT 라이선스로 오픈소스화되었습니다.
- 가장 강한 지점은 프롬프트 관리 루프와 밀접하게 연결된 종단 간(end-to-end) 관측성입니다.
Arize Phoenix (Elastic License 2.0)
- 더 깊이 있는 에이전트 특화 평가를 제공합니다. 추적 클러스터링(trace clustering), 이상 탐지(anomaly detection), RAG를 위한 검색 관련성(retrieval relevancy)이 포함됩니다.
- OpenInference 자동 계측을 기본(native)으로 지원합니다.
- 프로덕션에서는 관리형(managed) Arize AX와 함께 사용할 수 있습니다.
- 프롬프트 버전 관리 기능은 없습니다. 더 넓은 플랫폼과 함께 쓰는 드리프트(drift)/행동 회귀(behavioral-regression) 도구로 자리매김하고 있습니다.
- 가장 강한 지점은 RAG 관련성, 행동 드리프트, 이상 탐지입니다.
Comet Opik (Apache 2.0)
- A/B 실험을 통한 자동 프롬프트 최적화를 제공합니다.
- 가드레일을 제공합니다. PII(개인 식별 정보; Personally Identifiable Information) 마스킹(redaction), 주제 제약(topical constraints)이 포함됩니다.
- LLM 심판(LLM-as-judge) 기반 환각 감지를 제공합니다.
- Comet 자체 측정 벤치마크에 따르면 Opik의 로그 + 평가 처리는 23.44초, Langfuse는 327.15초로 약 14배 차이가 납니다. 공급사가 직접 측정한 벤치마크는 방향성 참고 자료로만 받아들이는 편이 안전합니다.
- 가장 강한 지점은 최적화 루프, 자동 실험, 가드레일 집행(guardrail enforcement)입니다.
산업 데이터
Maxim의 2026년 현장 분석에 따르면 조직의 89%가 에이전트 관측성을 갖추고 있습니다. 프로덕션의 가장 큰 장벽은 품질 이슈이며, 응답자의 32%가 이를 언급했습니다.
무엇을 고를까
| 필요 | 선택 |
|---|
| 프롬프트 관리를 포함한 올인원(all-in-one) | Langfuse |
| 깊이 있는 RAG 평가와 드리프트 감지 | Phoenix |
| 자동 최적화와 가드레일 | Opik |
| 개방형 라이선스가 필요하고 ELv2를 피하고 싶을 때 | Langfuse(MIT) 또는 Opik(Apache 2.0) |
| Datadog / New Relic과의 통합 | 어느 것이든 가능 — 모두 OTel로 내보낼 수 있습니다 |
이 패턴이 잘못되는 지점
- 평가 전략이 없는 경우. 평가 없는 추적은 비싼 로깅(logging)에 불과합니다.
- 근거 없이 자체 LLM 심판(LLM-as-judge)을 만드는 경우. CRITIC 패턴(5강)이 그대로 적용됩니다. 심판(judge)도 사실 검증을 위해 외부 도구를 필요로 합니다.
- 프롬프트 버전이 추적과 연결되지 않는 경우. 프로덕션이 회귀했을 때, 어떤 프롬프트가 원인이었는지 이분 탐색(bisect)으로 추적해 들어갈 수 없게 됩니다.
만들어보기
code/main.py는 표준 라이브러리(stdlib)만으로 동작하는 추적 수집기와 LLM 심판(LLM-as-judge) 평가기를 구현합니다.
- GenAI 형식의 스팬을 수집합니다.
- 세션별로 묶고, 실패한 실행에 태그를 답니다. 가드레일이 발동한 경우나 평가 점수가 낮은 경우가 여기에 해당합니다.
- 스크립트로 동작하는 LLM 심판이 루브릭(rubric)에 따라 에이전트 응답에 점수를 매깁니다.
- 대시보드와 같은 요약을 제공합니다. 실패율, 주요 실패 사유, 평가 점수 분포가 포함됩니다.
다음과 같이 실행합니다.
python3 code/main.py
출력은 Langfuse, Phoenix, Opik이 보여줄 법한 세션별 평가 점수와 실패 분류를 보여 줍니다.
사용해보기
- Langfuse는 자체 호스팅(self-hosted) 또는 클라우드로 사용합니다. OTel이나 Langfuse SDK로 연결합니다.
- Arize Phoenix는 자체 호스팅으로 사용합니다. OpenInference 자동 계측을 그대로 활용합니다.
- Comet Opik은 자체 호스팅 또는 클라우드로 사용합니다. 자동 최적화 루프를 제공합니다.
- Datadog LLM Observability는 이미 Datadog을 운영하고 있는 운영(ops)과 ML 혼합 팀에 적합합니다.
산출물 만들기
outputs/skill-obs-platform-wiring.md는 플랫폼을 선택하고, 기존 에이전트에 추적, 평가, 프롬프트 버전을 연결하는 가이드를 담고 있습니다.
연습문제
- 일주일치 OTel 추적을 Langfuse cloud 무료 티어(free tier)로 내보내 보세요. 어떤 세션이 실패했나요? 왜 실패했나요?
- 도메인에 맞는 LLM 심판(LLM-as-judge) 루브릭을 작성해 보세요. 사실 정확성(factual correctness), 톤(tone), 범위 준수(scope adherence)를 포함합니다. 추적 50개를 대상으로 테스트해 봅니다.
- Langfuse의 프롬프트 버전 관리와 Phoenix의 추적 클러스터링을 비교해 보세요. 무엇이 망가졌는지를 어느 쪽이 더 빨리 알려 주나요?
- Opik의 가드레일 문서를 읽어 보세요. 직접 운영하는 에이전트 실행 중 하나에 PII 마스킹 가드레일을 연결해 봅니다.
- 세 플랫폼을 자체 말뭉치(corpus)에서 직접 벤치마크해 보세요. 공급사가 공개한 수치는 무시하고, 자신의 환경에서 직접 측정합니다.
핵심 용어
| 용어 | 흔한 설명 | 실제 의미 |
|---|
| 추적(Tracing) | "스팬 수집기" | OTel 또는 SDK 스팬을 수집하고 세션별로 색인합니다. |
| 프롬프트 관리(Prompt management) | "프롬프트 CMS" | 추적과 연결된 버전 관리 프롬프트입니다. |
| LLM-as-judge | "자동 평가" | 별도 LLM이 루브릭에 따라 에이전트 출력을 채점합니다. |
| 세션 리플레이(Session replay) | "추적 재생" | 과거 실행을 단계별로 다시 보며 디버깅합니다. |
| RAG 관련성(RAG relevancy) | "검색 품질" | 검색된 컨텍스트가 질의와 맞는지 판단합니다. |
| 추적 클러스터링(Trace clustering) | "행동 그룹화" | 비슷한 실행을 묶어 드리프트를 감지합니다. |
| 가드레일 집행(Guardrail enforcement) | "로그 시점의 정책" | 로그된 콘텐츠에 PII, 독성, 범위 검사를 적용합니다. |
더 읽을거리