Claude Code 모델 선택과 컨텍스트 최적화: 비용 대비 최고 성능 뽑기
Claude Code에서 모델을 바꾸면 성능, 속도, 비용이 크게 달라집니다. Opus는 똑똑하지만 느리고, Haiku는 빠르지만 가벼운 작업에 적합합니다. 이 글에서는 각 모델의 특성, 전환 방법, 컨텍스트 윈도우 최적화, 요금제별 전략까지 완전 정리합니다.

1. 사용 가능한 모델
Claude Code에서는 3가지 모델 패밀리를 사용할 수 있습니다.
모델 비교표
| 항목 | Opus | Sonnet | Haiku |
|---|---|---|---|
| 모델 ID | claude-opus-4-6 | claude-sonnet-4-6 | claude-haiku-4-5 |
| 성능 | 최고 | 높음 | 보통 |
| 속도 | 느림 | 중간 | 빠름 |
| 비용 | 높음 | 중간 | 낮음 |
| 컨텍스트 | 200K 토큰 | 200K 토큰 | 200K 토큰 |
| 적합한 작업 | 복잡한 설계, 디버깅 | 일반 코딩, 리팩토링 | 간단한 수정, 검색 |
각 모델의 강점
Opus (최고 성능)
- 복잡한 아키텍처 설계
- 어려운 버그 디버깅
- 대규모 리팩토링 계획
- 여러 파일에 걸친 복잡한 변경
- 보안 취약점 분석
Sonnet (균형)
- 일반적인 코드 작성
- 기능 추가/수정
- 코드 리뷰
- 테스트 작성
- 문서화
Haiku (빠른 처리)
- 단순 파일 수정
- 변수명 변경
- 주석 추가/삭제
- 간단한 질문 답변
- 파일 검색/탐색

2. 모델 전환 방법
/model 커맨드
세션 중 언제든 모델을 변경할 수 있습니다.
> /model opus ← 최고 성능으로 전환
> /model sonnet ← 균형 모델로 전환
> /model haiku ← 빠른 모드로 전환
/fast 커맨드
빠른 모드를 토글합니다. 동일한 모델(Opus)을 더 빠르게 사용합니다.
> /fast on ← 빠른 출력 활성화
> /fast off ← 일반 속도로 복귀
/fast는 모델을 바꾸는 것이 아니라, 같은 모델의 출력 속도를 높이는 옵션입니다.
Alt+P 단축키
키보드 단축키로 즉시 모델을 전환할 수 있습니다.
Alt+P → 모델 선택 메뉴 표시
↑↓ → 모델 선택
Enter → 전환 완료
CLI 플래그
세션 시작 시 모델을 지정할 수 있습니다.
claude --model opus # Opus로 시작
claude --model sonnet # Sonnet으로 시작
claude --model haiku # Haiku로 시작
스킬에서 모델 지정
커스텀 스킬에서 특정 모델을 고정할 수 있습니다.
---
name: quick-fix
description: 간단한 수정
model: haiku
---
$ARGUMENTS를 빠르게 수정해줘.

3. 작업별 모델 선택 가이드
작업 유형별 권장 모델
| 작업 | 권장 모델 | 이유 |
|---|---|---|
| 프로젝트 첫 분석 | Opus | 전체 구조를 깊이 이해 |
| 아키텍처 설계 | Opus | 복잡한 결정 능력 |
| 일반 기능 개발 | Sonnet | 비용 대비 충분한 성능 |
| 버그 수정 (단순) | Sonnet | 빠르고 정확 |
| 버그 수정 (복잡) | Opus | 여러 파일 추적 필요 |
| 테스트 작성 | Sonnet | 패턴 반복 작업 |
| 코드 리뷰 | Sonnet | 일반적 검토 |
| 보안 리뷰 | Opus | 심층 분석 필요 |
| 변수명/주석 변경 | Haiku | 단순 반복 |
| 파일 검색/질문 | Haiku | 빠른 응답 |
| 대규모 리팩토링 | Opus | 복잡한 변환 |
| 문서화 | Sonnet | 충분한 품질 |
실전 모델 전환 워크플로우
1. Opus로 시작: 프로젝트 분석, 아키텍처 결정
> /model opus
> "이 프로젝트 전체 구조를 분석해줘"
2. Sonnet으로 전환: 실제 코딩 작업
> /model sonnet
> "인증 모듈을 만들어줘"
3. Haiku로 전환: 간단한 마무리
> /model haiku
> "주석을 한국어로 바꿔줘"
4. Opus로 복귀: 코드 리뷰
> /model opus
> "전체 변경사항을 리뷰해줘"

