Claude 모델 고르기: 추론 깊이 × 비용으로 Haiku·Sonnet·Opus 선택하기
Claude 모델 고르기: 추론 깊이 × 비용으로 Haiku·Sonnet·Opus 선택하기
LLM을 실서비스에 붙일 때 가장 먼저 부딪히는 질문은 “어떤 모델을 쓸 것인가”입니다. 무조건 제일 똑똑한 모델을 쓰면 비용이 터지고, 무조건 싼 모델을 쓰면 품질이 무너집니다. Claude 제품군은 이 선택을 하나의 축 — 추론 깊이(reasoning depth) — 으로 정리할 수 있게 설계돼 있습니다.

위 그림처럼 왼쪽에서 오른쪽으로 갈수록 추론이 깊어지고 비용이 올라갑니다. 작업의 난이도를 이 축 위에 올려놓으면, 모델 선택은 대부분 자동으로 결정됩니다.
🧭 세 가지 티어
| 모델 | 역할 | 대표 작업 |
|---|---|---|
| Haiku | 간단한 탐색 | 분류, 라우팅, 태깅, 짧은 추출, 대량 배치 |
| Sonnet | 패턴 분석 | 요약, 문서 처리, 코드 리뷰, 일반 챗봇 |
| Opus | 깊은 추론 | 장기 에이전트, 복잡한 리팩터링, 심층 리서치 |
핵심은 “이 작업이 얼마나 깊은 추론을 요구하는가”입니다. 한 번 훑고 답이 나오는 일이면 Haiku, 맥락을 읽고 패턴을 잡아야 하면 Sonnet, 여러 단계를 스스로 계획하고 검증해야 하면 Opus입니다.
💰 비용은 축의 반대편
추론 깊이가 오르면 토큰 단가도 함께 오릅니다. 2026년 7월 기준 대표 모델의 100만 토큰당 단가는 다음과 같습니다.
| 모델 | 모델 ID | 컨텍스트 | 입력 $/1M | 출력 $/1M |
|---|---|---|---|---|
| Claude Haiku 4.5 | claude-haiku-4-5 |
200K | $1 | $5 |
| Claude Sonnet 4.6 | claude-sonnet-4-6 |
1M | $3 | $15 |
| Claude Opus 4.8 | claude-opus-4-8 |
1M | $5 | $25 |
| Claude Fable 5 | claude-fable-5 |
1M | $10 | $50 |
Opus 위에는 가장 어려운 장기 에이전트 작업을 위한 Fable 5가 있습니다. “기본 업그레이드”가 아니라, 명시적으로 필요할 때만 선택하는 최상위 티어입니다. 대부분의 “제일 똑똑한 모델” 요청의 기본값은 여전히
claude-opus-4-8입니다.
Haiku와 Opus는 출력 기준 5배 차이가 납니다. 대량 트래픽을 Opus로 흘려보내면 청구서가 그대로 5배가 되므로, “이 작업에 정말 깊은 추론이 필요한가”를 티어마다 되물어야 합니다.
🔍 실전 선택 기준
의사결정을 조금 더 구체화하면 이렇게 됩니다.
- 한 번의 패스로 끝나는가? — 분류·추출·라우팅처럼 “읽고 → 라벨” 구조면 Haiku. 속도가 빠르고 대량 배치에 최적입니다.
- 맥락을 읽고 종합해야 하는가? — 문서 요약, 코드 리뷰, 일반 대화형 서비스는 Sonnet. 속도와 지능의 균형점입니다.
- 스스로 계획·검증하며 여러 단계를 밟아야 하는가? — 오버나이트 코딩, 대규모 마이그레이션, 심층 리서치는 Opus. 앞단에서 목표를 명확히 주고 높은 effort로 돌릴 때 진가가 나옵니다.
같은 파이프라인 안에서 티어를 섞는 것도 좋은 전략입니다. 예를 들어 대량 1차 분류는 Haiku로 거르고, 애매한 케이스만 Sonnet·Opus로 에스컬레이션하면 품질을 지키면서 비용을 크게 줍니다.
⚙️ 깊이를 한 번 더 조절하는 손잡이: effort
모델 티어를 고른 뒤에도, 같은 모델 안에서 추론 깊이를 조절할 수 있습니다. Claude 4.6+ 계열은 adaptive thinking(모델이 언제·얼마나 생각할지 스스로 결정)과 effort 파라미터(low / medium / high / xhigh / max)를 제공합니다.
# Opus 4.8 — adaptive thinking + effort
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
thinking={"type": "adaptive"},
output_config={"effort": "high"}, # low | medium | high | xhigh | max
messages=[{"role": "user", "content": "..."}],
)
즉 선택은 2차원입니다. 가로축(모델 티어)으로 큰 방향을 잡고, effort로 미세 조정합니다. 라우팅·분류는 낮은 effort로 빠르게, 복잡한 코딩·에이전트 작업은 high~xhigh로 깊게 — 비용과 품질의 스위트스팟을 이렇게 찾습니다.
🚀 정리
- 추론 깊이 하나의 축으로 모델 선택을 단순화하라 — 간단한 탐색은 Haiku, 패턴 분석은 Sonnet, 깊은 추론은 Opus.
- 비용은 그 축의 반대편이다. 티어가 오를수록 단가가 오르니, 각 티어마다 “정말 이 깊이가 필요한가”를 되묻는다.
- 파이프라인 안에서 티어를 섞고, effort로 같은 모델의 깊이를 미세 조정하면 품질과 비용을 동시에 잡을 수 있다.
결국 “제일 좋은 모델”이 아니라 “이 작업에 맞는 깊이”를 고르는 문제입니다. 축을 기억해두면, 다음번 모델 선택은 훨씬 빠르고 자신 있게 내릴 수 있습니다.