추론모델 vs 일반모델 — 프롬프팅이 뒤집힌다
2026 에서 가장 모델별로 갈리는 영역. 틀리면 더 많은 돈을 내고 더 나쁜 출력을 받는다.
핵심: 일반 모델을 돕던 기법(장황한 CoT, few-shot 스캐폴딩)이 추론 모델에서는 오히려 해가 된다. 추론 모델은 이미 내부에서 추론하기 때문에, "단계별로 생각해" 를 붙이면 중복이거나 역효과다.
비교표
| 일반 모델 (GPT-4o급, Claude non-thinking, Gemini Flash) | 추론 모델 (o-series, GPT-5.x thinking, Claude extended-thinking, Gemini Thinking, DeepSeek-R1) | |
|---|---|---|
| CoT 스캐폴딩 | 도움 — "단계별로", few-shot CoT | 중복 → 역효과. 내부에서 추론함 |
| Few-shot 예시 | 종종 정확도↑ | 종종 추론을 해침(과잉모방). 출력 포맷 용도로만 |
| 프롬프트 스타일 | 명시적, 단계별로, 과정을 다 적기 | 최소 브리프: 명확한 목표 + 하드 제약 + 출력 계약. 접근법은 모델이 찾게 |
| 깊이 제어 | 프롬프트 문구로 | 파라미터로: OpenAI reasoning.effort, Anthropic output_config.effort(+adaptive thinking), Gemini thinking_level |
| 잘 맞는 작업 | 빠른 Q&A, 번역, 추출, 분류, 챗 | 다단계 수학, 깊은 코드 디버깅, 계획, 과학/논리 추론 |
| 비용/지연 | 낮음 | 높음 — 단순 작업에 기본값으로 쓰지 마라 (비싸고 이득 없음) |
추론 모델을 프롬프팅하는 법 (OpenAI 공식 가이드)
- 성공을 정의 — "done" 이 어떤 모습이고 어떻게 검증하는지 명시.
- 제약을 설정 — 경계 + 명시적 출력 포맷.
- 과잉 명세 금지 — 중간 단계를 생략하고, 접근법을 모델이 발견하게 하라.
# 좋은 추론모델 프롬프트 (최소 브리프, CoT 손붙잡기 없음)
목표: 페이지네이션 테스트를 실패시키는 off-by-one 버그를 찾아라.
제약: pagination.py 만 수정. public API 는 동일하게 유지.
출력: 수정된 함수, 그다음 근본 원인을 한 문장으로.
effort = "high"
프로바이더별 깊이 노브
- OpenAI o-series / GPT-5.x:
reasoning.effort—low(툴사용·계획),medium(기본),high/xhigh(어려운 디버깅·에이전트). effort 는 품질의 첫 수리 수단이 아니라 튜닝 노브로 취급. - Anthropic Claude:
output_config.effort(low~max) +thinking: {type:"adaptive"}(verified 2026-07).budget_tokens는 현행 모델(Opus 4.7+/Sonnet 5/Fable 5)에서 400 — 예산 수동 지정 없음. 추론 요약은 기본 숨김(thinking.display기본값"omitted") — 보려면display:"summarized"를 명시, 원본 chain of thought 는 반환 안 됨. 자세히 → reasoning-models. - DeepSeek-R1: 사고 사슬을 출력에 투명 노출.
- Gemini Deep Think: 여러 가설을 병렬 탐색.
라우팅 경험칙 (2026)
기본은 빠른 일반 모델. 어려운 문제만 추론 모델로 라우팅. 추출·번역·단순 Q&A 에 추론모델 가격을 내지 마라.
관련: reasoning-models · prompting-cheatsheet · model-choice-decision-guide · glossary#추론--사고reasoningthinking-모델