4. 컨텍스트 윈도우 심화
200K 토큰 = 약 15만 단어
| 기준 | 분량 |
|---|---|
| 영문 단어 | ~150,000 단어 |
| 한글 문자 | ~100,000 자 |
| 코드 줄 수 | ~50,000 줄 |
| 일반 파일 수 | ~100개 (파일당 500줄) |
컨텍스트 구성 요소
| 구성 요소 | 토큰 | 비고 |
|---|---|---|
| 시스템 프롬프트 | ~10K | 고정 |
| CLAUDE.md | 1~5K | 길이에 따라 |
| Auto Memory | 1~3K | MEMORY.md |
| MCP 도구 정의 | 0~10K | 서버 수에 비례 |
| 대화 기록 | 가변 | 누적 증가 |
| 파일 내용 | 가변 | 읽은 파일 |
| 도구 결과 | 가변 | 실행 결과 |
| 실제 사용 가능 | ~170K |
컨텍스트가 빠르게 차는 상황
| 상황 | 소비량 | 대응 |
|---|---|---|
| 큰 파일 읽기 | 파일당 수천~수만 토큰 | 부분 읽기 요청 |
| 긴 테스트 출력 | 수천 토큰 | 요약 요청 |
| 많은 MCP 서버 | 서버당 1~5K | 불필요한 서버 제거 |
| 반복 작업 | 대화 누적 | /compact 사용 |
| 긴 CLAUDE.md | 수천 토큰 | 200줄 미만 유지 |

5. /compact 완전 활용법
/compact는 컨텍스트 관리의 핵심 도구입니다.
기본 사용
> /compact
Claude가 대화 전체를 분석하고, 중요한 내용은 보존하면서 불필요한 대화를 요약합니다.
포커스 지시 활용
특정 주제만 보존하고 나머지를 압축합니다.
> /compact API 인증 관련 결정만 유지
> /compact 데이터베이스 스키마 변경사항에 집중
> /compact 마지막 3개 파일 변경만 남기기
자동 압축 (Auto-Compaction)
컨텍스트가 95% 이상 차면 자동으로 압축됩니다.
| 항목 | 수동 /compact | 자동 압축 |
|---|---|---|
| 실행 시점 | 사용자가 직접 | 95% 초과 시 |
| 포커스 지시 | 가능 | 불가 (자동 판단) |
| 보존 정확도 | 높음 (사용자 지정) | 보통 (AI 판단) |
| 권장 | 중요한 작업 중 | 백업용 |
/compact 모범 사례
✅ 작업 단계가 바뀔 때: "분석 끝, 이제 구현 시작"
✅ 긴 파일을 여러 개 읽은 후: "핵심만 남기기"
✅ 테스트 출력이 길었을 때: "실패 원인만 유지"
✅ 방향을 바꿀 때: "새 접근법에 필요한 것만"
❌ 중요한 결정 직후: (보존 안 될 수 있음)
❌ 디버깅 중간: (에러 컨텍스트 손실)

