
Claude Opus 5 등장, effort xhigh/max × thinking 무효화 시 400 에러 주의
요약
Anthropic의 신규 모델 Claude Opus 5가 출시되었습니다. 성능은 향상되었으나 effort 파라미터와 thinking 설정 조합에 따른 Breaking Change가 발생하여, 특정 설정 시 400 에러가 발생할 수 있으니 주의가 필요합니다.
핵심 포인트
- Claude Opus 5 출시 및 1M 컨텍스트 윈도우 지원
- effort: xhigh/max와 thinking: disabled 조합 시 400 에러 발생 주의
- effort 설정 단계에 따른 thinking 활성화 규칙 변경
- 대화 중 도구 변경 시 프롬프트 캐시를 유지하는 기능 추가
2026년 7월 24일, Anthropic으로부터 신규 모델 Claude Opus 5(claude-opus-5)가 출시되었습니다. 이전 세대인 Opus 4.8로부터 성능이 대폭 향상되었음에도 불구하고, 가격은 $5 / $25 per MTok(입력/출력)로 동일하게 유지되었습니다.
이번 업데이트에서 특히 주의해야 할 점은 effort 파라미터와 thinking의 조합에 관한 **파괴적 변경 (Breaking Change)**입니다. Opus 4.8에서 동작하던 코드가 Opus 5로 전환하자마자 400 에러를 반환하는 경우가 있으므로, 이관 시 반드시 확인하시기 바랍니다.
📌 영향을 받는 대상
- Claude API / Amazon Bedrock / Google Cloud Vertex AI / Microsoft Foundry에서 Opus 계열 모델을 이용 중인 개발자
effort파라미터에서xhigh나max를 지정하면서 동시에thinking: {"type": "disabled"}를 사용 중인 에이전트 구현체- 장시간의 멀티턴 (Multi-turn) 대화에서 도구 구성을 동적으로 전환하는 에이전트를 운용 중인 팀
이 기사에서는 Opus 5의 신기능, 사양 변경, 그리고 이관 시 필요한 대응 사항을 정리하여 설명합니다.
Opus 4.8에서 Opus 5로의 변화와 주변 API 업데이트의 관계를 표로 정리했습니다.
Opus 5 본체의 강화와 더불어, API 전체적으로는 「대화 도중의 도구 변경」, 「폴백 (Fallback) 자동화」와 같이 에이전트 운용을 용이하게 하는 주변 기능들도 함께 추가되었습니다.
| 항목 | Opus 4.8 | Opus 5 |
|---|---|---|
| 컨텍스트 윈도우 (Context Window) | (구 사양) | 1M 토큰 (기본이자 최대) |
| 최대 출력 토큰 | (구 사양) | 128k 토큰 |
| thinking | 옵션 | 기본 활성화 |
| 가격 (입력/출력) | $5 / $25 per MTok | $5 / $25 per MTok (변경 없음) |
| 이용 가능한 곳 | 좌동 | Claude API, Amazon Bedrock, Google Cloud (Vertex AI), Microsoft Foundry |
성능 향상분이 그대로 가격에 전가되지 않은 점은 반가운 부분입니다. 상세한 신기능 및 동작 변경 사항은 Anthropic 공식의 「What's new in Claude Opus 5」 문서에 정리되어 있습니다.
⚠️ Breaking Change
Claude Opus 5에서는 thinking의 무효화(disabled)가 허용되는 경우가 effort: high 이하일 때뿐입니다. effort: xhigh 또는 effort: max와 thinking: {"type": "disabled"}를 동시에 지정하면 400 에러가 반환됩니다.
Opus 4.8에서는 「높은 effort를 지정하면서 thinking을 끄는」 조합이 가능했으나, Opus 5에서는 사양 변경으로 인해 이것이 금지되었습니다. 기존 코드를 그대로 Opus 5로 향하게 하면 요청이 실패하게 되므로 주의가 필요합니다.
대응 방법은 두 가지입니다.
effort를high이하로 낮춘다.thinking의 무효화 설정을 해제한다 (기본 활성화 상태로 되돌린다).
Opus 5는 effort 래더 (Ladder)의 모든 단계인 low / medium / high / xhigh / max를 지원합니다. 특히 max는 「능력 (Capability)이 가장 중요한 작업」을 위해 신설된 최상위 레벨로, 비용이나 레이턴시 (Latency)보다 정밀도를 우선시하고 싶은 태스크에 사용할 수 있습니다.
여러 턴에 걸친 대화 속에서 도구를 추가하거나 삭제해도 프롬프트 캐시를 유지할 수 있는 mid-conversation tool changes가 베타 버전으로 제공되었습니다.
장시간 세션의 에이전트에서 상황에 따라 도구 구성을 전환하고 싶을 때도 캐시 히트 (Cache hit)를 유지할 수 있어, 비용과 레이턴시 양면에서 이점이 있습니다.
fallbacks 파라미터에 "default"
모드가 추가되어, 거부 (refusal) 카테고리별로 Anthropic 권장 폴백 모델 (fallback model)이 자동으로 적용되도록 되었습니다. 개별적으로 폴백 대상을 설정하지 않아도 서버 사이드에서 적절한 모델로 전환됩니다.
과거 릴리스 노트의 thinking 관련 링크 및 모델 이관 가이드 참조 URL이 통일되었습니다. API 기능 자체에는 영향이 없습니다.
| 변경 사항 | 조치 필요 여부 (action_required) | 대응 내용 |
|---|---|---|
| Opus 5 출시 | 불필요 | 필요에 따라 모델 지정을 claude-opus-5로 업데이트 |
| effort xhigh/max × thinking 비활성화 (disabled) | 필요 | 해당 코드를 전수 조사하여 effort를 낮추거나 thinking 비활성화를 해제 |
| 모든 effort 레벨 대응 | 불필요 | 고정밀 작업 시 max 사용 검토 |
| 대화 중간 도구 변경 (mid-conversation tool changes) | 불필요 | 베타 헤더를 부여하여 시험 도입 검토 |
| fallbacks "default" 모드 | 불필요 | 개별 폴백 설정 간소화 검토 |
특히 중요한 것은 effort × thinking의 조합 체크입니다. 다음 흐름에 따라 이관 판단을 진행해 주세요.
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
...
# NG: 모델명만 그대로 변경하면 400 에러 발생
response = client.messages.create(
model="claude-opus-5",
...
# OK: 대응 1 - effort를 high 이하로 낮춤
response = client.messages.create(
model="claude-opus-5",
...
response = client.messages.create(
model="claude-opus-5",
max_tokens=4096,
...
Claude Opus 5가 Opus 4.8과 동일한 가격($5/$25 per MTok)으로 출시되었으며, 1M 컨텍스트, 128k 출력, thinking 기본 활성화라는 강력한 사양을 갖추게 되었습니다. -
【중요】 effort: xhigh / max와 thinking: disabled의 조합은 Opus 5에서 400 에러가 발생합니다. Opus 4.8에서 이관할 때는 해당 코드의 유무를 반드시 확인하십시오. -
effort는 low ~ max까지 모든 레벨을 지원하며, 정밀도가 최우선인 작업에는 max가 선택지에 포함됩니다. - 대화 중간의 도구 변경(베타)이나, fallbacks의 `
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기