Claude Adaptive Thinking در برابر budget_tokens

Adaptive thinking در برابر budget_tokens در Claude 4.6 / 4.7 / 4.8: حالت thinking را روی adaptive تنظیم کنید، effort را دقیق تنظیم کنید، و اینکه چرا Opus 4.8 برای budget_tokens خطای 400 برمی‌گرداند.

به‌روزرسانی 2026-11-13

به کلید API نیاز دارید؟ ثبت‌نام ←نقاط پایانی و Base URL ←

در این صفحه

آخرین بازبینی: 2026-11-13 · 📄 بر اساس مستندات رسمی و qcode.cc/models (در این بازبینی ردیف به ردیف بررسی شد که هر مدل در ماتریس پشتیبانی زیر در QCode عرضه می‌شود یا نه؛ بقیه جدول پارامترها آخرین بار در 2026-10-15 بررسی شده است)

Adaptive Thinking حالت استدلالی است که با Claude 4.6 معرفی شد: خود مدل تصمیم می‌گیرد چه زمانی روی استدلال سرمایه‌گذاری کند و چه تعداد توکن خرج کند، بدون اینکه توسعه‌دهنده از پیش بودجه ثابتی تعیین کند. پارامتر effort کنترل درشت‌دانه‌ای بر عمق استدلال ارائه می‌دهد. این راهنما مصرف مرتبط API، ماتریس پشتیبانی مدل‌ها و توازن کیفیت در برابر هزینه را پوشش می‌دهد.

پارامترها از کجا می‌آیند: ردیف‌های زیر بر اساس مستندات رسمی Anthropic تا تاریخ 2026-10-15 است. مدل‌های 4.x که هنوز عرضه می‌شوند قبلاً روی QCode قابل فراخوانی آزمایش شده‌اند؛ مدل‌های نسل 4.5 و پیش‌تر دیگر در فهرست مدل‌های عرضه‌شده در QCode نیستند، و مدل‌های سری 5 هنوز مورد به مورد روی QCode تأیید نشده‌اند. برای انتخاب مدل سری 5 به انتخاب مدل مراجعه کنید.

تفاوت‌های کلیدی با Extended Thinking قدیمی

بُعد Extended Thinking قدیمی (4.5 و پیش‌تر) Adaptive Thinking (4.6 و بعد)
پارامتر فعال‌ساز thinking={"type": "enabled", "budget_tokens": N} thinking={"type": "adaptive"}
کنترل بودجه سقف ثابت توکن (budget_tokens باید کمتر از max_tokens باشد) مدل خودتنظیم است و به‌صورت اختیاری با effort تنظیم می‌شود
رفتار بین فراخوانی ابزارها به‌طور پیش‌فرض درهم‌آمیخته نمی‌شود (به هدر بتای interleaved-thinking-2025-05-14 نیاز دارد) به‌طور خودکار درهم‌آمیخته می‌شود (نیازی به هدر بتا نیست)
Opus 4.7 و بعد (شامل 4.8 و خانواده 5) ❌ خطای 400 (budget_tokens دیگر پشتیبانی نمی‌شود) ✅ تنها حالت پشتیبانی‌شده
Sonnet 4.6 / Opus 4.6 ⚠️ منسوخ (هنوز کار می‌کند اما توصیه نمی‌شود) ✅ توصیه‌شده

قاعده کوتاه: برای مدل‌های 4.6 و بعد از adaptive استفاده کنید؛ budget_tokens را فقط برای 4.5 و پیش‌تر به کار ببرید (آن مدل‌های قدیمی‌تر برای type: "adaptive" خطای 400 برمی‌گردانند).

ماتریس پشتیبانی مدل

