이 가이드는 Messages API 코드 마이그레이션을 다룹니다. Claude Managed Agents를 사용하는 경우 모델 버전 간 마이그레이션을 참조하세요. Managed Agents 런타임은 여기서 설명하는 대부분의 요청 형태 변경을 처리합니다.
Claude Opus 4.6은 Claude 4.5의 거의 완벽한 대체 모델이지만 주의해야 할 몇 가지 주요 변경 사항이 있습니다. 새로운 기능의 전체 목록은 Claude 4.6의 새로운 기능을 참조하세요.
# Opus 마이그레이션
model = "claude-opus-4-5" # 이전
model = "claude-opus-4-6" # 이후Prefill 제거: Claude 4.6 모델에서 어시스턴트 메시지를 미리 채우면 400 오류가 반환됩니다. 대신 구조화된 출력, 시스템 프롬프트 지시사항 또는 output_config.format을 사용하세요.
Was this page helpful?
도구 매개변수 인용: Claude 4.6 모델은 도구 호출 인수에서 약간 다른 JSON 문자열 이스케이프를 생성할 수 있습니다(예: 유니코드 이스케이프 또는 슬래시 이스케이프의 다른 처리). 도구 호출 input을 JSON 파서를 사용하지 않고 원시 문자열로 구문 분석하는 경우 구문 분석 논리를 확인하세요. 표준 JSON 파서(예: json.loads() 또는 JSON.parse())는 이러한 차이를 자동으로 처리합니다.
이는 필수 사항이 아니지만 경험을 개선합니다:
적응형 사고로 마이그레이션: thinking: {type: "enabled", budget_tokens: N}은 Claude 4.6 모델에서 더 이상 사용되지 않으며 향후 모델 릴리스에서 제거될 예정입니다. thinking: {type: "adaptive"}로 전환하고 effort 매개변수를 사용하여 사고 깊이를 제어하세요. 적응형 사고를 참조하세요.
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=[...],
)마이그레이션은 또한 client.beta.messages.create에서 client.messages.create로 이동합니다. 적응형 사고와 effort는 GA 기능이며 베타 SDK 네임스페이스나 베타 헤더가 필요하지 않습니다.
Effort 베타 헤더 제거: effort 매개변수는 이제 GA입니다. 요청에서 betas=["effort-2025-11-24"]를 제거하세요.
세분화된 도구 스트리밍 베타 헤더 제거: 세분화된 도구 스트리밍은 이제 GA입니다. 요청에서 betas=["fine-grained-tool-streaming-2025-05-14"]를 제거하세요.
인터리브된 사고 베타 헤더 제거: 적응형 사고는 Opus 4.6과 Sonnet 4.6 모두에서 인터리브된 사고를 자동으로 활성화합니다. 요청에서 betas=["interleaved-thinking-2025-05-14"]를 제거하세요. 헤더는 여전히 수동 확장 사고를 사용하는 Sonnet 4.6에서 작동하지만 수동 모드는 더 이상 사용되지 않습니다.
output_config.format으로 마이그레이션: 구조화된 출력을 사용하는 경우 output_format={...}을 output_config={"format": {...}}로 업데이트하세요. 이전 매개변수는 계속 작동하지만 더 이상 사용되지 않으며 향후 모델 릴리스에서 제거될 예정입니다.
Opus 4.1, Sonnet 4 또는 이전 모델에서 Claude 4.6으로 직접 마이그레이션하는 경우 위의 Claude 4.6 주요 변경 사항과 이 섹션의 추가 변경 사항을 적용하세요.
# Opus 4.1에서
model = "claude-opus-4-1-20250805" # 이전
model = "claude-opus-4-6" # 이후
# Sonnet 4에서
model = "claude-sonnet-4-20250514" # 이전
model = "claude-opus-4-6" # 이후
# Sonnet 3.7에서
model = "claude-3-7-sonnet-20250219" # 이전
model = "claude-opus-4-6" # 이후샘플링 매개변수 업데이트
이는 Claude 3.x 모델에서 마이그레이션할 때의 주요 변경 사항입니다.
temperature 또는 top_p만 사용하고 둘 다 사용하지 마세요:
# 이전 - Claude 4+ 모델에서 오류가 발생합니다
response = client.messages.create(
model="claude-3-7-sonnet-20250219",
temperature=0.7,
top_p=0.9, # 둘 다 사용할 수 없습니다
# ...
)
# 이후
response = client.messages.create(
model="claude-opus-4-6",
temperature=0.7, # temperature 또는 top_p를 사용하되 둘 다 사용하지 마세요
# ...
)도구 버전 업데이트
이는 Claude 3.x 모델에서 마이그레이션할 때의 주요 변경 사항입니다.
최신 도구 버전으로 업데이트하세요. undo_edit 명령을 사용하는 모든 코드를 제거하세요.
# 이전
tools = [{"type": "text_editor_20250124", "name": "str_replace_editor"}]
# 이후
tools = [{"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"}]refusal 중지 이유 처리
refusal 중지 이유를 처리하도록 애플리케이션을 업데이트하세요:
response = client.messages.create(...)
if response.stop_reason == "refusal":
# 거부를 적절히 처리합니다
passmodel_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-6으로 업데이트output_config.format 사용thinking: {type: "enabled", budget_tokens: N}에서 thinking: {type: "adaptive"}로 마이그레이션하고 effort 매개변수 사용(budget_tokens는 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정)effort-2025-11-24 베타 헤더 제거(effort는 이제 GA)fine-grained-tool-streaming-2025-05-14 베타 헤더 제거interleaved-thinking-2025-05-14 베타 헤더 제거(적응형 사고는 인터리브된 사고를 자동으로 활성화)output_format을 output_config.format으로 마이그레이션(해당하는 경우)temperature 또는 top_p만 사용하도록 업데이트text_editor_20250728, code_execution_20250825)refusal 중지 이유 처리model_context_window_exceeded 중지 이유 처리token-efficient-tools-2025-02-19, output-128k-2025-02-19)Claude Sonnet 4.6은 강력한 지능과 빠른 성능을 결합하며 개선된 에이전트 검색 기능과 웹 검색 또는 웹 가져오기와 함께 사용할 때 무료 코드 실행을 제공합니다. 일상적인 코딩, 분석 및 콘텐츠 작업에 이상적입니다.
기능의 전체 개요는 모델 개요를 참조하세요.
Sonnet 4.6 가격은 입력 토큰당 $3/백만, 출력 토큰당 $15/백만입니다. 자세한 내용은 Claude 가격을 참조하세요.
모델 이름 업데이트:
# Sonnet 4.5에서
model = "claude-sonnet-4-5" # 이전
model = "claude-sonnet-4-6" # 이후
# Sonnet 4에서
model = "claude-sonnet-4-20250514" # 이전
model = "claude-sonnet-4-6" # 이후어시스턴트 메시지 미리 채우기는 더 이상 지원되지 않습니다
이는 Sonnet 4.5 이전 버전에서 마이그레이션할 때의 주요 변경 사항입니다.
어시스턴트 메시지를 미리 채우면 Sonnet 4.6에서 400 오류가 반환됩니다. 대신 구조화된 출력, 시스템 프롬프트 지시사항 또는 output_config.format을 사용하세요.
일반적인 prefill 사용 사례 및 마이그레이션:
출력 형식 제어(JSON/YAML 출력 강제): 구조화된 출력 또는 분류 작업을 위한 열거형 필드가 있는 도구를 사용하세요.
전문(preamble) 제거("Here is..." 구문 제거): 시스템 프롬프트에 직접 지시사항을 추가하세요: "전문 없이 직접 응답하세요. 'Here is...', 'Based on...' 등의 구문으로 시작하지 마세요."
나쁜 거부 방지: Claude는 이제 적절한 거부에 훨씬 더 능숙합니다. prefill 없이 사용자 메시지에서 명확한 프롬프팅으로 충분해야 합니다.
연속(continuations)(중단된 응답 재개): 연속을 사용자 메시지로 이동하세요: "이전 응답이 중단되었고 [previous_response]로 끝났습니다. 중단된 부분부터 계속하세요."
컨텍스트 하이드레이션 / 역할 일관성(긴 대화에서 컨텍스트 새로 고침): 이전에 prefilled-assistant 미리 알림이었던 것을 사용자 턴에 주입하세요.
도구 매개변수 JSON 이스케이프가 다를 수 있습니다
이는 Sonnet 4.5 이전 버전에서 마이그레이션할 때의 주요 변경 사항입니다.
도구 매개변수의 JSON 문자열 이스케이프는 이전 모델과 다를 수 있습니다. 표준 JSON 파서는 이를 자동으로 처리하지만 사용자 정의 문자열 기반 구문 분석은 업데이트가 필요할 수 있습니다.
샘플링 매개변수 업데이트
이는 Claude 3.x 모델에서 마이그레이션할 때의 주요 변경 사항입니다.
temperature 또는 top_p만 사용하고 둘 다 사용하지 마세요.
도구 버전 업데이트
이는 Claude 3.x 모델에서 마이그레이션할 때의 주요 변경 사항입니다.
최신 도구 버전(text_editor_20250728, code_execution_20250825)으로 업데이트하세요. undo_edit 명령을 사용하는 모든 코드를 제거하세요.
refusal 중지 이유 처리
refusal 중지 이유를 처리하도록 애플리케이션을 업데이트하세요.
동작 변경에 대한 프롬프트 업데이트
Claude 4 모델은 더 간결하고 직접적인 통신 스타일을 가집니다. 최적화 지침은 프롬프팅 모범 사례를 검토하세요.
fine-grained-tool-streaming-2025-05-14 베타 헤더 제거: 세분화된 도구 스트리밍은 이제 Sonnet 4.6에서 GA이며 더 이상 베타 헤더가 필요하지 않습니다.output_format을 output_config.format으로 마이그레이션: output_format 매개변수는 더 이상 사용되지 않습니다. 대신 output_config.format을 사용하세요.Sonnet 4.5에서 Sonnet 4.6으로 마이그레이션하는 것을 고려하세요. Sonnet 4.6은 동일한 가격대에서 더 높은 지능을 제공합니다.
Sonnet 4.6은 기본적으로 high의 노력 수준으로 설정되며, 이는 노력 매개변수가 없었던 Sonnet 4.5와 대조됩니다. Sonnet 4.5에서 Sonnet 4.6으로 마이그레이션할 때 노력 매개변수를 조정하는 것을 고려하세요. 명시적으로 설정하지 않으면 기본 노력 수준으로 인해 더 높은 지연 시간이 발생할 수 있습니다.
Sonnet 4.5에서 확장 사고를 사용하지 않는 경우 Sonnet 4.6에서도 계속 사용하지 않을 수 있습니다. 사용 사례에 적합한 수준으로 노력을 명시적으로 설정해야 합니다. 사고가 비활성화된 low 노력에서는 확장 사고가 없는 Sonnet 4.5에 비해 유사하거나 더 나은 성능을 기대할 수 있습니다.
curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-6",
"max_tokens": 8192,
"output_config": {
"effort": "low"
},
"messages": [
{
"role": "user",
"content": "Your prompt here"
}
]
}'Sonnet 4.5에서 budget_tokens를 사용하여 확장 사고를 사용하는 경우, Sonnet 4.6에서도 여전히 작동하지만 더 이상 사용되지 않습니다. 적응형 사고로 마이그레이션하고 노력 매개변수를 사용하세요.
적응형 사고는 Sonnet 4.6에서 budget_tokens의 권장 대체 방법입니다. 다음 워크로드 패턴에 특히 적합합니다:
high 노력으로 시작하세요. 지연 시간이나 토큰 사용량이 문제가 되면 medium으로 축소하세요.적응형 사고를 사용할 때 작업에서 medium 및 high 노력을 평가하세요. 올바른 수준은 워크로드의 품질, 지연 시간 및 토큰 사용량 간의 트레이드오프에 따라 달라집니다.
curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-6",
"max_tokens": 64000,
"thinking": {
"type": "adaptive"
},
"output_config": {
"effort": "medium"
},
"messages": [
{
"role": "user",
"content": "Your prompt here"
}
]
}'적응형 사고에서 일관되지 않은 동작이나 품질 저하가 보이면 노력 설정을 낮추거나 먼저 max_tokens를 하드 제한으로 사용해 보세요. budget_tokens를 사용한 확장 사고는 Sonnet 4.6에서 여전히 작동하지만 더 이상 사용되지 않으며 더 이상 권장되지 않습니다.
마이그레이션 중 budget_tokens를 임시로 유지해야 하는 경우, 약 16k 토큰의 예산은 토큰 사용량이 폭발적으로 증가할 위험 없이 더 어려운 문제에 대한 여유를 제공합니다. 이 구성은 더 이상 사용되지 않으며 향후 모델 릴리스에서 제거될 예정입니다.
에이전트 코딩, 프론트엔드 설계, 도구 중심 워크플로우 및 복잡한 엔터프라이즈 워크플로우의 경우 medium 노력으로 시작하세요. 지연 시간이 너무 높다면 노력을 low로 줄이는 것을 고려하세요. 더 높은 지능이 필요하면 노력을 high로 증가시키거나 Opus 4.6으로 마이그레이션하는 것을 고려하세요.
curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "anthropic-beta: interleaved-thinking-2025-05-14" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-6",
"max_tokens": 16384,
"thinking": {
"type": "enabled",
"budget_tokens": 16384
},
"output_config": {
"effort": "medium"
},
"messages": [
{
"role": "user",
"content": "Your prompt here"
}
]
}'채팅, 콘텐츠 생성, 검색, 분류 및 기타 비코딩 작업의 경우 확장 사고를 사용하여 low 노력으로 시작하세요. 더 깊이 있는 내용이 필요하면 노력을 medium으로 증가시키세요.
curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "anthropic-beta: interleaved-thinking-2025-05-14" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-6",
"max_tokens": 8192,
"thinking": {
"type": "enabled",
"budget_tokens": 16384
},
"output_config": {
"effort": "low"
},
"messages": [
{
"role": "user",
"content": "Your prompt here"
}
]
}'claude-sonnet-4-6으로 업데이트output_config.format 사용text_editor_20250728, code_execution_20250825)으로 업데이트; 레거시 버전은 지원되지 않음 (3.x에서 마이그레이션하는 경우)undo_edit 명령을 사용하는 모든 코드 제거 (해당하는 경우)temperature 또는 top_p 중 하나만 사용하도록 업데이트, 둘 다 사용하지 않음 (3.x에서 마이그레이션하는 경우)refusal 중지 이유 처리fine-grained-tool-streaming-2025-05-14 베타 헤더 제거 (이제 GA)output_format을 output_config.format으로 마이그레이션thinking: {type: "enabled", budget_tokens: N}에서 thinking: {type: "adaptive"}로 마이그레이션하고 노력 매개변수 사용 (budget_tokens는 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정)Claude Sonnet 4.5는 강력한 지능과 빠른 성능을 결합하여 일상적인 코딩, 분석 및 콘텐츠 작업에 이상적입니다.
기능에 대한 완전한 개요는 모델 개요를 참조하세요.
Sonnet 4.5 가격은 입력 토큰 100만 개당 $3, 출력 토큰 100만 개당 $15입니다. 자세한 내용은 Claude 가격을 참조하세요.
모델 이름 업데이트:
# Sonnet 4에서
model = "claude-sonnet-4-20250514" # 이전
model = "claude-sonnet-4-5-20250929" # 이후
# Sonnet 3.7에서
model = "claude-3-7-sonnet-20250219" # 이전
model = "claude-sonnet-4-5-20250929" # 이후이러한 주요 변경 사항은 Claude 3.x Sonnet 모델에서 마이그레이션할 때 적용됩니다.
샘플링 매개변수 업데이트
이는 Claude 3.x 모델에서 마이그레이션할 때의 주요 변경 사항입니다.
temperature 또는 top_p 중 하나만 사용하고 둘 다 사용하지 마세요.
도구 버전 업데이트
이는 Claude 3.x 모델에서 마이그레이션할 때의 주요 변경 사항입니다.
최신 도구 버전(text_editor_20250728, code_execution_20250825)으로 업데이트하세요. undo_edit 명령을 사용하는 모든 코드를 제거하세요.
refusal 중지 이유 처리
애플리케이션을 업데이트하여 refusal 중지 이유를 처리하세요.
동작 변경에 대한 프롬프트 업데이트
Claude 4 모델은 더 간결하고 직접적인 통신 스타일을 가지고 있습니다. 최적화 지침은 프롬프팅 모범 사례를 검토하세요.
claude-sonnet-4-5-20250929로 업데이트text_editor_20250728, code_execution_20250825)으로 업데이트; 레거시 버전은 지원되지 않음 (3.x에서 마이그레이션하는 경우)undo_edit 명령을 사용하는 모든 코드 제거 (해당하는 경우)temperature 또는 top_p 중 하나만 사용하도록 업데이트, 둘 다 사용하지 않음 (3.x에서 마이그레이션하는 경우)refusal 중지 이유 처리Claude Haiku 4.5는 가장 빠르고 가장 지능적인 Haiku 모델로 거의 최고 수준의 성능을 제공하며 대화형 애플리케이션 및 대량 처리를 위한 프리미엄 모델 품질을 제공합니다.
기능에 대한 완전한 개요는 모델 개요를 참조하세요.
Haiku 4.5 가격은 입력 토큰 100만 개당 $1, 출력 토큰 100만 개당 $5입니다. 자세한 내용은 Claude 가격을 참조하세요.
모델 이름 업데이트:
# Haiku 3.5에서
model = "claude-3-5-haiku-20241022" # 이전
model = "claude-haiku-4-5-20251001" # 이후
# Haiku 3에서
model = "claude-3-haiku-20240307" # 이전
model = "claude-haiku-4-5-20251001" # 이후새로운 속도 제한 검토: Haiku 4.5는 Haiku 3.5 및 Haiku 3과 별도의 속도 제한이 있습니다. 자세한 내용은 속도 제한 문서를 참조하세요.
코딩 및 추론 작업의 성능을 크게 향상시키려면 thinking: {type: "enabled", budget_tokens: N}을 사용하여 확장 사고를 활성화하는 것을 고려하세요.
새로운 기능 탐색: 컨텍스트 인식, 증가된 출력 용량(64k 토큰), 더 높은 지능 및 향상된 속도에 대한 자세한 내용은 모델 개요를 참조하세요.
이러한 주요 변경 사항은 Claude 3.x Haiku 모델에서 마이그레이션할 때 적용됩니다.
샘플링 매개변수 업데이트
이는 Claude 3.x 모델에서 마이그레이션할 때의 주요 변경 사항입니다.
temperature 또는 top_p 중 하나만 사용하고 둘 다 사용하지 마세요.
도구 버전 업데이트
이는 Claude 3.x 모델에서 마이그레이션할 때의 주요 변경 사항입니다.
최신 도구 버전(text_editor_20250728, code_execution_20250825)으로 업데이트하세요. undo_edit 명령을 사용하는 모든 코드를 제거하세요.
refusal 중지 이유 처리
애플리케이션을 업데이트하여 refusal 중지 이유를 처리하세요.
동작 변경에 대한 프롬프트 업데이트
Claude 4 모델은 더 간결하고 직접적인 통신 스타일을 가지고 있습니다. 최적화 지침은 프롬프팅 모범 사례를 검토하세요.
claude-haiku-4-5-20251001로 업데이트text_editor_20250728, code_execution_20250825)으로 업데이트; 레거시 버전은 지원되지 않음undo_edit 명령을 사용하는 모든 코드 제거 (해당하는 경우)temperature 또는 top_p 중 하나만 사용하도록 업데이트, 둘 다 사용하지 않음refusal 중지 이유 처리text_editor_20250728str_replace_based_edit_toolcode_execution_20250825로 업그레이드하세요. 마이그레이션 지시사항은 코드 실행 도구 설명서를 참조하세요.