6. /cost와 /usage: 비용 모니터링
/cost 커맨드
현재 세션의 토큰 사용량과 예상 비용을 확인합니다.
> /cost
현재 세션 비용:
─────────────────
입력 토큰: 45,230 ($0.68)
출력 토큰: 12,450 ($0.75)
캐시 히트: 8,200 ($0.01)
─────────────────
세션 합계: $1.44
/usage 커맨드
플랜 사용 한도를 확인합니다.
> /usage
사용량:
─────────────────
플랜: Pro ($20/월)
이번 달: 45% 사용
리셋: 15일 후
남은 Opus 요청: 충분
/context 커맨드
컨텍스트 윈도우 사용량을 시각적으로 확인합니다.
> /context
컨텍스트: 67,000 / 200,000 토큰 (33%)
████████░░░░░░░░░░░░░░░░░░ 33%

7. 요금제별 모델 전략
요금제 비교
| 항목 | Free | Pro ($20/월) | Max 5x ($100/월) | Max 20x ($200/월) |
|---|---|---|---|---|
| Sonnet | 제한적 | 넉넉 | 많음 | 매우 많음 |
| Opus | 없음 | 제한적 | 넉넉 | 매우 넉넉 |
| Haiku | 제한적 | 넉넉 | 많음 | 매우 많음 |
| 빠른 모드 | 없음 | 있음 | 있음 | 있음 |
요금제별 최적 전략
Free 사용자
전략: Sonnet 중심, 효율 최대화
- 모든 작업을 Sonnet으로
- CLAUDE.md 간결하게 유지 (컨텍스트 절약)
- /compact 자주 사용
- 불필요한 MCP 서버 제거
Pro 사용자
전략: Sonnet 기본, 중요할 때 Opus
- 일반 작업: Sonnet
- 복잡한 설계/디버깅: Opus (월 제한 주의)
- 간단한 수정: Haiku (속도)
- /cost로 정기적 비용 확인
Max 사용자
전략: Opus 중심, 품질 최대화
- 기본 모델: Opus
- 단순 작업: Sonnet/Haiku (속도)
- /fast on 적극 활용
- 서브에이전트 적극 사용
API 키 사용자
자체 API 키를 사용하면 요금제 제한 없이 토큰 단위 과금됩니다.
# API 키 설정
export ANTHROPIC_API_KEY=sk-ant-...
claude # API 키 자동 사용
| 모델 | 입력 (1M 토큰) | 출력 (1M 토큰) |
|---|---|---|
| Opus | $15 | $75 |
| Sonnet | $3 | $15 |
| Haiku | $0.80 | $4 |
API 키 사용 시 Opus를 제한 없이 사용할 수 있지만, 비용이 빠르게 쌓일 수 있으므로
/cost로 모니터링하세요.

8. 컨텍스트 최적화 실전 팁
서브에이전트 활용
대규모 코드 탐색은 서브에이전트에게 위임하면 메인 컨텍스트를 절약합니다.
> "이 프로젝트의 인증 로직을 분석해줘"
Claude가 자동으로:
1. 서브에이전트 생성 (독립 컨텍스트)
2. 서브에이전트가 수십 개 파일 탐색
3. 요약만 메인 컨텍스트에 반환
→ 메인 컨텍스트: 요약본만 (수백 토큰)
파일 부분 읽기
큰 파일은 필요한 부분만 읽도록 요청합니다.
✅ "auth.ts의 login 함수만 보여줘"
❌ "auth.ts 전체를 보여줘" (불필요한 컨텍스트 소비)
MCP 서버 정리
사용하지 않는 MCP 서버는 제거합니다.
// .claude/settings.json
{
"mcpServers": {
"github": { ... } // 필수만 유지
// "slack": { ... } // 불필요: 제거 (도구 정의 3K 절약)
// "notion": { ... } // 불필요: 제거 (도구 정의 5K 절약)
}
}
효율적인 프롬프트 작성
✅ "src/api/auth.ts의 login 함수에 비밀번호 해싱 추가해줘"
→ 구체적: Claude가 바로 작업
❌ "보안을 개선해줘"
→ 모호: Claude가 전체 프로젝트 탐색 (컨텍스트 낭비)