مدل Adaptive thinking budget_tokens پارامتر effort
claude-opus-5-5 ✅ به‌طور پیش‌فرض فعال است و نمی‌توان آن را خاموش کرد (thinking: {"type": "disabled"} خطای 400 برمی‌گرداند) ❌ خطای 400 ✅ low / medium / high / xhigh / max، پیش‌فرض medium
claude-sonnet-5-5 ✅ به‌طور پیش‌فرض فعال است؛ thinking: {"type": "between_tools"} تفکر اولیه را خاموش می‌کند (فقط low / medium / high) ❌ خطای 400 ✅ low / medium / high / xhigh / max، پیش‌فرض API high
claude-haiku-5-5 ✅ به‌طور پیش‌فرض فعال است؛ thinking: {"type": "disabled"} آن را خاموش می‌کند (فقط effort زیاد یا کمتر) ❌ خطای 400 ✅ low / medium / high / xhigh / max، پیش‌فرض medium
claude-opus-5 ✅ به‌طور پیش‌فرض فعال است؛ disabled در effort زیاد یا کمتر کار می‌کند ❌ خطای 400 ✅ low / medium / high / xhigh / max، پیش‌فرض high
claude-sonnet-5 ✅ به‌طور پیش‌فرض فعال است؛ disabled کار می‌کند ❌ خطای 400 ✅ low / medium / high / xhigh / max، پیش‌فرض high
claude-opus-4-8 ✅ تنها راه فعال‌سازی (نبود فیلد thinking یعنی بدون تفکر) ❌ خطای 400 ✅ low / medium / high / xhigh / max
claude-opus-4-7 ✅ تنها راه فعال‌سازی ❌ خطای 400 ✅ low / medium / high / xhigh / max
claude-sonnet-4-6 ✅ توصیه‌شده ⚠️ هنوز کار می‌کند اما منسوخ است ✅ low / medium / high / max
claude-haiku-4-5-20251001 (دیگر در QCode عرضه نمی‌شود) ❌ type: "adaptive" خطای 400 برمی‌گرداند ✅ از این استفاده کنید ❌ پارامتر effort خطا می‌دهد
claude-sonnet-4-5 و پیش‌تر (دیگر در QCode عرضه نمی‌شود) ❌ پشتیبانی نمی‌شود ✅ از این استفاده کنید ❌

مدل‌های 4.x بالا که هنوز عرضه می‌شوند قبلاً روی QCode قابل فراخوانی آزمایش شده‌اند. دو ردیف 4.5 دیگر در QCode عرضه نمی‌شوند و فقط برای مرجع پارامترها نگه داشته شده‌اند؛ مدل‌های عرضه‌شده در qcode.cc/models فهرست شده‌اند. برای خانواده 5، رفتار پارامترها از مستندات رسمی پیروی می‌کند و نرخ و دسترس‌پذیری هر مدل در qcode.cc/models آمده است.

پارامتر effort: تنظیمی درشت برای عمق استدلال

effort شدت کلی تفکر تطبیقی را کنترل می‌کند (شامل توکن‌های تفکر، تعداد فراخوانی ابزار و جامعیت پاسخ). در یک درخواست به‌صورت output_config.effort نوشته می‌شود.

effort مناسب برای یادداشت‌ها
low پرسش و پاسخ ساده، زیرعامل‌ها، مسیرهای حساس به تأخیر ارزان‌ترین از نظر توکن؛ کارهای ساده ممکن است تفکر را کاملاً حذف کنند
medium کدنویسی روزمره، جست‌وجو در مستندات (بیشتر کارهای روزمره) پیش‌فرض برای Opus 5.5 و Haiku 5.5
high استدلال پیچیده، بازآرایی چندفایلی پیش‌فرض برای بیشتر مدل‌ها
xhigh گردش‌کارهای عاملی طولانی‌مدت (از Opus 4.7، Sonnet 5 و Haiku 5.5 در دسترس است) با سهولت بیشتر و عمیق‌تر از high فکر می‌کند
max حداکثر کیفیت، هزینه در اولویت دوم بدون محدودیت در طول تفکر

قاعده سرانگشتی: Opus 5.5 و Haiku 5.5 به‌طور پیش‌فرض medium هستند و Sonnet 5.5 در API به‌طور پیش‌فرض high است؛ Anthropic توصیه می‌کند پس از تغییر مدل، ارزیابی‌های خودتان را دوباره اجرا کنید و تنظیمات را منتقل نکنید. xhigh بهترین نسبت قیمت به عملکرد را برای حلقه‌های عاملی طولانی ارائه می‌دهد (مثلاً بازبینی کد چندمرحله‌ای، پژوهش عمیق)؛ max فقط زمانی ارزش دارد که صحت بسیار مهم‌تر از هزینه باشد. وقتی سطح را بالا می‌برید، max_tokens را هم بالا ببرید، چون توکن‌های تفکر در سقف خروجی حساب می‌شوند.

