
기술을 한 번만 테스트하는 것을 멈추세요: 실제 성능을 측정하기 위해 Caliper의 pass@k를 사용하세요
요약
Caliper는 Claude Code 기술의 성능을 pass@k 지표로 정량화하여 측정할 수 있는 오픈 소스 경량 하네스입니다. 베이스라인 비교 기능을 통해 특정 기술이 실제로 도움이 되는지, 혹은 모델 업데이트로 인해 성능이 저하되었는지 결정론적으로 검증할 수 있습니다.
핵심 포인트
- pass@k 지표를 사용하여 기술의 성능을 반복 가능하게 측정
- --baseline 플래그로 기술 적용 전후의 성능 차이(delta) 확인 가능
- YAML 명세를 통해 LLM 판사 및 Python 단언문으로 성공 기준 정의
- 다양한 백엔드 지원으로 실행 모델과 판정 모델을 분리하여 비용 최적화 가능
Caliper는 Claude Code 기술을 k번 실행하고, pass@k로 점수를 매기며, 기술이 없는 베이스라인(baseline)과 비교하여 해당 기술이 실제로 도움이 되는지 알 수 있게 해주는 경량 하네스(harness)입니다.
무엇이 바뀌었나 — 기술은 이제 추측이 아닌 테스트 가능한 영역입니다
Claude Code 기술을 게시해 본 적이 있다면 다음과 같은 불안함을 느껴보았을 것입니다: 이게 다른 사람들에게도 잘 작동할까? 다음 모델 업데이트가 조용히 이를 망가뜨리지는 않을까? 그동안의 대답은 항상 "모르겠다"였습니다 — 하지만 이제는 다릅니다.
Caliper (github.com/edonadei/caliper)는 격리된 환경에서 기술을 _k_번 실행하고 pass@k 점수를 제공하는 새로운 오픈 소스 하네스(harness)입니다. 사용자는 YAML 명세(spec)를 통해 LLM 판사(judge), Python 단언문(assertion), 또는 두 가지 모두를 사용하여 성공 기준을 정의합니다. 그런 다음 다음 명령어를 실행합니다:
caliper run extract-actions.eval.yaml --k 5 --baseline
그러면 다음과 같은 결과를 볼 수 있습니다:
ID Task k(5) pass@k
task-1 Extracts action items as JSON 5/5 100% PASS
With skill 100%
...
--baseline 플래그는 핵심 기능입니다. 이 플래그는 기술을 적용하지 않은 상태로 모든 것을 다시 실행하여 차이(delta)를 보여줍니다. +40%라는 결과는 기술이 실제로 도움이 되고 있음을 의미합니다. 0% 또는 -100%는 기술이 아무런 도움이 되지 않거나 결과에 오히려 해를 끼치고 있음을 의미합니다.
당신에게 주는 의미 — 테스트되지 않은 기술 배포를 중단하세요
대부분의 Claude Code 기술은 한 번 테스트되어 보기 좋게 작동하다가, 새로운 모델이 출시되면 조용히 망가집니다. Caliper는 평가를 결정론적(deterministic)이고 반복 가능하게 만듦으로써 이 문제를 해결합니다.
지금 바로 할 수 있는 일은 다음과 같습니다:
- Claude Code 기술을 통해 Caliper 설치:
npx skills@latest add edonadei/caliper
이 명령은 두 가지 기술을 설치합니다: evaluate-skill (평가 실행 및 관리) 및 grill-skill (SKILL.md를 읽고, 사용자에게 질문하며, 3가지 작업 명세(spec)를 작성함).
.eval.yaml파일에 첫 번째 평가 명세(eval spec) 작성:
tasks:
- name: Extracts action items as clean JSON
prompt: "Read /tmp/transcript.txt and write the action items to /tmp/actions.json."
...
--k 5및--baseline옵션과 함께 **실행(Run it)**하여 기술의 실제 성능을 확인하세요.
지금 바로 시도해보세요 — 첫 번째 Caliper 실행
# Caliper 설치
pip install caliper-eval
...
Caliper는 여러 백엔드(backends)를 지원합니다. 즉, 하나의 모델에서 기술(skill)을 실행하고 다른 모델로 판정(judge)할 수 있습니다. 이는 Claude Code 기술을 테스트하면서 판정에는 더 저렴한 모델(예: GPT-4o-mini)을 사용하고 싶을 때 특히 유용합니다.
결론
에이전트형 코드(agentic code)를 테스트하는 것은 결정론적 코드(deterministic code)를 테스트하는 것과 근본적으로 다릅니다. 한 번은 작동하는 기술이 40%의 확률로 실패할 수도 있습니다. Caliper는 이를 확실히 알 수 있는 데이터를 제공하며, --baseline 플래그는 여러분의 기술이 실제로 가치를 더하고 있는지, 아니면 단순히 방해가 되고 있는지를 알려줍니다.
출처: apimatic.io
[6월 30일 업데이트 (hn_claude_code 경유)]
Caliper는 이제 Claude Code 외에도 Codex, Pi, Claude API, OpenAI API를 포함한 여러 에이전트 하네스(agent harnesses)를 지원합니다 [제작자의 Hacker News Show HN 기준]. --baseline 플래그를 통해 '2년 된 모델들도 해결할 수 있는' 기본적인 JSON 추출조차 40%의 차이(delta)를 보일 수 있음을 확인할 수 있으며, 이는 기술의 실제 가치를 증명합니다. 또한 이 프로젝트는 두 가지 보조 기술(companion skills)을 함께 제공합니다. 워크플로를 벗어나지 않고 평가를 실행할 수 있는 evaluate-skill과, 사용자의 SKILL.md를 읽고 인터뷰를 진행하여 해피 패스(happy path), 에지 케이스(edge case), 적대적 시나리오(adversarial scenarios)를 포함하는 3가지 작업 명세(task spec)를 자동 생성하는 grill-skill입니다.
원문 게시: gentic.news
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기