Назад до блогу

AI для початківцівПосібник

Effort міркування та токени міркування: чому міркування коштує дорожче

Токени міркування тарифікуються як вивід. Що означають рівні effort, що ставити в max_tokens, щоб відповідь не обрізалася, і як оцінити рахунок.

Автор: CheapTokens TeamОпубліковано 6 хв читання

Картка чату: чому відповідь в один рядок коштувала так дорого? Бо модель спершу думала, а міркування тарифікуються як вивід
На цій сторінці
  1. Що модель робить перед тим, як відповісти
  2. Effort: регулятор міркування
  3. Пастка порожньої відповіді: міркування враховуються в max_tokens
  4. Що довгі міркування роблять із рахунком
  5. Який effort для якої роботи
  6. Перенесення старого запиту: помилка 400
  7. Агенти та довгі чати: виберіть один рівень і тримайтеся його
  8. Спробуйте на власному запиті

Ваш запит був одним фактичним питанням. Відповідь — три рядки. Лічильник виводу показує тисячі токенів. Це не помилка: перед відповіддю багато моделей думають у прихованому робочому блокноті, і ці токени міркування тарифікуються як токени виводу. Налаштування effort визначає, скільки таких міркувань відбувається, і max_tokens має залишати для них місце, інакше відповідь обірветься або буде порожньою.

Що модель робить перед тим, як відповісти#

Уявіть іспит. Можна одразу написати відповідь, а можна спершу заповнити сторінку чорнеткою. Чорнетка часто дає кращий результат для складної задачі, але папір не безкоштовний. Міркування — це така чорнетка, і вони враховуються в токенах, як і все інше.

Документація Anthropic про extended thinking (перевірено 23 жовтня 2026) каже, що токени міркування є частиною тарифікованих токенів виводу, і відповідь повідомляє, скільки їх: usage.output_tokens_details.thinking_tokens. Припустімо, відповідь повертається з таким блоком usage (приклад чисел):

json
"usage": {
  "input_tokens": 480,
  "output_tokens": 2150,
  "output_tokens_details": { "thinking_tokens": 1900 }
}

Вам виставляють рахунок за 2 150 токенів виводу. Міркування зайняли 1 900 з них, тож текст, який ви насправді читаєте, — це 2 150 − 1 900 = 250 токенів. Те саме стосується навіть тоді, коли текст міркування вам не повертають: він усе одно враховується. Якщо хочете спершу розібратися з різницею між вхідними та вихідними токенами, почніть з input vs output tokens.

Effort: регулятор міркування#

У Claude API регулятор — це output_config.effort. Сторінка Anthropic про effort (перевірено 23 жовтня 2026) перелічує п'ять рівнів: low, medium, high, xhigh, max. Для початківця важливі три деталі:

  • Він впливає на кожен токен виводу, не лише на міркування: текст, виклики інструментів і міркування разом.
  • Це поведінковий сигнал, а не суворий бюджет. Нижчий effort означає менше токенів ціною деяких можливостей; за низького effort Claude може взагалі пропустити міркування для простої задачі.
  • Типове значення — medium на Claude Opus 5.5 і Claude Haiku 5.5, та high на більшості інших моделей, які підтримують цей параметр. Явне встановлення типового значення дорівнює його пропуску.

Рівні перекалібровуються для кожної моделі, тож high на одній моделі — це не така сама кількість міркування, як high на іншій, і не кожна модель приймає кожен рівень. В одному опублікованому відео хтось запустив кожен рівень effort Claude Opus 5.5 на одній і тій самій задачі з motion-графікою та порівняв зображення. Це гарний спосіб побачити, що дає більше міркування. Але це не скаже вам ваш рахунок, бо ваша задача не їхня.

Запит для простого питання зі зниженим effort:

json
{
  "model": "claude-opus-5-5",
  "max_tokens": 4000,
  "output_config": { "effort": "low" },
  "messages": [
    { "role": "user", "content": "What is the capital of Australia?" }
  ]
}

Пастка порожньої відповіді: міркування враховуються в max_tokens#

Ось як це ламається. Ви очікуєте відповідь на два речення, тож ставите max_tokens у 300. Модель починає думати, витрачає 300 на свій робочий блокнот, досягає ліміту й зупиняється. Ви отримуєте порожню відповідь або речення, що обривається посеред слова, а причина зупинки каже max_tokens.

Документація прямо каже: max_tokens — це жорсткий ліміт на загальний вивід, міркування плюс текст відповіді, і міркування враховуються навіть тоді, коли їхній вміст не повертається. За effort high і вище Anthropic радить ставити велике значення.

На практиці:

  1. Візьміть довжину відповіді, яку хочете.
  2. Додайте щедрий запас на міркування. Кілька тисяч токенів — розумний початок для всього, що вище за low.
  3. Перевірте причину зупинки після перших запусків. Якщо вона все ще каже max_tokens, підніміть ліміт. Якщо відповідь повна, можете його знизити.

Сам обрив, разом із finish_reason та контекстним вікном, розглянуто в why an AI answer stops mid-sentence.

Що довгі міркування роблять із рахунком#

