Расширенное мышление и усилие
Для сложных задач Claude может потратить дополнительные вычисления на обдумывание перед ответом — повышая точность в многошаговых рассуждениях, хитром коде и математике. Вы примерно управляете тем, сколько усилия тратить. Этот урок учит подбирать глубину под задачу, включать мышление через API и планировать его бюджет, не переплачивая.
- Объяснить компромисс: меньше мышления — быстрее и дешевле, больше мышления — лучше на сложных задачах
- Выбрать правильный уровень усилия (Низкое / Среднее / Высокое) для конкретной нагрузки
- Включить расширенное мышление в Messages API и прочитать блоки мышления и текста
- Правильно планировать бюджет токенов мышления, чтобы budget_tokens оставался ниже max_tokens
- Разумно применять усилие в агентах и в сочетании с промптингом цепочки рассуждений
Одна идея, лежащая в основе усилия
Мышление — это регулятор, а не выключатель. Представьте два крайних положения:
- Меньше мышления = быстрее, дешевле — годится для простых, чётко заданных задач.
- Больше мышления = лучше на действительно сложных задачах, при более высокой задержке/стоимости.
Вот подвох, на котором спотыкаются: дополнительное мышление ничего не даёт задаче, которая и так была лёгкой. Вы лишь платите задержкой и стоимостью. Мастерство в том, чтобы тратить глубину там, где она меняет ответ.
Новые модели предоставляют это в виде контроля усилия (и автоматически адаптируют глубину мышления); на них вы выбираете уровень, а не сырой бюджет токенов. Подбирайте уровень под задачу.
Шаг 1 — Выберите глубину
Прежде чем трогать код, спросите: насколько эта задача действительно сложна? Сопоставьте её с уровнем.
| Задача | Рекомендуемое усилие |
|---|---|
| Форматирование, извлечение, простые Q&A | Низкое |
| Повседневное программирование, черновики, анализ | Среднее |
| Сложная отладка, хитрые алгоритмы, аккуратные доказательства | Высокое |
- Не ставьте всё по умолчанию на максимум — вы платите задержкой и стоимостью за мышление, которое задаче не нужно.
- Начинайте со среднего; повышайте только там, где этого требует качество.
Попробуйте сами: прежде чем читать дальше, классифицируйте эти три — (a) «извлеки email из этого текста», (b) «отрефактори эту функцию», (c) «докажи это неравенство». Какой уровень подходит каждой? Сверьте свои ответы с таблицей выше.
Шаг 2 — Включите его (API)
В Messages API включите мышление с помощью блока thinking и бюджета токенов. Следуйте этим шагам.
- Передайте thinking={"type": "enabled", "budget_tokens": N} в messages.create, чтобы включить расширенное рассуждение.
- Бюджет берётся из того же пула вывода, поэтому budget_tokens должен быть меньше max_tokens.
- Ответ возвращается как блок мышления, за которым следует текст ответа — итерируйте по message.content и обрабатывайте каждый block.type.
Теперь соберите всё вместе. Скопируйте это, запустите и посмотрите, как ответ приходит двумя блоками — сначала рассуждение, затем ответ.
Включить расширенное мышление (Python)
import anthropic
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=16000,
thinking={"type": "enabled", "budget_tokens": 10000},
messages=[{"role": "user", "content": "Prove that 2^n > n^2 for all n >= 5."}],
)
for block in message.content:
if block.type == "thinking":
print("REASONING:", block.thinking)
elif block.type == "text":
print("ANSWER:", block.text)Больший бюджет покупает больше пространства для рассуждений, но не гарантию, что Claude использует его весь — глубина адаптируется к задаче. Задавайте бюджет как потолок, а затем понижайте его, если задержка мешает. ID моделей берутся из таблицы моделей; точная форма параметра может отличаться на новых моделях, поэтому сверяйтесь с источником, указанным выше.
Шаг 3 — Используйте его правильно на практике
Три привычки отличают тех, кто включает мышление, от тех, кто им владеет:
- Расширенное мышление хорошо сочетается с промптингом цепочки рассуждений — но на моделях рассуждения часто не нужно просить пошаговости; мышление происходит внутренне.
- Мышление потребляет токены, что влияет на стоимость — планируйте бюджет соответственно.
- Для агентов хорошее распределение — больше усилия на шаге планирования и меньше на рутинных вызовах инструментов.
- Усилие/мышление обменивает задержку и стоимость на точность на сложных задачах — оно ничего не даёт задачам, которые и так просты.
- Уровни: Низкое для форматирования/извлечения/простых Q&A, Среднее для повседневного программирования/черновиков/анализа, Высокое для сложной отладки/алгоритмов/доказательств.
- В Messages API budget_tokens берётся из того же пула вывода, поэтому он должен быть меньше max_tokens; ответ — это блок мышления, затем блок текста.
- Относитесь к бюджету как к потолку, а не к цели — Claude использует ровно столько, сколько нужно задаче.
- В агентах тратьте усилие на планирование и берегите его на рутинных вызовах инструментов.
Закрепите
Быстрое повторение перед уходом — переверните каждую карточку и ответьте вслух.