langfuse
무엇인가
Langfuse는 LLM 애플리케이션을 개발·모니터링·평가·디버깅하는 팀을 위한 오픈소스 LLM 엔지니어링 플랫폼이다. LLMOps 영역에서 관측성, 프롬프트 관리, 평가, 데이터셋, 플레이그라운드를 각각 다른 SaaS에 붙이던 자리를 하나의 저장소와 하나의 API로 대체한다.
어떻게 동작하나
애플리케이션에 SDK를 넣고 `@observe()` 데코레이터로 함수를 감싸면 LLM 호출과 검색, 임베딩, 에이전트 동작이 트레이스로 수집된다. 수집된 트레이스는 ClickHouse에 저장되고 웹 UI에서 세션 단위로 조회·디버깅한다. 프롬프트는 서버·클라이언트 양쪽 캐시를 거쳐 내려가므로 프롬프트를 바꿔도 애플리케이션 지연이 늘지 않는다. 평가는 LLM-as-a-judge, 코드 평가기, 사용자 피드백 수집, 수동 라벨링, API/SDK 기반 커스텀 파이프라인으로 붙는다. 코드베이스는 web과 worker 두 컨테이너로 나뉘어 Linux Alpine 기반 Docker 이미지로 배포된다.
무엇과 다른가
트레이스 뷰어만 있는 도구와 달리 프롬프트 버전 관리, 평가기, 데이터셋, 플레이그라운드가 같은 데이터 모델 위에 올라간다. 트레이싱에서 나쁜 결과를 발견하면 그 지점에서 플레이그라운드로 이동해 프롬프트와 모델 설정을 반복할 수 있다. 데이터셋은 배포 전 테스트와 벤치마크로 쓰이고 LangChain, LlamaIndex 같은 프레임워크와 연동된다. 호스팅 SaaS와 달리 자체 인프라에 올릴 수 있고, MIT 라이선스라 `ee` 폴더를 제외한 코드를 수정·재배포할 수 있다.
어떻게 쓰나
Langfuse Cloud를 쓰거나 Docker Compose로 로컬에 띄운다. 프로젝트를 만들고 프로젝트 설정에서 API 키를 발급한 뒤, `@observe()` 데코레이터와 OpenAI 통합으로 첫 호출을 기록한다. 프로덕션 배포는 Kubernetes에 Helm 차트로 올리는 방식이 권장되고, AWS·Azure·GCP용 Terraform 템플릿도 있다. 외부 연동은 OpenAPI 스펙, Postman 컬렉션, Python·JS/TS 타입 SDK로 이뤄진다.
전제와 한계
라이선스는 MIT지만 `ee` 폴더는 예외다. 셀프호스팅은 ClickHouse를 포함한 인프라를 직접 운영해야 하고, 단일 VM 구성보다 Kubernetes+Helm이 프로덕션 권장 경로다. 저장소의 주 언어는 TypeScript이며 배포 단위는 Alpine 기반 web·worker 컨테이너 두 개다. 클라우드 무료 티어는 신용카드 등록 없이 쓸 수 있다.
관련 논문 1
유사 도구
- opikLLM 호출과 에이전트 실행을 추적·평가·모니터링하는 오픈소스 관측성 플랫폼이다. 서버와 웹 앱까지 Apache-2.0으로 자체 호스팅한다.
- RagaAI-CatalystLLM과 에이전트 실행을 트레이싱하고 평가·가드레일·레드팀까지 한 SDK에서 처리하는 Python 관측 프레임워크다.
- heliconeOpenAI 호환 baseURL 한 줄만 바꾸면 요청 로그·비용·지연을 수집하는 LLM 관측 프록시이자 100개 이상 모델을 중계하는 AI 게이트웨이다.
- Tracely-ai에이전트 트레이스를 OTLP로 수집해 실패를 클러스터링하고, 실패한 실행을 회귀 테스트로 고정해 PR을 차단하는 CI/CD 도구다.
- lobehub여러 AI 에이전트를 고용·스케줄·보고 단위로 묶어 7×24로 운영하는 셀프호스팅 오케스트레이션 플랫폼이다. 에이전트를 작업 단위로 다룬다.