「AI의 출력이 미묘한데... 그렇다고 몇 번씩이나 다시 수정하게 하는 건 번거롭고...」
이런 고민, 하고 계시지 않나요?
2026년 5월 6일, Anthropic이 Code with Claude 컨퍼런스에서 발표한 Outcomes 기능이 이 문제를 근본적으로 해결합니다.
Claude Outcomes는 "별도의 AI가 당신을 대신해 출력을 채점하고, 결과가 좋지 않으면 자동으로 수정하게 하는" 기능입니다.
사내 벤치마크 결과:
**태스크 성공률 +10포인트****Word 문서 품질 +8.4%**PowerPoint 품질 +10.1%
라는 충격적인 결과가 나왔습니다.
"출력을 체크해줘"라고 Claude 자신에게 부탁해 본 적 있으시죠?
이것은 거의 의미가 없습니다.
이유는 단순합니다. 자신의 추론 과정을 보면서 채점하기 때문에 관대해지기 때문입니다.
❌ 기존의 셀프 리뷰 (Self-review)
┌─────────────────────────────────────┐
│ Writer Claude │
...
Grader는 별도의 컨텍스트 윈도우 (Context Window)에서 동작하므로, Writer가 어떻게 생각해서 그 결론에 도달했는지 알지 못합니다.
이것이 '자기 채점(Self-grading)'을 방지하는 메커니즘입니다.
import anthropic
from dotenv import load_dotenv
BETAS = ["managed-agents-2026-04-01"]
...
writer = client.beta.agents.create(
name="Research Analyst",
model=MODEL,
...
session = client.beta.sessions.create(
agent={"type": "agent", "id": writer.id, "version": writer.version},
environment_id=env.id,
...
TASK = """
EV 급속 충전의 경제성에 대해 브리프를 작성해 주세요.
다음 내용을 포함할 것:
...
TERMINAL = {"satisfied", "max_iterations_reached", "failed", "interrupted"}
with client.beta.sessions.events.stream(session.id, betas=BETAS) as stream:
for ev in stream:
...
Outcomes의 위력은 루브릭 (Rubric)의 질에 의해 결정됩니다.
❌ 나쁜 예
"디맨드 차지(Demand Charge)에 대해 쓰여 있는지 확인"
✅ 좋은 예
...
# 나쁨: 모호함
"신뢰할 수 있는 정보원에서 인용할 것"
# 좋음: 구체적
...
실례: Grader가 "EVgo FY2024의 순손실" 인용을 거부한 경우
- Writer:
sec.gov/Archives/edgar/.../R4.htm
(8-K Exhibit 99.1)를 인용 - Grader: "이것은 8-K 첨부된 보도자료입니다. 10-K 또는 10-Q를 인용해 주세요"
- Writer: EDGAR에서 10-K를 발견 → Pass 3에서 합격
이 구분이 루브릭에 명시되어 있었기에 기능했다!
❌ 나쁜 예
"web_fetch로 URL을 실행해 주세요"
✅ 좋은 예
...
RUBRIC += """
미러 사이트, 전재(reprint), 검색 스니펫을 통한 검증은 금지.
인용 URL 자체가 fetch 가능해야 함.
...
RUBRIC += """
【출력 포맷】
1행: Coverage N/7. Citations M/K verified.
...
RUBRIC += """
【채점 대상 외】
- 문체의 취향
...
| 시나리오 | 왜 Outcomes가 유효한가 |
|---|
| 리서치 리포트 | 인용 검증, 망라성 체크 |
| 법무 문서 | 조항 누락 방지 |
| API 문서 | 엔드포인트 망라, 샘플 코드 검증 |
| 발표 자료 | 브랜드 가이드라인 준수, 데이터 정확성 |
| 코드 리뷰 | 테스트 커버리지, 보안 체크 |
Outcomes가 적합하지 않은 케이스
- 주관적인 톤(Tone)·스타일의 판단
- 인간의 최종 판단이 필요한 상황
- 단발성 검증 태스크
권장 설정
"max_iterations": 3 # 기본값. 대부분의 태스크에 적합
복잡한 리서치 태스크
...
튜닝 가이드라인:
- 동일한 문제에서 상한(Limit)에 도달할 경우 → 루브릭(Rubric)을 명확화
- 불필요한 수정이 계속될 경우 → 기준을 더욱 구체화
Outcomes는 Webhooks와 결합했을 때 진가를 발휘합니다.
# Console 설정
# Event types: session.status_idled, span.outcome_evaluation_end
# Webhook 수신 서버
...
Claude Outcomes의 핵심:
분리된 컨텍스트 (Separated Context) → 자기 채점(Self-grading) 방지 -
루브릭 주도 (Rubric-driven) → 모호함 제거 -
자동 수정 루프 (Automatic correction loop) → 인간의 개입 최소화 -
최대 +10%의 성공률 향상 → 실증됨
오늘부터 시도할 수 있는 3단계:
managed-agents-2026-04-01
베타 참여 - 기존 태스크를 루브릭 형식으로 재작성
max_iterations: 3
으로 실험 시작
이 글이 도움이 되었다면 「좋아요」 부탁드립니다!
Outcomes를 사용해 본 소감이나, 성공적이었던 루브릭 설계 노하우가 있다면 댓글로 알려주세요 👇
Outcomes: agents that verify their own work | Claude Cookbook
New in Claude Managed Agents: dreaming, outcomes, and multiagent orchestration | Claude
Code w/ Claude SF 2026: Building on the AI exponential | Claude