중요 참고 사항: 확장 사고는 메시지 사전 채우기를 비롯한 일부 다른 기능과 호환되지 않으며, temperature 사용 방식에도 제약을 둡니다. 전체 제약 목록은 여기에서 확인하세요: https://platform.claude.com/docs/en/build-with-claude/thinking#limits-and-feature-compatibility(새 탭에서 열림)
확장 사고는 Claude가 최종 응답을 생성하기 전에 복잡한 문제를 해결할 시간을 주는 고급 추론 기능입니다. Claude의 "연습장"이라고 생각하면 됩니다 - 답변에 이르는 추론 과정을 볼 수 있어 투명성에 도움이 되며, 종종 더 나은 품질의 응답으로 이어집니다.
확장 사고의 작동 방식
확장 사고가 활성화되면 Claude의 응답은 단순한 텍스트 블록에서 두 부분으로 구성된 구조화된 응답으로 바뀝니다:

사고 기능이 활성화되면 추론 과정과 최종 답변을 모두 얻을 수 있습니다:

주요 이점은 다음과 같습니다:
- 복잡한 작업에 대한 더 나은 추론 능력
- 어려운 문제에 대한 정확도 향상
- Claude의 사고 과정에 대한 투명성
하지만 중요한 트레이드오프도 있습니다:
- 더 높은 비용(사고 토큰에 대한 비용 지불)
- 증가된 지연 시간(사고에는 시간이 걸림)
- 코드에서 더 복잡해지는 응답 처리
확장 사고를 사용해야 할 때
결정 방법은 간단합니다: 프롬프트 평가를 활용하세요. 먼저 사고 기능 없이 프롬프트를 실행해 보고, 이미 프롬프트를 최적화했는데도 정확도가 요구 사항을 충족하지 못한다면 그때 확장 사고 활성화를 고려하세요. 이는 표준 프롬프팅만으로는 충분하지 않을 때 사용하는 도구입니다.
응답 구조와 보안
확장 사고 응답에는 보안을 위한 특별한 서명 시스템이 포함되어 있습니다:

서명은 사고 텍스트를 수정하지 않았음을 보장하는 암호화 토큰입니다. 이는 개발자가 Claude의 추론 과정을 조작하여 모델을 안전하지 않은 방향으로 이끌 가능성을 방지합니다.
편집된 사고(Redacted Thinking)
때로는 읽을 수 있는 추론 텍스트 대신 편집된 사고 블록을 받게 됩니다:

이는 Claude의 사고 과정이 내부 안전 시스템에 의해 플래그가 지정될 때 발생합니다. 편집된 콘텐츠에는 실제 사고 내용이 암호화된 형태로 포함되어 있어, 향후 대화에서 컨텍스트를 잃지 않고 전체 메시지를 Claude에게 다시 전달할 수 있습니다.
구현
코드에서 확장 사고를 활성화하려면 채팅 함수에 두 개의 매개변수를 추가해야 합니다:
def chat(
messages,
system=None,
temperature=1.0,
stop_sequences=[],
tools=None,
thinking=False,
thinking_budget=1024
):사고 예산(요청에서의 budget_tokens)은 Claude가 추론에 사용할 수 있는 최대 토큰 수를 설정합니다. budget_tokens의 최솟값은 1024이며, max_tokens 매개변수는 budget_tokens보다 커야 합니다.
API 요청에 thinking 매개변수를 추가하세요 — type이 "enabled"로 설정되고 budget_tokens 값을 가진 객체입니다 — 그리고 max_tokens를 budget_tokens보다 크도록 높이세요:
if thinking:
params["max_tokens"] = thinking_budget + 1000
params["thinking"] = {
"type": "enabled",
"budget_tokens": thinking_budget
}그런 다음 사고 기능을 활성화한 상태로 채팅 함수를 호출하세요:
chat(messages, thinking=True)편집된 응답 테스트하기
테스트 목적으로, 특별한 트리거 문자열을 전송하여 Claude가 편집된 사고 블록을 반환하도록 강제할 수 있습니다. 이는 애플리케이션이 충돌 없이 편집된 응답을 원활하게 처리하는지 확인하는 데 도움이 됩니다.
확장 사고는 Claude가 복잡한 추론 작업을 처리해야 할 때 강력한 기능이지만, 비용과 지연 시간에 미치는 영향을 고려하여 신중하게 사용하세요. 표준 프롬프팅으로 시작하여 철저히 최적화한 다음, 추가적인 추론 능력이 필요할 때 사고 기능을 추가하세요.