تغییر effort، کش prompt را بی‌اعتبار می‌کند: برای اینکه همچنان به کش برخورد کنید، پیکربندی تفکر و effort را در طول یک گفت‌وگو ثابت نگه دارید. برای تغییر آن در میانه گفت‌وگو، از تغییر رسمی effort به‌ازای هر پیام استفاده کنید (بتا، نیازمند هدر بتای mid-conversation-output-config-2026-07-01؛ پشتیبانی‌شده روی Opus 5.5، Sonnet 5.5، Haiku 5.5 و موارد دیگر).

نمونه‌های استفاده از API

Python (anthropic SDK)

import anthropic

client = anthropic.Anthropic(
    base_url="https://api.qcode.cc/api",
    api_key="cr_xxxxxxxx",
)

response = client.messages.create(
    model="claude-opus-5-5",
    max_tokens=16000,
    thinking={"type": "adaptive"},
    output_config={"effort": "high"},
    messages=[{"role": "user", "content": "Refactor the authentication logic of the user service module..."}],
)

for block in response.content:
    if block.type == "thinking":
        print(f"[Thinking] {block.thinking}")
    elif block.type == "text":
        print(f"[Answer] {block.text}")

TypeScript (@anthropic-ai/sdk)

import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({
  baseURL: "https://api.qcode.cc/api",
  apiKey: "cr_xxxxxxxx",
});

const response = await client.messages.create({
  model: "claude-opus-5-5",
  max_tokens: 16000,
  thinking: { type: "adaptive" },
  output_config: { effort: "high" },
  messages: [{ role: "user", content: "Refactor user service..." }],
});

Claude Code CLI

در Claude Code، effort را با /effort تنظیم کنید: بدون آرگومان یک لغزنده باز می‌کند، /effort high سطح را مستقیماً تنظیم می‌کند و /effort auto سطح ذخیره‌شده را پاک می‌کند. می‌توانید هنگام اجرا نیز --effort را بدهید یا متغیر محیطی CLAUDE_CODE_EFFORT_LEVEL را تنظیم کنید. سطح فعلی در هدر نشست، کنار نام مدل نمایش داده می‌شود. سطوح قابل انتخاب: low، medium، high، xhigh و max روی Opus 5.5 / Sonnet 5.5 / Haiku 5.5 / Opus 5 / Sonnet 5 / Opus 4.8 / Opus 4.7؛ low، medium، high و max روی Opus 4.6 و Sonnet 4.6.

پیش‌فرض‌های Claude Code (مستندات رسمی، به تاریخ 2026-10-15): medium روی Opus 5.5، Sonnet 5.5 و Haiku 5.5، xhigh روی Opus 4.7، و high روی سایر مدل‌هایی که از effort پشتیبانی می‌کنند. در Claude Code، تفکر روی این سه مدل 5.5 نمی‌تواند خاموش شود؛ برای تفکر کمتر، effort را پایین بیاورید.

نمایش محتوای تفکر

مدل‌های سری 5 (شامل Opus 5.5، Sonnet 5.5 و Haiku 5.5) به‌طور پیش‌فرض متن تفکر را نمایش نمی‌دهند (display به‌طور پیش‌فرض "omitted" است)؛ استدلال فقط درونی است و توکن‌های تفکر همچنان طبق معمول صورت‌حساب می‌شوند. برای نمایش رد تفکر در رابط کاربری خود:

thinking={"type": "adaptive", "display": "summarized"}

display: "summarized" به مدل می‌گوید خلاصه‌ای از تفکر تولید کند (بلوک‌های تفکر قابل‌مشاهده)؛ omitted فقط توکن‌های تفکر را می‌شمارد بدون آنکه متن قابل‌مشاهده‌ای تولید کند.

بودجه‌های وظیفه (بتا)

