Claude 확장 사고
이 페이지에서는 Claude의 확장 사고를 켜고 사고 내용을 읽는 방법을 설명합니다. 모델 ID와 엔드포인트 주소는 Claude 시리즈 개요를 참고하십시오.
요점네이티브 API에서는 thinking을, OpenAI 호환 API에서는 reasoning 객체를 전달합니다. 사고를 켤 때는 temperature를 설정하지 마십시오.
확장 사고는 모델이 답변하기 전에 먼저 추론하도록 하는 기능으로, 수학, 코드, 여러 단계의 분석에 적합합니다. 실측 결과 다음 모델은 기본 공급자에서 사고 내용을 안정적으로 반환합니다. Opus 5.5, Opus 5, Opus 4.8, Opus 4.6, Sonnet 4.6, Haiku 5.5, Haiku 4.5, Fable 5.
Anthropic 네이티브 API
두 가지 모드가 있습니다.
Python
claude_thinking.py
import os
import anthropic
client = anthropic.Anthropic(base_url="https://api.ofox.io/anthropic", api_key=os.environ["OFOX_API_KEY"])
message = client.messages.create(
model="anthropic/claude-opus-5.5",
max_tokens=4000,
thinking={"type": "enabled", "budget_tokens": 2000},
messages=[{"role": "user", "content": "라켓과 공을 합쳐 1.10달러이고, 라켓이 공보다 1달러 비쌉니다. 공은 얼마입니까?"}],
)
for block in message.content:
if block.type == "thinking":
print("[사고]", block.thinking)
elif block.type == "text":
print("[답변]", block.text)- 응답의
content에는thinking블록이 먼저 나오고 그다음text블록이 나옵니다.thinking블록에는signature가 포함되며, 여러 차례의 도구 호출에서는 이를 그대로 다시 전달해야 합니다. - 스트리밍 출력에서는 사고 내용이
thinking_delta이벤트로 반환되고, 이어서signature_delta이벤트가 한 번 온 뒤text_delta가 시작됩니다. - 사고를 켤 때는
temperature를 설정하지 말고(또는 1로 설정),top_k도 설정하지 마십시오. - 사고에 소비된 토큰은
output_tokens에 포함되며 출력 단가로 과금됩니다.
OpenAI 호환 API
reasoning 객체로 켜며, max_tokens가 사고 예산입니다.
claude_thinking_openai.py
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.chat.completions.create(
model="anthropic/claude-sonnet-4.6",
max_tokens=4000,
extra_body={"reasoning": {"max_tokens": 2000}},
messages=[{"role": "user", "content": "라켓과 공을 합쳐 1.10달러이고, 라켓이 공보다 1달러 비쌉니다. 공은 얼마입니까?"}],
)
msg = resp.choices[0].message
details = getattr(msg, "reasoning_details", None) or []
print("[사고]", "".join(d.get("text", "") for d in details))
print("[답변]", msg.content)- 비스트리밍 응답에서는 사고 내용이
message.reasoning_details에 있으며, 각 항목의text를 순서대로 이어 붙이십시오. - 스트리밍 응답에서는 사고 내용이
delta.reasoning_content에 있습니다.
기타 오류는 자주 발생하는 오류를 참고하십시오.
마지막 업데이트