Claude Opus 5로 마이그레이션하기
이전 Claude 모델에서 Claude Opus 5로 마이그레이션하기: 모델 ID, 호환성이 깨지는 변경 사항, 권장 변경 사항, 마이그레이션 체크리스트.
Claude Opus 5는 Claude Opus 4.8 대비 단계적 도약 수준의 개선을 이룬 모델로, 심층 추론, 에이전트 및 장기 작업, 테스트 시점 컴퓨팅 스케일링에 강점을 보입니다. 동작상의 차이와 모델별 프롬프팅 패턴에 대해서는 Claude Opus 5 프롬프팅을 참조하세요.
Claude Opus 5는 입력 토큰 백만 개당 $5 USD, 출력 토큰 백만 개당 $25 USD라는 동일한 가격으로 Claude Opus 4.8을 그대로 대체할 수 있는 업그레이드입니다. Claude 가격을 참조하세요. 이미 Claude Opus 4.8에서 실행 중인 코드에 대해서는 두 가지 호환성이 깨지는 변경 사항이 있으며, 호환성이 깨지는 변경 사항에서 다룹니다. Claude Opus 5는 Claude Opus 4.8과 동일한 기능 세트를 지원합니다. 여기에는 1M 토큰 "context window"(컨텍스트 윈도우)(기본값이며 베타 헤더 불필요), 128k 최대 출력 토큰, 적응형 사고, "prompt caching"(프롬프트 캐싱), 배치 처리, Files API, PDF 지원, 비전, 서버 측 및 클라이언트 측 도구가 포함되며, 두 가지 예외가 있습니다. 웹 가져오기는 Claude Opus 5에서 사용할 수 없으며, Priority Tier는 Claude Opus 5에서 지원되지 않습니다. 모델별 사용 가능 여부는 각 도구 페이지를 참조하세요.
Claude Opus 4.8에서 Claude Opus 5로 마이그레이션하기
모델 이름 업데이트
# Opus 마이그레이션
model = "claude-opus-4-8" # Before
model = "claude-opus-5" # Afterclaude-opus-5는 날짜 접미사가 없는 고정 모델 ID로, claude-opus-4-8 및 claude-sonnet-5와 동일한 체계를 따릅니다.
호환성이 깨지는 변경 사항
-
사고가 기본적으로 켜짐: Claude Opus 4.8에서는
thinking필드가 없는 요청이 사고 없이 실행되지만, Claude Opus 5에서는 동일한 요청이 적응형 사고와 함께 실행됩니다.max_tokens는 여전히 사고와 응답 텍스트를 합친 총 출력에 대한 엄격한 한도이므로, Claude Opus 4.8에서 사고 없이 실행되던 워크로드에 대해서는 이 값을 재검토하세요. 사고 토큰은 사고 텍스트가 반환되지 않더라도 출력 토큰으로 청구되므로, 토큰당 가격은 변하지 않았지만 Claude Opus 4.8에서 사고 없이 실행되던 워크로드는 Claude Opus 5에서 요청당 더 많은 출력 토큰을 생성할 수 있습니다. 비용 제어를 참조하세요. 이전 동작을 유지하려면 다음 항목의 effort 상한을 조건으로thinking: {type: "disabled"}를 전달하세요. 사고를 비활성화하면 모델이 간혹 도구 호출을 일반 텍스트로 출력하거나 내부 XML 태그를 표시되는 출력에 포함할 수 있으므로, 가능하다면 사고를 활성화한 상태에서 낮은 effort 수준을 사용하는 것을 권장하며, 그럴 수 없는 경우의 완화 방법은 사고를 비활성화한 상태로 실행하기를 참조하세요.이에 따라 응답 형태도 바뀝니다. 사고가 켜져 있으면 응답이 첫 번째
text블록 앞에 하나 이상의thinking블록으로 시작할 수 있으며, Claude Opus 5에서는thinking.display의 기본값이"omitted"이므로 해당 블록은signature와 함께 빈thinking필드로 도착합니다.content[0].text처럼 위치로 응답을 읽는 코드나 첫 번째content_block_start이벤트를 텍스트로 취급하는 스트림 핸들러는 이러한 응답에서 깨집니다. 대신type필드로 콘텐츠 블록을 선택하세요.type이"text"인 블록에서text를 읽고, 스트림 이벤트를 처리할 때는 블록 타입에 따라 분기하세요. 빈thinking필드 대신 읽을 수 있는 사고 요약을 받으려면display: "summarized"를 설정하세요. 사고 표시 제어를 참조하세요."tool use"(도구 사용) 루프를 실행하는 경우, 도구 결과를 반환할 때 각 어시스턴트 응답의
thinking블록을thinking필드가 비어 있는 블록까지 포함하여 완전하고 수정되지 않은 상태로 API에 다시 전달하세요. 콘텐츠 블록을 타입별로 필터링하거나 재구성하지 말고 받은 그대로 어시스턴트 메시지를 되돌려 보내세요. API는 편집되거나, 순서가 바뀌거나, 일부가 누락된 사고 블록을 400 오류로 거부합니다. 사고 블록 보존을 참조하세요. -
사고 비활성화는
higheffort까지로 제한됨: 여전히thinking: {type: "disabled"}로 사고를 끌 수 있지만, effort 수준이high이하일 때만 가능합니다.thinking: {type: "disabled"}와 effortxhigh또는max를 결합한 요청은 400 오류를 반환합니다. Claude Opus 4.8은 이 조합을 허용하므로, 마이그레이션하기 전에 사고를 비활성화하는 요청을 점검하세요.이 검사는 각 요청마다 적용됩니다. 모든 요청의 effort 및 사고 구성은 독립적으로 검증되므로, 대화의 이전 요청이 허용되었더라도 사고가 비활성화된 상태에서 effort를
xhigh또는max로 올리는 요청은 거부됩니다.이전(Claude Opus 4.8에서는 허용, Claude Opus 5에서는 거부):
client.messages.create( model="claude-opus-4-8", max_tokens=16000, thinking={"type": "disabled"}, output_config={"effort": "xhigh"}, messages=[{"role": "user", "content": "..."}], )이후(Claude Opus 5),
thinking필드를 제거하여 사고를 다시 활성화하거나:client.messages.create( model="claude-opus-5", max_tokens=16000, output_config={"effort": "xhigh"}, # thinking is on by default messages=[{"role": "user", "content": "..."}], )또는 사고를 비활성화한 상태로 유지하고 effort를 낮추세요:
client.messages.create( model="claude-opus-5", max_tokens=16000, thinking={"type": "disabled"}, output_config={"effort": "high"}, # or "medium", "low" messages=[{"role": "user", "content": "..."}], )
권장 변경 사항
필수는 아니지만 경험을 개선해 줍니다:
-
역량이 중요한 작업에
maxeffort 테스트: Claude Opus 5는 전체 effort 수준(low,medium,high,xhigh,max)을 지원합니다. 토큰 소비보다 최대 역량이 더 중요한 경우maxeffort를 테스트하세요. 가장 까다로운 작업에서 성능 향상을 제공할 수 있지만, 토큰 사용량 증가에 따른 수익 체감이 나타날 수 있고 단순한 작업에서는 과도하게 사고하는 경향이 있을 수 있습니다.xhigh또는maxeffort로 실행하는 경우, 모델이 사고하고 행동할 여유가 있도록 큰max_tokens를 설정하세요. 64k 토큰에서 시작하여 조정하세요. -
자동 폴백 고려: Claude Opus 5는 사이버보안 안전 분류기와 함께 제공되며, 사이버 카테고리 거부는 Claude Opus 4.8로 폴백할 수 있습니다. 거부된 요청을 다른 모델에서 자동으로 재실행하려면
"default"모드의fallbacks파라미터(fallbacks: "default")를 고려하세요. 이는 수동으로 관리하는 모델 목록 대신 거부 카테고리에 따라 권장 폴백 모델을 선택합니다. 서버 측 폴백은 베타이며,"default"모드에는server-side-fallback-2026-07-01베타 헤더가 필요합니다. 거부 및 폴백을 참조하세요. -
더 짧은 프롬프트 캐싱: Claude Opus 5에서 캐시 가능한 최소 프롬프트 길이는 512 토큰으로, Claude Opus 4.8의 1,024 토큰에서 낮아졌습니다. Claude Opus 4.8에서 캐시하기에 너무 짧았던 프롬프트도 이제 코드 변경 없이 캐시 항목을 생성할 수 있습니다. 모델별 최소값은 프롬프트 캐싱을 참조하세요.
-
대화 중 도구 변경(베타): 이전 턴의 프롬프트 캐시 히트를 무효화하지 않고 대화의 턴 사이에 도구를 추가하거나 제거할 수 있습니다. 베타 헤더
mid-conversation-tool-changes-2026-07-01을 전송하세요. 이는 작업이 진행됨에 따라 도구를 점진적으로 노출하거나 종료하는 에이전트 워크로드에 유용합니다. 이 헤더가 없으면 변경된 도구 목록이 캐시된 접두사를 무효화합니다. -
길이 및 상세도 프롬프트 재조정: Claude Opus 5에서는 기본 표시 응답과 작성된 결과물이 Claude Opus 4.8보다 길어지며, effort를 낮추면 사고량은 줄어들지만 표시 응답이 안정적으로 짧아지지는 않습니다. 대신 간결함이나 목표 길이를 명시적으로 프롬프트하세요. 응답 길이 및 상세도와 작성 결과물 길이를 참조하세요.
-
이전에서 넘어온 검증 지시 제거 및 범위 제한: Claude Opus 5는 지시받지 않아도 자신의 작업을 검증하므로, 이전 모델에 맞춰 조정된 프롬프트에서 넘어온 명시적 검증 또는 자체 점검 지시를 제거하세요. 남겨 두면 과도한 검증이 발생합니다. 좁은 범위의 작업에는 작업 범위를 명시적으로 제한하세요. 멀티 에이전트 프레임워크에서는 Claude Opus 5가 이전 모델보다 더 쉽게 위임하므로, 어떤 시나리오에서 위임이 필요한지 명시적으로 안내하거나 서브에이전트 수에 상한을 두세요. 작업 범위 및 과도한 검증과 서브에이전트 생성 제어를 참조하세요.
마이그레이션 체크리스트
- 모델 이름을
claude-opus-4-8에서claude-opus-5로 업데이트하세요. thinking필드 없이 실행되던 워크로드를 검토하세요. Claude Opus 5에서는 사고와 함께 실행됩니다. 총 출력(사고와 응답 텍스트 합계)에 대한 엄격한 한도로 유지되는max_tokens를 재검토하거나, 이전 동작을 유지하려면 efforthigh이하에서thinking: {type: "disabled"}를 전달하세요. 사고를 비활성화하는 경우, 나타날 수 있는 출력 아티팩트와 그에 대한 프롬프팅 완화 방법은 사고를 비활성화한 상태로 실행하기를 검토하세요.content[0].text나 첫 번째 콘텐츠 블록이 텍스트라고 가정하는 스트림 핸들러처럼 위치로 콘텐츠를 읽는 응답 파싱을 업데이트하세요. 사고가 켜져 있으면thinking블록이text블록보다 먼저 도착합니다. 대신type으로 콘텐츠 블록을 선택하세요.- 도구 사용 루프를 실행하는 경우, 도구 결과를 반환할 때
thinking블록을 완전하고 수정되지 않은 상태로 다시 전달하세요. 수정된 블록은 400 오류를 반환합니다. 사고 블록 보존을 참조하세요. thinking필드를 파싱하는 코드가 이를 표시용 텍스트로만 취급하는지 확인하세요. Claude Opus 5에서thinking.display의 기본값은 Claude Opus 4.8과 동일하게"omitted"이므로 사고 블록은 빈thinking필드로 도착합니다. 읽을 수 있는 요약을 받으려면display: "summarized"를 설정하세요. 사고 표시 제어를 참조하세요.- 사고를 비활성화하는 요청을 점검하세요. effort
xhigh또는max와 함께thinking: {type: "disabled"}를 사용하면 400 오류가 반환되며, 각 요청마다 적용됩니다. 사고를 다시 활성화하거나 effort를high이하로 낮추세요. effort설정을 재평가하세요. 이전 모델에 맞춰 조정된 설정을 그대로 가져오지 말고 자체 평가에서 새로운 effort 스윕을 실행하세요.low및mediumeffort는 비용 및 지연 시간 제어 수단으로 테스트해 볼 가치가 있으며, 토큰 소비보다 최대 역량이 더 중요한 경우maxeffort를 테스트하세요.xhigh또는maxeffort로 실행하는 경우 시작점으로max_tokens를 최소 64k로 올리세요.- 캐싱 최소값 근처의 프롬프트를 검토하세요. 이제 512 토큰 이상의 프롬프트가 캐시 항목을 생성할 수 있으며, Claude Opus 4.8의 1,024 토큰에서 낮아졌습니다.
stop_reason: "refusal"을 처리하고, 거부된 요청을 권장 폴백 모델에서 자동으로 재실행하려면fallbacks: "default"(베타)를 고려하세요.- 조직에 Priority Tier 약정이 있는 경우 용량을 별도로 계획하세요. Priority Tier는 Claude Opus 5에서 지원되지 않으며, Claude Opus 4.8은 이를 유지합니다.
- 에이전트 워크로드의 경우 작업 예산(베타)과 대화 중 도구 변경(베타)을 고려하세요.
- 길이 및 상세도 프롬프트를 재조정하세요. Claude Opus 5에서는 기본 표시 응답과 작성된 결과물이 더 길어지며, effort를 낮추면 사고량은 줄어들지만 표시 응답이 안정적으로 짧아지지는 않습니다. 간결함이나 목표 길이를 명시적으로 프롬프트하세요. 응답 길이 및 상세도와 작성 결과물 길이를 참조하세요.
- 이전 모델에 맞춰 조정된 프롬프트에서 넘어온 검증 및 자체 점검 지시를 제거하고(Claude Opus 5에서 과도한 검증을 유발합니다), 좁은 범위의 작업에는 작업 범위를 명시적으로 제한하며, 멀티 에이전트 프레임워크에서는 서브에이전트 위임을 조정하거나 상한을 두세요. 작업 범위 및 과도한 검증과 서브에이전트 생성 제어를 참조하세요.
- 자체 워크로드에서 비용과 지연 시간의 기준선을 다시 설정하세요. 토큰당 가격은 Claude Opus 4.8과 동일하지만, 사고 토큰은 출력 토큰으로 청구되므로 사고 없이 실행되던 워크로드는 요청당 더 많은 출력 토큰을 생성할 수 있습니다.
Claude Opus 4.7에서 Claude Opus 5로 마이그레이션하기
Claude Opus 5는 입력 토큰 백만 개당 $5 USD, 출력 토큰 백만 개당 $25 USD라는 동일한 가격으로 기존 Claude Opus 4.7 프롬프트와 평가에서 별도 조정 없이도 강력한 성능을 보일 것입니다. Claude Opus 4.7과 동일한 기능 세트를 지원합니다. 여기에는 1M 토큰 컨텍스트 윈도우, 128k 최대 출력 토큰, 적응형 사고, 프롬프트 캐싱, 배치 처리, Files API, PDF 지원, 비전, 서버 측 및 클라이언트 측 도구가 포함되며, 두 가지 예외가 있습니다. 웹 가져오기는 Claude Opus 5에서 사용할 수 없으며, Priority Tier는 Claude Opus 5에서 지원되지 않습니다. 또한 대화 중 시스템 메시지를 추가하고 거부 중지 세부 정보를 공개적으로 문서화합니다. Claude API 및 Google Cloud에서 Claude Opus 5는 안정 버전 computer_toolset_20260801 도구 세트로서의 컴퓨터 사용과 웹페이지 내 작업을 위한 브라우저 사용 도구도 지원하며, 이 둘은 모두 Claude Opus 4.7에서 지원되지 않습니다. 이전 computer_20251124 버전의 기존 통합은 두 모델 모두에서 변경 없이 계속 작동합니다. 기존 통합을 업그레이드하려면 computer_20251124에서 마이그레이션하기를 참조하세요.
모델 이름 업데이트
# Opus 마이그레이션
model = "claude-opus-4-7" # Before
model = "claude-opus-5" # After호환성이 깨지는 변경 사항
-
사고가 기본적으로 켜짐: Claude Opus 4.7에서는
thinking필드가 없는 요청이 사고 없이 실행되지만, Claude Opus 5에서는 동일한 요청이 적응형 사고와 함께 실행됩니다.max_tokens는 여전히 사고와 응답 텍스트를 합친 총 출력에 대한 엄격한 한도이므로, Claude Opus 4.7에서 사고 없이 실행되던 워크로드에 대해서는 이 값을 재검토하세요. 사고 토큰은 사고 텍스트가 반환되지 않더라도 출력 토큰으로 청구되므로, 토큰당 가격은 변하지 않았지만 Claude Opus 4.7에서 사고 없이 실행되던 워크로드는 Claude Opus 5에서 요청당 더 많은 출력 토큰을 생성할 수 있습니다. 비용 제어를 참조하세요. 이전 동작을 유지하려면 다음 항목의 effort 상한을 조건으로thinking: {type: "disabled"}를 전달하세요. 사고를 비활성화하면 모델이 간혹 도구 호출을 일반 텍스트로 출력하거나 내부 XML 태그를 표시되는 출력에 포함할 수 있으므로, 가능하다면 사고를 활성화한 상태에서 낮은 effort 수준을 사용하는 것을 권장하며, 그럴 수 없는 경우의 완화 방법은 사고를 비활성화한 상태로 실행하기를 참조하세요.이에 따라 응답 형태도 바뀝니다. 사고가 켜져 있으면 응답이 첫 번째
text블록 앞에 하나 이상의thinking블록으로 시작할 수 있으며, Claude Opus 5에서는thinking.display의 기본값이"omitted"이므로 해당 블록은signature와 함께 빈thinking필드로 도착합니다.content[0].text처럼 위치로 응답을 읽는 코드나 첫 번째content_block_start이벤트를 텍스트로 취급하는 스트림 핸들러는 이러한 응답에서 깨집니다. 대신type필드로 콘텐츠 블록을 선택하세요.type이"text"인 블록에서text를 읽고, 스트림 이벤트를 처리할 때는 블록 타입에 따라 분기하세요. 빈thinking필드 대신 읽을 수 있는 사고 요약을 받으려면display: "summarized"를 설정하세요. 사고 표시 제어를 참조하세요.도구 사용 루프를 실행하는 경우, 도구 결과를 반환할 때 각 어시스턴트 응답의
thinking블록을thinking필드가 비어 있는 블록까지 포함하여 완전하고 수정되지 않은 상태로 API에 다시 전달하세요. 콘텐츠 블록을 타입별로 필터링하거나 재구성하지 말고 받은 그대로 어시스턴트 메시지를 되돌려 보내세요. API는 편집되거나, 순서가 바뀌거나, 일부가 누락된 사고 블록을 400 오류로 거부합니다. 사고 블록 보존을 참조하세요. -
사고 비활성화는
higheffort까지로 제한됨:thinking: {type: "disabled"}로 사고를 끌 수 있지만, effort 수준이high이하일 때만 가능합니다.thinking: {type: "disabled"}와 effortxhigh또는max를 결합한 요청은 400 오류를 반환합니다. Claude Opus 4.7은 이 조합을 허용하므로, 마이그레이션하기 전에 사고를 비활성화하는 요청을 점검하세요.이 검사는 각 요청마다 적용됩니다. 모든 요청의 effort 및 사고 구성은 독립적으로 검증되므로, 대화의 이전 요청이 허용되었더라도 사고가 비활성화된 상태에서 effort를
xhigh또는max로 올리는 요청은 거부됩니다.이전(Claude Opus 4.7에서는 허용, Claude Opus 5에서는 거부):
client.messages.create( model="claude-opus-4-7", max_tokens=16000, thinking={"type": "disabled"}, output_config={"effort": "xhigh"}, messages=[{"role": "user", "content": "..."}], )이후(Claude Opus 5),
thinking필드를 제거하여 사고와 함께 실행하거나:client.messages.create( model="claude-opus-5", max_tokens=16000, output_config={"effort": "xhigh"}, # thinking is on by default messages=[{"role": "user", "content": "..."}], )또는 사고를 비활성화한 상태로 유지하고 effort를 낮추세요:
client.messages.create( model="claude-opus-5", max_tokens=16000, thinking={"type": "disabled"}, output_config={"effort": "high"}, # or "medium", "low" messages=[{"role": "user", "content": "..."}], )
변경된 사항
다음 항목은 호환성이 깨지는 변경 사항이 아니며, 모델 ID를 교체한 후 확인해 볼 만한 동작 차이를 설명합니다.
-
샘플링 파라미터(변경 없음):
temperature,top_p또는top_k를 기본값이 아닌 값으로 설정하면 Claude Opus 4.7과 동일하게 Claude Opus 5에서도 400 오류가 반환됩니다. 대부분의 SDK는 이전 모델과의 호환성을 위해 여전히 이 필드를 정의하므로, API가 요청을 거부하더라도 이를 설정하는 코드는 타입 검사를 통과합니다. Python SDK(v1.0 이상)는 이를 정의하지 않으며, 전달하면TypeError가 발생합니다. Opus 4.7로 마이그레이션할 때 이 파라미터를 제거했다면 추가 변경은 필요하지 않습니다. -
effort 기본값은
high: Claude Opus 5의 effort 파라미터 기본값은 Claude API 및 Claude Code에서high입니다. 이미 effort를 명시적으로 설정했다면 설정은 변경되지 않습니다. -
effort 수준 재보정: 각 effort 수준에 할당되는 토큰 배분이 Claude Opus 4.7 대비 Claude Opus 5에서 변경되며, Claude Opus 5는 전체 effort 수준(
low,medium,high,xhigh,max)을 지원합니다. Claude Opus 4.7에 맞춰 조정된 설정을 그대로 가져오지 말고 자체 평가에서 새로운 effort 스윕을 실행하세요.low및mediumeffort는 비용 및 지연 시간 제어 수단으로 테스트해 볼 가치가 있으며, 토큰 소비보다 최대 역량이 더 중요한 경우maxeffort를 테스트하세요.xhigh또는maxeffort로 실행하는 경우, 모델이 사고하고 행동할 여유가 있도록 큰max_tokens를 설정하세요. 64k 토큰에서 시작하여 조정하세요. Effort를 참조하세요. -
1M 컨텍스트 윈도우가 기본값: Claude Opus 5는 베타 헤더나 장문 컨텍스트 추가 요금 없이 기본적으로 전체 1M 토큰 컨텍스트 윈도우를 제공합니다. 클라이언트가 이전 모델과의 호환성을 위해 컨텍스트 윈도우 베타 헤더를 전달하고 있다면 Claude Opus 5에서는 제거할 수 있습니다.
-
대화 중 시스템 메시지: Claude Opus 5는
messages배열에서 사용자 턴 직후의role: "system"메시지를 허용합니다(배치 규칙 적용). 처음부터 적용되는 지시에는 최상위system필드를 사용하세요. Claude Opus 4.7은messages내의role: "system"을 400 오류로 거부합니다. 지시를 업데이트하기 위해 전체 메시지 기록을 재구성하는 코드 경로를 유지하고 있다면, 이를 단순화하고 이전 턴의 프롬프트 캐시 히트를 보존할 수 있습니다. -
거부 중지 세부 정보: 거부 응답의
stop_details객체(Claude Opus 4.7부터 사용 가능)가 이제 공개적으로 문서화되었습니다. 모델이 요청을 거절하면 기존refusal중지 사유에 더해 거부 카테고리를 식별합니다. 베타 헤더는 필요하지 않으며 옵트아웃은 없습니다. 중지 사유 처리를 참조하세요. -
더 낮은 프롬프트 캐싱 최소값: Claude Opus 5에서 캐시 가능한 최소 프롬프트 길이는 512 토큰으로, Claude Opus 4.7보다 낮습니다. Claude Opus 4.7에서 캐시하기에 너무 짧았던 프롬프트도 이제 코드 변경 없이 캐시 항목을 생성할 수 있습니다. 모델별 최소값은 프롬프트 캐싱을 참조하세요.
-
빠른 모드: Claude Opus 5는 빠른 모드(리서치 프리뷰)를 지원합니다. 빠른 모드는 Claude Opus 4.7에서 사용할 수 없으며,
speed: "fast"가 포함된 요청은 오류를 반환합니다.speed: "fast"파라미터와fast-mode-2026-02-01베타 헤더는 Claude Opus 5에서 변경 없이 작동합니다.
권장 변경 사항
필수는 아니지만 경험을 개선해 줍니다:
-
자동 폴백 고려: Claude Opus 5는 사이버보안 안전 분류기와 함께 제공되며, 사이버 카테고리 거부는 Claude Opus 4.8로 폴백할 수 있습니다. 거부된 요청을 다른 모델에서 자동으로 재실행하려면
"default"모드의fallbacks파라미터(fallbacks: "default")를 고려하세요. 이는 수동으로 관리하는 모델 목록 대신 거부 카테고리에 따라 권장 폴백 모델을 선택합니다. 서버 측 폴백은 베타이며,"default"모드에는server-side-fallback-2026-07-01베타 헤더가 필요합니다. 거부 및 폴백을 참조하세요. -
대화 중 도구 변경(베타): 이전 턴의 프롬프트 캐시 히트를 무효화하지 않고 대화의 턴 사이에 도구를 추가하거나 제거할 수 있습니다. 베타 헤더
mid-conversation-tool-changes-2026-07-01을 전송하세요. 이는 작업이 진행됨에 따라 도구를 점진적으로 노출하거나 종료하는 에이전트 워크로드에 유용합니다. 이 헤더가 없으면 변경된 도구 목록이 캐시된 접두사를 무효화합니다. -
길이 및 상세도 프롬프트 재조정: Claude Opus 5에서는 기본 표시 응답과 작성된 결과물이 이전 Opus 모델보다 길어지며, effort를 낮추면 사고량은 줄어들지만 표시 응답이 안정적으로 짧아지지는 않습니다. 대신 간결함이나 목표 길이를 명시적으로 프롬프트하세요. 응답 길이 및 상세도와 작성 결과물 길이를 참조하세요.
-
이전에서 넘어온 검증 지시 제거 및 범위 제한: Claude Opus 5는 지시받지 않아도 자신의 작업을 검증하므로, 이전 모델에 맞춰 조정된 프롬프트에서 넘어온 명시적 검증 또는 자체 점검 지시를 제거하세요. 남겨 두면 과도한 검증이 발생합니다. 좁은 범위의 작업에는 작업 범위를 명시적으로 제한하세요. 멀티 에이전트 프레임워크에서는 Claude Opus 5가 이전 모델보다 더 쉽게 위임하므로, 어떤 시나리오에서 위임이 필요한지 명시적으로 안내하거나 서브에이전트 수에 상한을 두세요. 작업 범위 및 과도한 검증과 서브에이전트 생성 제어를 참조하세요.
마이그레이션 체크리스트
- 모델 이름을
claude-opus-4-7에서claude-opus-5로 업데이트하세요(또는 별칭을 업데이트하세요). thinking필드 없이 실행되던 워크로드를 검토하세요. Claude Opus 5에서는 사고와 함께 실행됩니다. 총 출력(사고와 응답 텍스트 합계)에 대한 엄격한 한도로 유지되는max_tokens를 재검토하거나, 이전 동작을 유지하려면 efforthigh이하에서thinking: {type: "disabled"}를 전달하세요. 사고를 비활성화하는 경우, 나타날 수 있는 출력 아티팩트와 그에 대한 프롬프팅 완화 방법은 사고를 비활성화한 상태로 실행하기를 검토하세요.content[0].text나 첫 번째 콘텐츠 블록이 텍스트라고 가정하는 스트림 핸들러처럼 위치로 콘텐츠를 읽는 응답 파싱을 업데이트하세요. 사고가 켜져 있으면thinking블록이text블록보다 먼저 도착합니다. 대신type으로 콘텐츠 블록을 선택하세요.- 도구 사용 루프를 실행하는 경우, 도구 결과를 반환할 때
thinking블록을 완전하고 수정되지 않은 상태로 다시 전달하세요. 수정된 블록은 400 오류를 반환합니다. 사고 블록 보존을 참조하세요. thinking필드를 파싱하는 코드가 이를 표시용 텍스트로만 취급하는지 확인하세요. Claude Opus 5에서thinking.display의 기본값은 Claude Opus 4.7과 동일하게"omitted"이므로 사고 블록은 빈thinking필드로 도착합니다. 읽을 수 있는 요약을 받으려면display: "summarized"를 설정하세요. 사고 표시 제어를 참조하세요.- 사고를 비활성화하는 요청을 점검하세요. effort
xhigh또는max와 함께thinking: {type: "disabled"}를 사용하면 400 오류가 반환되며, 각 요청마다 적용됩니다. 사고를 다시 활성화하거나 effort를high이하로 낮추세요. - Opus 4.7 마이그레이션 중에 샘플링 파라미터를 제거했다면 조치가 필요하지 않습니다. 400 재시도 경로와 함께 다시 추가했다면 해당 재시도 경로를 제거하세요.
effort설정을 재평가하세요. Claude Opus 4.7에 맞춰 조정된 설정을 그대로 가져오지 말고 자체 평가에서 새로운 effort 스윕을 실행하세요.low및mediumeffort는 비용 및 지연 시간 제어 수단으로,maxeffort는 토큰 소비보다 최대 역량이 더 중요한 경우에 테스트하세요.xhigh또는maxeffort로 실행하는 경우 시작점으로max_tokens를 최소 64k로 올리세요.- 컨텍스트 윈도우 베타 헤더를 모두 제거하세요. 1M 컨텍스트 윈도우는 Claude API, Amazon Bedrock, Google Cloud, Microsoft Foundry에서 기본값입니다.
- 지시를 업데이트하기 위해 대화 기록을 재구성하고 있다면, 프롬프트 캐시 히트를 보존하기 위해 대화 중 시스템 메시지로 전환하는 것을 고려하세요.
- 중지 사유 처리가 거부 시
stop_details를 읽는지 확인하고(Claude Opus 4.7부터 사용 가능하며 이제 공개적으로 문서화됨), 거부된 요청을 권장 폴백 모델에서 자동으로 재실행하려면fallbacks: "default"(베타)를 고려하세요. - 캐싱 최소값 근처의 프롬프트를 검토하세요. 이제 512 토큰 이상의 프롬프트가 캐시 항목을 생성할 수 있습니다.
- 웹 가져오기를 사용하는 경우 대안을 계획하세요. Claude Opus 5에서는 사용할 수 없습니다.
- 조직에 Priority Tier 약정이 있는 경우, Priority Tier는 Claude Opus 5에서 지원되지 않는다는 점에 유의하세요.
- Claude Opus 4.7에서 빠른 모드를 사용했다면 모델 ID 외에 요청 변경은 필요하지 않습니다.
speed: "fast"와fast-mode-2026-02-01베타 헤더는 Claude Opus 5에서 변경 없이 작동합니다. - 에이전트 워크로드의 경우 작업 예산(베타)과 대화 중 도구 변경(베타)을 고려하세요.
- 길이 및 상세도 프롬프트를 재조정하고, 이전 모델에 맞춰 조정된 프롬프트에서 넘어온 검증 및 자체 점검 지시를 제거하세요.
- 선택한 effort 수준에서 비용과 지연 시간의 기준선을 다시 설정하세요. 토큰당 가격은 Claude Opus 4.7과 동일하지만, 사고 토큰은 출력 토큰으로 청구되므로 사고 없이 실행되던 워크로드는 요청당 더 많은 출력 토큰을 생성할 수 있습니다.
Claude Opus 4.6 및 이전 Opus 모델에서 Claude Opus 5로 마이그레이션하기
Claude Opus 5는 동일한 가격으로 기존 Claude Opus 4.6 프롬프트와 평가에서 별도 조정 없이도 강력한 성능을 보일 것이지만, 마이그레이션 시 알아 두어야 할 몇 가지 동작 및 API 변경 사항이 있습니다. 이러한 변경 사항의 대부분은 Claude Opus 4.7에서 적용되었으며, 사고 기본 활성화와 사고 비활성화에 대한 effort 상한이라는 두 가지가 Claude Opus 5에서 추가로 적용됩니다. 이 모든 내용이 이 섹션에서 다루어지므로, Claude Opus 4.6에서 바로 넘어오는 코드에 대해 완전한 안내가 됩니다. Claude Opus 5는 Claude Opus 4.6과 동일한 기능 세트를 지원하며, 다음이 포함됩니다:
- 장문 컨텍스트 추가 요금 없이 표준 API 가격으로 제공되는 1M 토큰 컨텍스트 윈도우
- 128k 최대 출력 토큰
- 적응형 사고
- 프롬프트 캐싱
- 배치 처리
- Files API
- PDF 지원
- 비전
- 서버 측 및 클라이언트 측 도구(bash, 코드 실행, 컴퓨터 사용, 텍스트 편집기, 웹 검색, MCP 커넥터, 메모리)
두 가지 예외: 웹 가져오기는 Claude Opus 5에서 사용할 수 없으며, Priority Tier는 Claude Opus 5에서 지원되지 않습니다. Claude API 및 Google Cloud에서 Claude Opus 5는 안정 버전 computer_toolset_20260801 도구 세트로서의 컴퓨터 사용과 웹페이지 내 작업을 위한 브라우저 사용 도구도 지원하며, 이 둘은 모두 Claude Opus 4.6 또는 이전 Opus 모델에서 지원되지 않습니다. 이전 computer_20251124 버전의 기존 통합은 Claude Opus 5에서 변경 없이 계속 작동합니다. 기존 통합을 업그레이드하려면 computer_20251124에서 마이그레이션하기를 참조하세요.
모델 이름 업데이트
# Opus 마이그레이션
model = "claude-opus-4-6" # Before
model = "claude-opus-5" # After호환성이 깨지는 변경 사항
-
확장 사고 제거:
thinking: {type: "enabled", budget_tokens: N}은 Claude Opus 4.7 이상 모델에서 더 이상 지원되지 않으며 400 오류를 반환합니다. adaptive thinking(적응형 사고)(thinking: {type: "adaptive"})으로 전환하고 effort 파라미터를 사용하여 사고 깊이를 제어하세요. Claude Opus 5에서는 적응형 사고가 기본적으로 켜져 있습니다:thinking: {type: "adaptive"}는 유효하며thinking필드를 완전히 생략하는 것과 동일합니다(다음 항목 참조).이전 (Claude Opus 4.6):
client.messages.create( model="claude-opus-4-6", max_tokens=16000, thinking={"type": "enabled", "budget_tokens": 10000}, messages=[{"role": "user", "content": "..."}], )이후 (Claude Opus 5):
client.messages.create( model="claude-opus-5", max_tokens=16000, thinking={"type": "adaptive"}, output_config={"effort": "high"}, # or "max", "xhigh", "medium", "low" messages=[{"role": "user", "content": "..."}], )적응형 사고는 프롬프팅과 effort 파라미터를 통해 조정할 수 있습니다. effort 수준 선택하기를 참조하세요.
-
사고가 기본적으로 켜짐: Claude Opus 4.6 및 Claude Opus 4.7에서는
thinking필드가 없는 요청이 사고 없이 실행되지만, Claude Opus 5에서는 동일한 요청이 적응형 사고와 함께 실행됩니다.max_tokens는 여전히 사고와 응답 텍스트를 합한 총 출력에 대한 엄격한 한도이므로, 사고 없이 실행되던 워크로드에 대해서는 이 값을 재검토하세요. 사고 토큰은 사고 텍스트가 반환되지 않는 경우에도 출력 토큰으로 청구되므로, 토큰당 가격은 변하지 않았더라도 사고 없이 실행되던 워크로드는 Claude Opus 5에서 요청당 더 많은 출력 토큰을 생성할 수 있습니다. 비용 제어를 참조하세요. 이전 동작을 유지하려면 다음 항목의 effort 상한을 준수하는 조건으로thinking: {type: "disabled"}를 전달하세요. 사고가 비활성화된 상태에서는 모델이 간혹 도구 호출을 일반 텍스트로 출력하거나 내부 XML 태그를 가시적 출력에 포함할 수 있으므로, 가능한 경우 사고를 활성화한 상태에서 낮은 effort 수준을 사용하는 것을 권장하며, 그럴 수 없는 경우의 완화 방법은 사고를 비활성화한 상태로 실행하기를 참조하세요.이에 따라 응답 형태도 변경됩니다. 사고가 켜져 있으면 응답은 첫 번째
text블록 앞에 하나 이상의thinking블록으로 시작할 수 있으며, Claude Opus 5에서는 사고 내용이 기본적으로 생략되므로(이 목록의 항목 5), 해당 블록은signature와 함께 빈thinking필드로 도착합니다.content[0].text와 같이 위치로 응답을 읽는 코드나 첫 번째content_block_start이벤트를 텍스트로 취급하는 스트림 핸들러는 이러한 응답에서 오류가 발생합니다. 대신type필드로 콘텐츠 블록을 선택하세요:type이"text"인 블록에서text를 읽고, 스트림 이벤트를 처리할 때 블록 타입에 따라 분기하세요.도구 사용 루프를 실행하는 경우, 도구 결과를 반환할 때 각 어시스턴트 응답의
thinking블록을thinking필드가 비어 있는 블록을 포함하여 완전하고 수정되지 않은 상태로 API에 다시 전달하세요. 콘텐츠 블록을 타입별로 필터링하거나 재구성하지 말고 받은 그대로 어시스턴트 메시지를 되돌려 보내세요: API는 편집되거나, 순서가 바뀌거나, 일부가 누락된 사고 블록을 400 오류로 거부합니다. 사고 블록 보존하기를 참조하세요. -
사고 비활성화는
higheffort로 제한됨:thinking: {type: "disabled"}로 사고를 끌 수 있지만, effort 수준이high이하인 경우에만 가능합니다.thinking: {type: "disabled"}와 effortxhigh또는max를 결합한 요청은 Claude Opus 5에서 400 오류를 반환하며, 이는 각 요청마다 적용됩니다. 마이그레이션 전에 사고를 비활성화하는 요청을 점검하세요: 사고를 다시 활성화하거나 effort를high이하로 낮추세요. -
샘플링 파라미터 제거: Claude Opus 5를 포함한 Claude Opus 4.7 이상 모델에서
temperature,top_p또는top_k를 기본값이 아닌 값으로 설정하면 400 오류가 반환됩니다. Python SDK(v1.0 이상)는 이를 정의하지 않으며, 전달하면TypeError가 발생합니다. 가장 안전한 마이그레이션 경로는 요청 페이로드에서 이러한 파라미터를 완전히 생략하는 것입니다. Claude Opus 5에서 모델 동작을 유도하는 권장 방법은 프롬프팅입니다. 결정성을 위해temperature = 0을 사용하고 있었다면, 이전 모델에서도 동일한 출력을 보장한 적이 없다는 점에 유의하세요. -
사고 내용이 기본적으로 생략됨: 사고 블록은 Claude Opus 4.7 이상 모델에서도 여전히 응답 스트림에 나타나지만, 명시적으로 옵트인하지 않는 한
thinking필드는 비어 있습니다. 이는 요약된 사고 텍스트를 반환하는 것이 기본값이었던 Claude Opus 4.6과 비교하여 조용히 변경된 사항입니다. 요약된 사고 내용을 복원하려면thinking.display를"summarized"로 설정하세요:thinking = { "type": "adaptive", "display": "summarized", }Claude Opus 4.7 이상 모델에서 기본값은
"omitted"입니다. 제품이 사용자에게 추론을 스트리밍하는 경우, 새 기본값은 출력이 시작되기 전 긴 일시 정지로 나타납니다. 사고 중 가시적인 진행 상황을 복원하려면display: "summarized"를 설정하세요. 자세한 내용은 사고 표시 제어하기를 참조하세요. -
토큰 카운팅 업데이트: Claude Opus 4.7은 새로운 토크나이저를 도입했으며, Claude Opus 5를 포함한 이후 Opus 모델도 이를 사용합니다. 이는 광범위한 작업에서 성능 향상에 기여하며, Claude Opus 4.7 이전 모델과 비교하여 텍스트를 처리할 때 대략 1배에서 1.35배의 토큰을 사용할 수 있습니다(최대 약 35% 더 많으며, 콘텐츠에 따라 다름).
/v1/messages/count_tokens는 Claude Opus 5에 대해 Claude Opus 4.6과 다른 토큰 수를 반환합니다. 토큰 효율성은 워크로드 형태에 따라 다를 수 있습니다.프롬프팅 개입,
task_budget및effort는 비용을 제어하고 적절한 토큰 사용을 보장하는 데 도움이 될 수 있습니다. 이러한 제어는 모델 지능과 트레이드오프가 있을 수 있습니다. 컴팩션 트리거를 포함하여 추가 여유를 제공하도록max_tokens파라미터를 업데이트하세요. Claude Opus 5는 장문 컨텍스트 프리미엄 없이 표준 API 가격으로 1M 컨텍스트 윈도우를 제공합니다. -
프리필 제거 (Opus 4.6에서 이어짐): 어시스턴트 메시지 프리필은 Claude Opus 5를 포함한 Claude Opus 4.7 이상 모델에서 400 오류를 반환합니다. 대신 구조화된 출력, 시스템 프롬프트 지침 또는
output_config.format을 사용하세요.
effort 수준 선택하기
effort 파라미터를 사용하면 Claude의 지능과 토큰 소비를 조정하여 더 빠른 속도와 낮은 비용을 위해 능력을 트레이드오프할 수 있습니다. Claude Opus 5는 전체 effort 수준을 지원하며 기본값은 high입니다. 이전 모델에 맞춰 조정된 설정을 그대로 가져오지 말고 자체 평가에서 새로운 effort 스윕을 실행하세요:
max: 가장 까다로운 작업에서 이득을 제공할 수 있지만 토큰 사용량 증가에 따른 수익 감소를 보일 수 있으며 단순한 작업에서는 과도한 사고에 빠지기 쉽습니다. 토큰 소비보다 최대 능력이 더 중요한 경우에 테스트하세요.xhigh: 기본값보다 더 깊이가 필요한 장기 실행 에이전트 및 코딩 작업을 위한 확장된 능력입니다.high: 기본값입니다. 대부분의 작업에서 토큰 사용량과 지능의 균형을 맞춥니다.medium: 기본값에서 한 단계 낮춘 비용 절감 옵션으로, 비용 및 지연 시간 제어 수단으로 테스트해 볼 가치가 있습니다.low: 가장 효율적입니다. 짧고 범위가 한정된 작업 및 지연 시간에 민감한 워크로드에 사용하세요.
xhigh 또는 max effort로 실행하는 경우, 모델이 사고하고 행동할 여유가 있도록 큰 max_tokens를 설정하세요. 64k 토큰에서 시작하여 조정하세요. 이 모델에서는 이전의 어떤 Opus보다 effort가 더 중요합니다. 업그레이드할 때 적극적으로 실험하세요.
동작 변경 사항
Claude Opus 4.7은 Claude Opus 4.6과 비교하여 API 호환성을 깨는 변경은 아니지만 프롬프트 업데이트나 스캐폴딩 제거가 필요할 수 있는 몇 가지 동작 차이를 도입했습니다. 이는 이 목록에 명시된 조정 사항과 함께 Claude Opus 5로 이어집니다.
-
응답 길이가 사용 사례에 따라 다름: Claude Opus 4.7은 고정된 장황함을 기본으로 하지 않고 작업이 얼마나 복잡하다고 판단하는지에 따라 응답 길이를 조정합니다. 이는 일반적으로 단순한 조회에서는 더 짧은 답변을, 개방형 분석에서는 훨씬 더 긴 답변을 의미합니다.
제품이 특정 스타일이나 장황함의 출력에 의존하는 경우 프롬프트를 조정해야 할 수 있습니다. 예를 들어, 장황함을 줄이려면 다음을 추가하세요: "Provide concise, focused responses. Skip non-essential context, and keep examples minimal." 특정 종류의 과도한 설명이 보이면 이를 방지하기 위한 구체적인 지침을 프롬프트에 추가하세요.
Claude가 적절한 수준의 간결함으로 소통하는 방법을 보여주는 긍정적 예시가 부정적 예시나 모델에게 하지 말아야 할 것을 알려주는 지침보다 더 효과적인 경향이 있습니다. Claude Opus 5에서는 기본 가시적 응답과 작성된 결과물이 이전 Opus 모델보다 더 길며, effort를 낮추면 사고량은 줄어들지만 가시적 응답이 안정적으로 짧아지지는 않습니다. 간결함이나 목표 길이를 명시적으로 프롬프트하세요. 응답 길이와 장황함을 참조하세요.
-
더 문자 그대로의 지침 따르기: Claude Opus 4.7은 특히 낮은 effort 수준에서 Claude Opus 4.6보다 프롬프트를 더 문자 그대로, 명시적으로 해석합니다. 한 항목의 지침을 다른 항목으로 조용히 일반화하지 않으며, 요청하지 않은 것을 추론하지 않습니다. 이러한 문자주의의 장점은 정밀함과 혼란 감소입니다. 일반적으로 신중하게 조정된 프롬프트, 구조화된 추출, 예측 가능한 동작을 원하는 파이프라인이 있는 API 사용 사례에서 더 나은 성능을 보입니다. Claude Opus 5로의 마이그레이션에는 프롬프트 및 하네스 검토가 특히 도움이 될 수 있습니다.
-
더 직접적인 어조: 모든 새 모델과 마찬가지로 장문 작성의 산문 스타일이 바뀔 수 있습니다. Claude Opus 4.7은 Claude Opus 4.6의 더 따뜻한 스타일보다 더 직접적이고 의견이 분명하며, 인정 위주의 표현이 적고 이모지가 적습니다. 제품이 특정 목소리에 의존하는 경우 새 기준에 맞춰 스타일 프롬프트를 재평가하세요.
-
에이전트 트레이스의 내장 진행 상황 업데이트: Claude Opus 4.7은 긴 에이전트 트레이스 전반에 걸쳐 사용자에게 더 정기적이고 고품질의 업데이트를 제공합니다. 중간 상태 메시지를 강제하기 위한 스캐폴딩("After every 3 tool calls, summarize progress")을 추가했다면 제거해 보세요. Claude Opus 4.7의 사용자 대상 업데이트의 길이나 내용이 사용 사례에 잘 맞지 않는다면, 이러한 업데이트가 어떤 모습이어야 하는지 프롬프트에 명시적으로 설명하고 예시를 제공하세요.
-
서브에이전트 생성 변경: Claude Opus 4.7은 기본적으로 Claude Opus 4.6보다 더 적은 서브에이전트를 생성하는 경향이 있는 반면, Claude Opus 5는 이전 모델보다 더 쉽게 서브에이전트에 위임합니다. 이 동작은 프롬프팅을 통해 어느 방향으로든 조정할 수 있습니다. 서브에이전트가 바람직한 경우에 대한 명시적 지침을 제공하거나 서브에이전트 수를 제한하세요. 서브에이전트 생성 제어하기를 참조하세요.
-
더 엄격한 effort 보정: Claude Opus 4.6과 의미 있게 달라진 점으로, Claude Opus 4.7은 특히 낮은 쪽에서 effort 수준을 엄격하게 준수합니다.
low및medium에서 모델은 요청된 것 이상을 하지 않고 요청된 범위로 작업을 한정합니다.이는 지연 시간과 비용에 좋지만,
loweffort로 실행되는 중간 정도 복잡한 작업에서는 사고 부족의 위험이 있습니다. 복잡한 문제에서 얕은 추론이 관찰되면 프롬프트로 우회하지 말고 effort를high또는xhigh로 올리세요.지연 시간 때문에 effort를
low로 유지해야 한다면 구체적인 지침을 추가하세요: "This task involves multistep reasoning. Think carefully through the problem before responding." Claude Opus 4.7 권장 effort 수준을 참조하세요. -
기본적으로 더 적은 도구 호출: Claude Opus 4.7은 Claude Opus 4.6보다 도구를 덜 자주 사용하고 추론을 더 많이 사용하는 경향이 있습니다. 이는 대부분의 경우 더 나은 결과를 만듭니다.
도구 사용을 늘리려면 effort 설정을 올리세요.
high또는xhigheffort 설정은 에이전트 검색 및 코딩에서 상당히 더 많은 도구 사용을 보입니다. 또한 도구를 언제 어떻게 적절히 사용해야 하는지 모델에게 명시적으로 지시하도록 프롬프트를 조정할 수도 있습니다. -
실시간 사이버보안 안전장치: Claude Opus 4.7에 새로 추가된 것으로, 금지되거나 고위험 주제와 관련된 요청은 거부로 이어질 수 있습니다. 침투 테스트, 취약점 연구 또는 레드팀과 같은 합법적인 보안 작업의 경우 Cyber Verification Program에 신청하여 제한 완화를 요청하세요. 신청 경로는 Claude에 접근하는 방식에 따라 다릅니다.
-
고해상도 이미지 지원: Claude Opus 4.7은 고해상도 이미지를 지원하는 최초의 Claude 모델입니다. 최대 이미지 해상도는 긴 쪽 기준 2,576픽셀로, 이전 모델의 1,568픽셀에서 증가했습니다. 이는 비전 중심 워크로드에서 이득을 제공하며 컴퓨터 사용, 스크린샷 이해 및 문서 분석에 특히 유용합니다.
고해상도 지원은 자동이며 베타 헤더나 클라이언트 측 옵트인이 필요하지 않습니다. 계획해야 할 두 가지 사항:
- 전체 해상도 이미지는 이전 모델보다 최대 약 3배 더 많은 이미지 토큰을 사용할 수 있습니다(이미지당 최대 4,784 토큰, 이전 상한인 이미지당 약 1,600 토큰과 비교). 이미지 중심 워크로드에 대해
max_tokens와 비용 예상을 재조정하거나, 추가 충실도가 필요하지 않다면 전송 전에 다운샘플링하세요. - 모델이 반환하는 포인팅 및 바운딩 박스 좌표는 Claude Opus 4.7에서 실제 이미지 픽셀과 1:1이므로 스케일 팩터 변환이 필요하지 않습니다.
자세한 내용은 Claude Opus 4.7의 고해상도 이미지 지원을 참조하세요.
- 전체 해상도 이미지는 이전 모델보다 최대 약 3배 더 많은 이미지 토큰을 사용할 수 있습니다(이미지당 최대 4,784 토큰, 이전 상한인 이미지당 약 1,600 토큰과 비교). 이미지 중심 워크로드에 대해
권장 변경 사항
필수는 아니지만 경험을 개선합니다:
-
max_tokens재평가: 동일한 텍스트가 Claude Opus 4.7 이상 모델에서 더 높은 토큰 수를 생성하므로, 컴팩션 트리거를 포함하여 추가 여유를 제공하도록max_tokens파라미터를 업데이트하세요. 프롬프팅 개입,task_budget및effort는 비용을 제어하고 적절한 토큰 사용을 보장하는 데 도움이 될 수 있습니다. -
토큰 수 예상 점검: 클라이언트 측에서 토큰을 추정하거나 고정된 토큰 대 문자 비율을 가정하는 모든 코드 경로는 Claude Opus 5에 대해 다시 테스트해야 합니다. 토큰 카운팅 엔드포인트를 사용하여 확인하세요.
-
작업 예산 채택 (베타): Claude Opus 4.7은 작업 예산을 도입합니다. 이 예산을 통해 사고, 도구 호출, 도구 결과 및 최종 출력을 포함한 전체 에이전트 루프에 대해 Claude가 얼마나 많은 토큰을 가지고 있는지 알려줄 수 있습니다. 모델은 실행 중인 카운트다운을 보고 이를 사용하여 작업의 우선순위를 정하고 예산이 소진됨에 따라 작업을 우아하게 마무리합니다. 사용하려면 베타 헤더
task-budgets-2026-03-13을 설정하고 출력 구성에 다음을 추가하세요:output_config = { "effort": "high", "task_budget": {"type": "tokens", "total": 128000}, }사용 사례에 맞게 다양한 작업 예산을 실험해야 할 수 있습니다. 모델에게 너무 제한적인 작업 예산이 주어지면 예산을 제약으로 언급하며 작업을 덜 철저하게 완료할 수 있습니다.
속도보다 품질이 더 중요한 개방형 에이전트 작업의 경우 작업 예산을 설정하지 마세요. 모델이 토큰 허용량에 맞춰 작업 범위를 한정해야 하는 워크로드에 작업 예산을 사용하세요. 작업 예산의 최소값은 20k 토큰입니다.
작업 예산은 엄격한 상한이 아니라 모델이 인지하는 제안입니다.
max_tokens와는 다릅니다:task_budget: 전체 에이전트 루프에 걸친 권고적 상한입니다. 모델이 이를 보고 스스로 속도를 조절하는 데 사용합니다.max_tokens: 생성된 토큰에 대한 요청당 엄격한 상한입니다. 모델에 전달되지 않으므로 모델은 이를 인지하지 못합니다.
모델이 스스로 조절하기를 원할 때는
task_budget을, 사용량을 제한하는 엄격한 상한으로는max_tokens를 사용하세요. -
max또는xhigheffort에서 큰max_tokens설정: Claude Opus 4.7 이상 모델을max또는xhigheffort로 실행하는 경우, 모델이 서브에이전트와 도구 호출 전반에 걸쳐 사고하고 행동할 여유가 있도록 큰 최대 출력 토큰 예산을 설정하세요. 64k 토큰에서 시작하여 조정하세요. -
고해상도가 불필요하면 이미지 다운샘플링: Claude Opus 4.7 이상 모델은 최대 2576px / 3.75MP의 이미지를 지원합니다. 고해상도 이미지는 더 많은 토큰을 사용합니다. 추가 이미지 충실도가 불필요하다면 토큰 사용량 증가를 피하기 위해 Claude에 전송하기 전에 이미지를 다운샘플링하세요. 이미지와 비전을 참조하세요.
-
자동 폴백 고려: Claude Opus 5는 사이버보안 안전 분류기와 함께 제공되며, 사이버 카테고리 거부는 Claude Opus 4.8로 폴백할 수 있습니다. 거부된 요청을 다른 모델에서 자동으로 다시 실행하려면
"default"모드의fallbacks파라미터(fallbacks: "default")를 고려하세요. 이는 수동으로 관리하는 모델 목록 대신 거부 카테고리에 따라 권장 폴백 모델을 선택합니다. 서버 측 폴백은 베타이며,"default"모드에는server-side-fallback-2026-07-01베타 헤더가 필요합니다. 거부와 폴백을 참조하세요. -
더 짧은 프롬프트 캐싱: Claude Opus 5에서 캐시 가능한 최소 프롬프트 길이는 512 토큰으로, 이전 Opus 모델보다 낮습니다. 캐시하기에 너무 짧았던 프롬프트도 이제 코드 변경 없이 캐시 항목을 생성할 수 있습니다. 모델별 최소값은 프롬프트 캐싱을 참조하세요.
-
대화 중 도구 변경 (베타): 이전 턴의 프롬프트 캐싱 히트를 무효화하지 않고 대화 턴 사이에 도구를 추가하거나 제거할 수 있습니다. 베타 헤더
mid-conversation-tool-changes-2026-07-01을 전송하세요. 이는 작업이 진행됨에 따라 도구를 점진적으로 노출하거나 종료하는 에이전트 워크로드에 유용합니다. 이 기능이 없으면 변경된 도구 목록이 캐시된 접두사를 무효화합니다. -
이어진 검증 지침 제거 및 범위 제한: Claude Opus 5는 지시받지 않아도 자체 작업을 검증하므로, 이전 모델에 맞춰 조정된 프롬프트에서 이어진 명시적 검증 또는 자체 점검 지침을 제거하세요. 남겨두면 과도한 검증이 발생합니다. 좁은 작업의 경우 작업 범위를 명시적으로 제한하세요. 작업 범위와 과도한 검증을 참조하세요.
마이그레이션 체크리스트
- 모델 이름을
claude-opus-4-6에서claude-opus-5로 업데이트하세요(또는 별칭 업데이트). - 요청 페이로드에서
temperature,top_p및top_k를 제거하세요. thinking: {type: "enabled", budget_tokens: N}을thinking: {type: "adaptive"}와 effort 파라미터로 교체하거나thinking필드를 완전히 제거하세요. Claude Opus 5에서는 적응형 사고가 기본적으로 켜져 있습니다.thinking필드 없이 실행되던 워크로드를 검토하세요: Claude Opus 5에서는 사고와 함께 실행됩니다. 총 출력(사고와 응답 텍스트 합계)에 대한 엄격한 한도로 남아 있는max_tokens를 재검토하거나, 이전 동작을 유지하려면 efforthigh이하에서thinking: {type: "disabled"}를 전달하세요.content[0].text나 첫 번째 콘텐츠 블록이 텍스트라고 가정하는 스트림 핸들러와 같이 위치로 콘텐츠를 읽는 응답 파싱을 업데이트하세요: 사고가 켜져 있으면thinking블록이text블록보다 먼저 도착합니다. 대신type으로 콘텐츠 블록을 선택하세요.- 도구 사용 루프를 실행하는 경우, 도구 결과를 반환할 때
thinking블록을 완전하고 수정되지 않은 상태로 다시 전달하세요. 수정된 블록은 400 오류를 반환합니다. 사고 블록 보존하기를 참조하세요. - 사고를 비활성화하는 요청을 점검하세요: effort
xhigh또는max와 함께thinking: {type: "disabled"}를 사용하면 400 오류가 반환되며, 각 요청마다 적용됩니다. 사고를 다시 활성화하거나 effort를high이하로 낮추세요. - 모든 어시스턴트 메시지 프리필을 제거하세요.
- UI가 사고 내용을 표시하는 경우 사고 요약에 명시적으로 옵트인하세요.
- 업데이트된 토큰화 하에서 엔드투엔드 비용과 지연 시간을 다시 벤치마크하세요. 사고 토큰은 출력 토큰으로 청구되므로 사고 없이 실행되던 워크로드도 요청당 더 많은 출력 토큰을 생성할 수 있습니다.
- 업데이트된 토큰화를 고려하여
max_tokens를 다시 조정하세요. - 클라이언트 측 토큰 수 추정을 다시 테스트하세요.
- 애플리케이션이 이미지를 전송하는 경우 고해상도 이미지 지원에 맞춰 예산을 재조정하세요(전체 해상도 이미지당 최대 약 3배 더 많은 이미지 토큰). 추가 충실도가 필요하지 않다면 전송 전에 다운샘플링하세요.
- 모델의 포인팅 또는 바운딩 박스 좌표를 사용하는 경우 스케일 팩터 변환을 제거하세요. Claude Opus 4.7 이상 모델에서 좌표는 실제 이미지 픽셀과 1:1입니다.
- 동작 변경 사항(응답 길이, 문자주의, 어조, 진행 상황 업데이트, 서브에이전트, effort 보정, 도구 트리거, 사이버 안전장치, 고해상도 이미지 처리)에 대해 프롬프트를 검토하세요.
- 기존 길이 제어 프롬프트를 제거한 상태에서 응답 길이 기준을 다시 설정한 다음 명시적으로 조정하세요.
xhigh또는maxeffort를 사용하는 경우 시작점으로max_tokens를 최소 64k로 올리세요.- 에이전트 워크플로를 위해 작업 예산(베타) 및 대화 중 도구 변경(베타) 채택을 고려하세요.
stop_reason: "refusal"을 처리하고, 거부된 요청을 권장 폴백 모델에서 자동으로 다시 실행하기 위해fallbacks: "default"(베타)를 고려하세요.- 캐싱 최소값 근처의 프롬프트를 검토하세요: 512 토큰 이상의 프롬프트는 이제 Claude Opus 5에서 캐시 항목을 생성할 수 있습니다.
- 웹 페치를 사용하는 경우 대안을 계획하세요: Claude Opus 5에서는 사용할 수 없습니다.
- 조직에 Priority Tier 약정이 있는 경우, Priority Tier는 Claude Opus 5에서 지원되지 않는다는 점에 유의하세요.
- 이전 모델에 맞춰 조정된 프롬프트에서 이어진 검증 및 자체 점검 지침을 제거하세요. Claude Opus 5에서 과도한 검증을 유발합니다.
- 제품이 합법적인 보안 작업을 수행하는 경우 사이버 콘텐츠에 대한 낮은 제한에 접근하기 위해 Cyber Verification Program에 신청하세요.
Claude Opus 4.5 이하에서 마이그레이션
Claude Opus 4.5, Opus 4.1 또는 이전 모델에서 Claude Opus 5로 직접 마이그레이션하는 경우, 이 섹션 앞부분의 모든 변경 사항과 함께 Opus 4.5와 Opus 4.7 사이에 적용된 다음 누적 변경 사항을 적용하세요. Opus 4.6에서 마이그레이션하는 경우 이 섹션 앞부분의 변경 사항만 있으면 됩니다.
모델 이름 업데이트
# Opus 마이그레이션
model = "claude-opus-4-5" # Before
model = "claude-opus-5" # After호환성이 깨지는 변경 사항
-
프리필 제거는 Claude Opus 4.6에서 마이그레이션하기 위한 호환성이 깨지는 변경 사항에서 다룹니다.
-
도구 파라미터 인용: Claude Opus 4.6 이상 모델은 도구 호출 인수에서 약간 다른 JSON 문자열 이스케이프를 생성할 수 있습니다(예: 유니코드 이스케이프 또는 슬래시 이스케이프의 다른 처리). 도구 호출
input을 JSON 파서를 사용하지 않고 원시 문자열로 파싱하는 경우 파싱 로직을 확인하세요. 표준 JSON 파서(json.loads()또는JSON.parse()등)는 이러한 차이를 자동으로 처리합니다.
권장 변경 사항
이러한 변경 사항은 Claude Opus 4.7 이상 모델에서의 경험을 개선합니다. **(Opus 4.7에서 필수)**로 표시된 항목은 Opus 4.6 출시 당시에는 선택적 권장 사항이었지만 이제는 필수입니다. 나머지는 여전히 권장 사항입니다.
-
적응형 사고로 마이그레이션 (Opus 4.7에서 필수):
thinking: {type: "enabled", budget_tokens: N}은 Claude Opus 4.7 이상 모델에서 400 오류를 반환합니다.thinking: {type: "adaptive"}로 전환하고 effort 파라미터를 사용하여 사고 깊이를 제어하세요. Claude Opus 5에서thinking: {type: "adaptive"}는 기본적으로 적응형 사고로 실행되는thinking필드 생략과 동일합니다. 사고를 참조하세요.response = client.beta.messages.create( model="claude-opus-4-5", max_tokens=16000, thinking={"type": "enabled", "budget_tokens": 32000}, betas=["interleaved-thinking-2025-05-14"], messages=[{"role": "user", "content": "Your prompt here"}], )마이그레이션은
client.beta.messages.create에서client.messages.create로도 이동한다는 점에 유의하세요. 적응형 사고와 effort는 베타 SDK 네임스페이스나 베타 헤더가 필요하지 않습니다. -
effort 베타 헤더 제거: effort 파라미터는 베타 헤더가 필요하지 않습니다. 요청에서
betas=["effort-2025-11-24"]를 제거하세요. -
세분화된 도구 스트리밍 베타 헤더 제거: 세분화된 도구 스트리밍은 베타 헤더가 필요하지 않습니다. 요청에서
betas=["fine-grained-tool-streaming-2025-05-14"]를 제거하세요. -
인터리브 사고 베타 헤더 제거: 적응형 사고는 Claude Opus 4.7, Opus 4.6 및 Sonnet 4.6에서 인터리브 사고를 자동으로 활성화합니다. 요청에서
betas=["interleaved-thinking-2025-05-14"]를 제거하세요. 이 헤더는 수동 확장 사고를 사용하는 Sonnet 4.6에서 여전히 작동하지만 수동 모드는 지원 중단되었습니다. -
output_config.format으로 마이그레이션: 구조화된 출력을 사용하는 경우
output_format={...}을output_config={"format": {...}}으로 업데이트하세요. API는 여전히 지원 중단된output_format파라미터를 허용하지만 향후 모델 릴리스에서 제거될 예정입니다. Python SDK(v1.0 이상)는client.beta.messages.create()또는count_tokens()에서output_format={...}을 허용하지 않습니다.parse()및stream()헬퍼의output_format=Model인수는 변경되지 않았습니다.
Claude 4.1 이하에서 마이그레이션
Opus 4.1 또는 이전 모델에서 Claude Opus 5로 직접 마이그레이션하는 경우, 이 섹션 앞부분의 모든 변경 사항과 함께 이 하위 섹션의 추가 변경 사항을 적용하세요.
# Opus 4.1에서
model = "claude-opus-4-1-20250805" # Before
model = "claude-opus-5" # After
# Sonnet 3.7에서
model = "claude-3-7-sonnet-20250219" # Before
model = "claude-opus-5" # After추가 호환성이 깨지는 변경 사항
-
샘플링 파라미터 제거
Claude Opus 4.7부터
temperature,top_p또는top_k를 기본값이 아닌 값으로 설정하면 400 오류가 반환됩니다. Python SDK(v1.0 이상)는 이를 정의하지 않으며, 전달하면TypeError가 발생합니다. 가장 안전한 마이그레이션 경로는 요청에서 이러한 파라미터를 완전히 생략하고 프롬프팅을 사용하여 모델의 동작을 유도하는 것입니다. 결정성을 위해temperature = 0을 사용하고 있었다면, 동일한 출력을 보장한 적이 없다는 점에 유의하세요.# 변경 전 - Claude 4+ 모델에서는 오류가 발생합니다 response = client.messages.create( model="claude-3-7-sonnet-20250219", temperature=0.7, top_p=0.9, # Non-default sampling params return 400 on Opus 4.7 # ... ) # 변경 후 response = client.messages.create( model="claude-opus-5", # ... ) -
도구 버전 업데이트
최신 도구 버전으로 업데이트하세요.
undo_edit명령을 사용하는 모든 코드를 제거하세요.# 변경 전 tools = [{"type": "text_editor_20250124", "name": "str_replace_editor"}] # 변경 후 tools = [{"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"}]- 텍스트 편집기:
text_editor_20250728및str_replace_based_edit_tool을 사용하세요. 자세한 내용은 텍스트 편집기 도구 문서를 참조하세요. - 코드 실행:
code_execution_20260521로 업그레이드하세요. 마이그레이션 지침은 코드 실행 도구 문서를 참조하세요.
- 텍스트 편집기:
-
refusal중지 사유 처리refusal중지 사유를 처리하도록 애플리케이션을 업데이트하세요:response = client.messages.create(...) if response.stop_reason == "refusal": # 거부를 적절히 처리합니다 pass -
model_context_window_exceeded중지 사유 처리Claude 4.5+ 모델은 요청된
max_tokens한도가 아니라 컨텍스트 윈도우 한도에 도달하여 생성이 중지될 때model_context_window_exceeded중지 사유를 반환합니다. 이 새로운 중지 사유를 처리하도록 애플리케이션을 업데이트하세요:response = client.messages.create(...) if response.stop_reason == "model_context_window_exceeded": # 컨텍스트 윈도우 한도를 적절히 처리합니다 pass -
도구 파라미터 처리 확인 (후행 줄바꿈)
Claude 4.5+ 모델은 이전에 제거되던 도구 호출 문자열 파라미터의 후행 줄바꿈을 보존합니다. 도구가 도구 호출 파라미터에 대한 정확한 문자열 일치에 의존하는 경우 로직이 후행 줄바꿈을 올바르게 처리하는지 확인하세요.
-
동작 변경 사항에 맞춰 프롬프트 업데이트
Claude 4+ 모델은 더 간결하고 직접적인 소통 스타일을 가지며 명시적인 지시가 필요합니다. 최적화 지침은 프롬프팅 모범 사례를 검토하세요.
추가 권장 변경 사항
- 레거시 베타 헤더 제거:
token-efficient-tools-2025-02-19및output-128k-2025-02-19를 제거하세요. 모든 Claude 4+ 모델에는 토큰 효율적인 도구 사용이 내장되어 있으며 이러한 헤더는 효과가 없습니다.
마이그레이션 체크리스트 (Claude Opus 4.5 또는 이전 버전에서)
- 모델 ID를
claude-opus-5로 업데이트하세요 - Claude Opus 4.6에서 마이그레이션할 때의 호환성이 깨지는 변경 사항을 모두 적용하세요 (확장 사고 제거, 사고 기본 활성화, 사고 비활성화 시 effort 상한, 샘플링 파라미터 제거, 사고 표시 기본 생략, 업데이트된 토큰화)
- 호환성이 깨지는 변경: 어시스턴트 메시지 프리필을 제거하세요 (400 오류 반환). 대신 구조화된 출력 또는
output_config.format을 사용하세요 - Opus 4.7에서 호환성이 깨지는 변경:
thinking: {type: "enabled", budget_tokens: N}을thinking: {type: "adaptive"}와 effort 파라미터로 교체하세요 (Opus 4.7에서 400 반환) - 도구 호출 JSON 파싱이 표준 JSON 파서를 사용하는지 확인하세요
effort-2025-11-24베타 헤더를 제거하세요 (effort 파라미터에는 필요하지 않습니다)fine-grained-tool-streaming-2025-05-14베타 헤더를 제거하세요interleaved-thinking-2025-05-14베타 헤더를 제거하세요 (적응형 사고는 인터리브 사고를 자동으로 활성화합니다)output_format을output_config.format으로 마이그레이션하세요 (해당하는 경우)- Claude 4.1 또는 이전 버전에서 마이그레이션하는 경우:
temperature,top_p,top_k를 제거하세요 (기본값이 아닌 값은 Opus 4.7에서 400 반환) - Claude 4.1 또는 이전 버전에서 마이그레이션하는 경우: 도구 버전을 업데이트하세요 (
text_editor_20250728,code_execution_20260521) - Claude 4.1 또는 이전 버전에서 마이그레이션하는 경우:
refusal중지 사유를 처리하세요 - Claude 4.1 또는 이전 버전에서 마이그레이션하는 경우:
model_context_window_exceeded중지 사유를 처리하세요 - Claude 4.1 또는 이전 버전에서 마이그레이션하는 경우: 후행 줄바꿈에 대한 도구 문자열 파라미터 처리를 확인하세요
- Claude 4.1 또는 이전 버전에서 마이그레이션하는 경우: 레거시 베타 헤더를 제거하세요 (
token-efficient-tools-2025-02-19,output-128k-2025-02-19) - 프롬프팅 모범 사례에 따라 프롬프트를 검토하고 업데이트하세요
- 프로덕션 배포 전에 개발 환경에서 테스트하세요
Claude Sonnet 5에서 Claude Opus 5로 마이그레이션
Claude Opus 5와 Claude Sonnet 5는 동일한 API 표면을 공유합니다. 두 모델 모두 기본적으로 adaptive thinking(적응형 사고)이 활성화된 상태로 실행되며, 두 모델 모두 Claude API와 Claude Code에서 effort 파라미터의 기본값이 high이고, 두 모델 모두 기본적으로 128k 최대 출력 토큰과 함께 1M 토큰 컨텍스트 윈도우를 제공하며, 두 모델 모두 Priority Tier를 지원하지 않습니다. 수동 확장 사고와 기본값이 아닌 샘플링 파라미터는 두 모델 모두에서 400 오류를 반환하며, 어시스턴트 프리필도 마찬가지입니다.
모델 이름 업데이트
model = "claude-sonnet-5" # Before
model = "claude-opus-5" # After변경된 사항
-
가격: Claude Opus 5의 가격은 입력 토큰 백만 개당 $5 USD, 출력 토큰 백만 개당 $25 USD입니다. Claude Sonnet 5의 가격은 입력/출력 토큰 백만 개당 $2/$10 USD입니다. 전체 가격은 Claude 가격을 참조하세요.
-
사고 비활성화는
higheffort로 제한됩니다: Claude Sonnet 5에서는thinking: {type: "disabled"}가 모든 effort 수준에서 허용됩니다. Claude Opus 5에서는 effort 수준이high이하인 경우에만 허용됩니다.thinking: {type: "disabled"}와 effortxhigh또는max를 결합한 요청은 400 오류를 반환하며, 이는 각 요청마다 적용됩니다. 마이그레이션하기 전에 사고를 비활성화하는 요청을 점검하세요. -
대화 중간 시스템 메시지: Claude Opus 5는
messages배열에서 사용자 턴 직후에role: "system"메시지를 허용합니다 (배치 규칙 적용). 이 기능은 Claude Sonnet 5에서는 사용할 수 없습니다. 지침을 업데이트하기 위해 전체 메시지 기록을 다시 구성하는 코드 경로를 유지하고 있다면, 이를 단순화하고 이전 턴에 대한 프롬프트 캐시 히트를 보존할 수 있습니다. -
웹 페치를 사용할 수 없습니다: 웹 페치 도구는 Claude Sonnet 5에서는 사용할 수 있지만 Claude Opus 5에서는 사용할 수 없습니다.
마이그레이션 체크리스트
- 모델 이름을
claude-sonnet-5에서claude-opus-5로 업데이트하세요. - 사고를 비활성화하는 요청을 점검하세요: effort
xhigh또는max와 함께thinking: {type: "disabled"}를 사용하면 Claude Opus 5에서 400 오류를 반환합니다. 사고를 다시 활성화하거나 effort를high이하로 낮추세요. - 웹 페치를 사용하는 경우 대안을 계획하세요: Claude Opus 5에서는 사용할 수 없습니다.
- Claude Sonnet 5를 기준으로 측정한 카운트를 재사용하지 말고 Claude Opus 5를 기준으로 토큰 카운팅을 다시 실행하세요. 또한 자체 워크로드에서 비용과 지연 시간의 기준선을 다시 설정하세요. 토큰당 가격이 다릅니다.
Was this page helpful?