9. Extended Thinking (확장 사고)
Claude는 복잡한 문제에서 내부적으로 더 깊이 생각하는 Extended Thinking 기능을 지원합니다.
Alt+T 단축키
Alt+T → Thinking 토글 (켜기/끄기)
Thinking이 유용한 상황
| 상황 | 효과 |
|---|---|
| 복잡한 버그 | 여러 가능성을 체계적으로 검토 |
| 아키텍처 결정 | 장단점을 깊이 분석 |
| 알고리즘 설계 | 최적 접근법 도출 |
| 보안 분석 | 공격 벡터 체계적 탐색 |
Thinking이 불필요한 상황
| 상황 | 이유 |
|---|---|
| 단순 파일 수정 | 오버헤드만 증가 |
| 변수명 변경 | 추가 사고 불필요 |
| 파일 검색 | 빠른 응답이 중요 |
Thinking은 추가 토큰을 소비하므로, 복잡한 작업에만 선택적으로 사용하세요.
10. 모델 + 컨텍스트 종합 전략
일상적인 코딩 세션
1. Sonnet으로 시작
2. 작업 시작 전 /context 확인
3. 30분마다 /cost 확인
4. 컨텍스트 50% 넘으면 /compact
5. 복잡한 문제 발생 시 /model opus
6. 마무리는 /model haiku로 간단 작업
대규모 프로젝트
1. Opus로 시작 (전체 분석)
2. 계획 수립 후 /compact
3. Sonnet으로 전환 (구현)
4. 파일별로 /compact 사이사이
5. Opus로 최종 리뷰
비용 절약 모드
1. Haiku 기본 사용
2. 복잡한 부분만 Sonnet
3. CLAUDE.md 최소화
4. MCP 서버 최소화
5. /compact 적극 사용
6. 큰 파일 부분 읽기

마무리
모델 선택과 컨텍스트 최적화의 핵심을 정리하면:
- 모델 선택: Opus(복잡), Sonnet(일반), Haiku(단순) - 작업에 맞게 전환
- 전환 방법: /model, Alt+P, /fast, CLI 플래그, 스킬 frontmatter
- 컨텍스트: 200K 중 실제 ~170K 사용 가능, /context로 확인
- /compact: 포커스 지시로 정확한 보존, 작업 전환 시 사용
- 비용 관리: /cost, /usage로 모니터링, 요금제에 맞는 전략
80/20 법칙: 대부분의 작업은 Sonnet으로 충분합니다. Opus는 정말 복잡한 20%의 작업에만 사용하세요. 이렇게 하면 비용을 절약하면서도 품질을 유지할 수 있습니다.
다음 편에서는 요금제 완전 가이드를 다룹니다. Free, Pro, Max, API 키의 차이와 어떤 요금제를 선택해야 하는지 상세히 비교합니다.
이전 글: [7편] 권한 시스템 완전정리: 안전하게 AI와 협업하기
다음 글: [9편] 요금제 완전 가이드: Free, Pro, Max, API 비교
면책 조항: 본 글은 교육 목적의 정보 제공용이며, Claude Code의 기능 및 요금제는 Anthropic의 정책에 따라 변경될 수 있습니다. 최신 정보는 공식 문서(docs.anthropic.com)를 참고하세요.
'IT' 카테고리의 다른 글
| Claude Code Git 연동 완전정리: 커밋, PR, 브랜치를 AI로 자동화하는 법 (0) | 2026.03.10 |
|---|---|
| Claude Code 요금제 완전 가이드: Free, Pro, Max, API 비교 (1) | 2026.03.10 |
| Claude Code 권한 시스템 완전정리: 안전하게 AI와 협업하기 (0) | 2026.03.09 |
| Claude Code 메모리 시스템 심화: 세션을 넘어서 기억하는 AI (0) | 2026.03.09 |
| CLAUDE.md 작성법 완전 가이드: 프로젝트 맞춤 AI 만들기 (0) | 2026.03.08 |
댓글