اگر یک حلقه عامل اجرا می‌کنید و می‌خواهید سقف کلی برای کل نوبت داشته باشید (شامل تفکر + ابزارها + خروجی نهایی)، از task_budget استفاده کنید. مستندات رسمی Opus 5.5، Sonnet 5.5، Haiku 5.5، Opus 5، Opus 4.8، Opus 4.7 و موارد دیگر را به‌عنوان پشتیبانی‌شده در بتا فهرست می‌کند؛ Sonnet 5 پشتیبانی نمی‌شود:

response = client.beta.messages.create(
    betas=["task-budgets-2026-03-13"],
    model="claude-opus-5-5",
    max_tokens=64000,
    thinking={"type": "adaptive"},
    output_config={
        "effort": "high",
        "task_budget": {"type": "tokens", "total": 128000},
    },
    messages=[...],
)

مدل شمارش معکوس بودجه باقی‌مانده را می‌بیند و خود را تنظیم می‌کند تا از عبور از سقف جلوگیری کند. حداقل total برابر 20,000 است؛ مقادیر کوچک‌تر خطای 400 برمی‌گردانند.

نکاتی برای رصد هزینه

وقتی تفکر تطبیقی فعال شود، توکن‌های ورودی و خروجی هر دو روند افزایشی پیدا می‌کنند؛ بر همین اساس پایش کنید:

print(response.usage)
# Watch: input_tokens, output_tokens, cache_read_input_tokens
# Adaptive thinking does not bill thinking tokens separately — they are billed as output tokens and roll into output_tokens

QCode به‌ازای هر توکن صورت‌حساب می‌کند؛ نرخ هر مدل در qcode.cc/models آمده است. درخواست‌ها به probe.qcode.cc گزارش می‌شوند، جایی که می‌توانید نسبت ورودی / خروجی / تفکر را برای هر درخواست ببینید.

پرسش‌های متداول

چگونه از budget_tokens به تفکر تطبیقی مهاجرت کنم؟

تبدیل خطی وجود ندارد. budget_tokens=8000 به سطح تلاش مشخصی نگاشت نمی‌شود. با effort: "medium" شروع کنید و بر اساس کیفیت پاسخ و مصرف توکن تنظیم کنید. اگر باید سقف سختی اعمال کنید، از task_budget استفاده کنید (به بالا مراجعه کنید).

درخواست من به Opus 4.7 / 4.8 / یک مدل سری 5 خطای 400 برمی‌گرداند که می‌گوید budget_tokens مجاز نیست

هر thinking={"type": "enabled", "budget_tokens": N} را با thinking={"type": "adaptive"} جایگزین کنید. Opus 4.7 و نسخه‌های بعدی دیگر از budget_tokens پشتیبانی نمی‌کنند (هر مقداری خطای 400 برمی‌گرداند).

آیا باید همچنان از budget_tokens در Sonnet 4.6 استفاده کنم؟

توصیه نمی‌شود. برای همه کدهای جدید از تفکر تطبیقی استفاده کنید. budget_tokens هنوز در 4.6 کار می‌کند اما در مسیر منسوخ‌شده قرار دارد.

می‌خواهم تفکر را خاموش کنم و Opus 5.5 خطای 400 برمی‌گرداند. حالا چه کنم؟

تفکر در Opus 5.5 قابل خاموش‌کردن نیست. برای اینکه کمتر فکر کند، سطح تلاش را پایین بیاورید (برای نمونه low). در Sonnet 5.5 از thinking: {"type": "between_tools"} و در Haiku 5.5 از thinking: {"type": "disabled"} استفاده کنید؛ هر دو فقط در سطح تلاش high یا پایین‌تر کار می‌کنند.

چگونه سطح تلاش را در Claude Code CLI تغییر دهم؟

از /effort استفاده کنید (به بالا مراجعه کنید) یا هنگام اجرا --effort را اضافه کنید؛ مقدار پیش‌فرض ماندگار تحت effortLevel یا modelSettings هر مدل در ~/.claude/settings.json قرار دارد.

گام‌های بعدی

با QCode شروع کنید

یک کلید API برای Claude Code، Codex و بیشتر — بر اساس توکن، قیمت هر مدل در qcode.cc/models

سازمانی ←