Припустімо, ви запускаєте бота підтримки з 2 000 тікетів на день. Кожен тікет — близько 500 токенів на вході. Коротка пряма відповідь — близько 400 токенів на виході. Той самий тікет із довгими прихованими міркуваннями — близько 4 000 токенів на виході. Це припущення для прикладу; для власних чисел дивіться how many tokens a request uses.

За день це 2 000 × 500 = 1 000 000 вхідних токенів, і або 2 000 × 400 = 800 000 вихідних токенів, або 2 000 × 4 000 = 8 000 000 вихідних токенів. Читач тікета в обох випадках бачить ті самі два рядки. Єдине, що змінилося, — обсяг виводу, а вивід — це саме той бік, який роздувають міркування.

Щоденна вартість бота підтримки, 1 000 000 токенів на вході, короткі відповіді проти довгих міркувань (актуальні ціни)
  • MiniMax-M2.7, довгі міркування (8 000 000 на виході)$1.25
  • DeepSeek-V4-Flash, довгі міркування (8 000 000 на виході)$0.815
  • MiniMax-M2.7, короткі відповіді (800 000 на виході)$0.17
  • DeepSeek-V4-Flash, короткі відповіді (800 000 на виході)$0.095

Арифметика однакова на будь-якій моделі, яка тарифікує приховані міркування: токени виводу × ціна виводу. Для DeepSeek-V4-Flash ця ціна — $0.10 за 1M вихідних токенів, і його бік виводу дешевший за референсну ціну OpenRouter. Він також відповідає до 32 768 токенів за раз із контекстом 380K, тож великий max_tokens поміститься. Ціни фіксовані для кожної моделі, без пікових годин, і таблиця вище перераховується з актуального прайс-листа. Усі ціни на pricing page; DeepSeek page містить деталі моделі.

Ось запит, який можна надіслати самому. Це проста задача підсумовування, тож довгі міркування не потрібні, а ліміт залишає багато місця:

bash
curl https://api.cheaptokens.dev/v1/chat/completions \
  -H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-ai/DeepSeek-V4-Flash-0731",
    "max_tokens": 2000,
    "messages": [
      {"role": "user", "content": "Summarize in one sentence: A token is a small piece of text that a model reads and writes, and APIs bill by the token."}
    ]
  }'

У відповіді usage.completion_tokens — це те, за що ви платите на боці виводу, а finish_reason має бути stop. Якщо там length, ліміт обрізав відповідь. Отримання ключа та перший виклик: docs.

Який effort для якої роботи#

  • Факт, підсумок в один рядок, мітка. Найнижчий effort. Це випадок із початку статті: чорнетка не потрібна.
  • Повсякденне письмо, коротке пояснення, просте редагування. Типове значення для моделі. Змінюйте його лише після того, як побачите, скільки коштують відповіді.
  • Складний баг, багатокроковий план, математична задача. high або вище, і великий max_tokens. Тут додаткове міркування і є суттю.

Якщо сумніваєтеся, запустіть той самий промпт на двох рівнях, порівняйте відповіді та порівняйте output_tokens. Якщо дешевша відповідь така сама добра, ви знайшли свій рівень.

Перенесення старого запиту: помилка 400#

Старіший код керував міркуванням через бюджет токенів. На Claude 4.7 і новіших моделях (Opus 5.5, Sonnet 5.5, Haiku 5.5, Fable 5.1) ця форма відхиляється з помилкою 400. Ви переходите на адаптивне міркування й задаєте глибину через effort:

json
// before: returns 400 on newer models
"thinking": { "type": "enabled", "budget_tokens": 8000 }

// after
"thinking": { "type": "adaptive" },
"output_config": { "effort": "medium" }
Старий бюджет міркування ліворуч, адаптивне міркування з effort праворуч
Той самий запит до і після переходу, за документацією Anthropic, перевірено 23 жовтня 2026

Ще одна пастка: на Opus 5.5 адаптивне міркування завжди увімкнене, і thinking: { "type": "disabled" } повертає 400 за будь-якого рівня effort. Haiku 5.5 дозволяє вимкнути міркування за effort high або нижче. Якщо хочете менше міркування на Opus 5.5, знизьте effort замість вимкнення.

Агенти та довгі чати: виберіть один рівень і тримайтеся його#

Якщо ваш промпт кешовано, зміна effort верхнього рівня між запитами робить недійсними точки розриву кешу для цієї розмови. Для циклу агента або довгого чату виберіть один рівень заздалегідь. Деякі моделі пропонують per-message effort у бета-версії, що зберігає кеш; на це варто поглянути, коли основи вже засвоєно. Довгі чати мають другий чинник витрат, розглянутий у why a long chat costs more.

Спробуйте на власному запиті#

  1. Надішліть свій справжній промпт один раз і прочитайте usage: скільки токенів виводу і скільки з них — міркування.
  2. Знизьте effort на один крок і надішліть знову. Порівняйте відповіді та лічильники.
  3. Встановіть max_tokens на бажану відповідь плюс запас на міркування й перевірте причину зупинки.

Потім підставте власні кількості токенів у живу таблицю цін на pricing page — і у вас буде оцінка на місяць.