Learn (Almost) Anything
КаталогСкачать курс

Claude Code: справочник разработчика

Семейство Opus/Sonnet/Haiku, переключение через /model и extended thinking. Когда платить за более сильную модель, а когда хватит быстрой.

ruЭнциклопедия38 уроков8 модулей7
энциклопедия claude codeClaude Codeсправочник разработчикаФундамент Claude Codeпамять и конфигурацияРабочие процессы и best practicesMCPОблачные агентыПрограммный доступAgent SDK и Claude API

Выбор модели и режимы мышления

Семейство Opus/Sonnet/Haiku, переключение через /model и extended thinking. Когда платить за более сильную модель, а когда хватит быстрой.

Выбор модели и режимы мышления

Настройки конфигурации из предыдущей статьи задают правила и разрешения — но именно выбор модели определяет, насколько «умным» и быстрым будет агент. Это самый прямой рычаг влияния на соотношение качество/стоимость в работе, и именно здесь разумная настройка экономит реальные деньги.

---

Семейство моделей: актуальный расклад

На середину 2026 года Claude Code работает с четырьмя основными уровнями моделей:

МодельAPI IDЦена (input/output, за 1M токенов)КонтекстThinking
Haiku 4.5claude-haiku-4-5$1 / $5200kExtended ✓
Sonnet 4.6claude-sonnet-4-6$3 / $151MExtended + Adaptive ✓
Opus 4.8claude-opus-4-8$5 / $251MAdaptive ✓
Fable 5claude-fable-5$10 / $501MAdaptive ✓

Haiku — самый быстрый и дешёвый вариант. Отлично справляется с рутиной: генерация boilerplate, простые правки, rename, форматирование, короткие summary.

Sonnet — рабочая лошадка большинства разработчиков. Хорошая скорость при высоком качестве, поддерживает и extended, и adaptive thinking. Важная деталь: контекстное окно 1M токенов против 200k у Haiku — для работы с большими кодовыми базами это принципиально.

Opus 4.8 — когда задача реально сложная: архитектурные решения, анализ запутанных зависимостей, многошаговые рассуждения. По умолчанию работает с effort: high — это зафиксировано в документации Anthropic.

Fable 5 — самая мощная публично доступная модель на данный момент; adaptive thinking всегда включён. Оправдан только там, где цена ошибки высока и другие модели не справляются.

> На практике 90% работы в Claude Code покрывает Sonnet — он используется по умолчанию. Haiku и Opus — точечные переключения под конкретный тип задач.

flowchart LR H["Haiku 4.5\n$1/$5 за MTok\n200k контекст\nExtended thinking"] S["Sonnet 4.6\n$3/$15 за MTok\n1M контекст\nExtended + Adaptive"] O["Opus 4.8\n$5/$25 за MTok\n1M контекст\nAdaptive thinking"] F["Fable 5\n$10/$50 за MTok\n1M контекст\nAdaptive thinking"] H -- "дороже · умнее" --> S -- "дороже · умнее" --> O -- "дороже · умнее" --> F
flowchart LR
    H["Haiku 4.5\n$1/$5 за MTok\n200k контекст\nExtended thinking"]
    S["Sonnet 4.6\n$3/$15 за MTok\n1M контекст\nExtended + Adaptive"]
    O["Opus 4.8\n$5/$25 за MTok\n1M контекст\nAdaptive thinking"]
    F["Fable 5\n$10/$50 за MTok\n1M контекст\nAdaptive thinking"]
    H -- "дороже · умнее" --> S -- "дороже · умнее" --> O -- "дороже · умнее" --> F
Четыре уровня моделей Claude: от самого быстрого и дешёвого к самому мощному

---

Как переключить модель

Четыре способа, от быстрого к постоянному.

1. Прямо в сессии — /model

/model claude-opus-4-8

Переключение происходит мгновенно, без перезапуска. Следующий запрос уже пойдёт через Opus. Удобно, когда в процессе сессии понимаешь, что задача сложнее ожидаемого.

2. Для всей команды — settings.json

{
  "model": "claude-sonnet-4-6"
}

Как разобрано в Настройки и иерархия конфигурации: project-level файл коммитится в репо и применяется ко всем. Личный override — в settings.local.json.

3. Переменная окружения — ANTHROPIC_MODEL

ANTHROPIC_MODEL=claude-haiku-4-5 claude -p "краткое summary этого файла"

Удобно в CI/CD: дешёвая модель для рутинных проверок, дорогая — только для code review.

4. CLI-флаг — --model

claude --model claude-opus-4-8 "разберись в этой архитектуре"

Перекрывает все настройки на время одного запуска.

Полный порядок приоритета:

CLI --model  >  settings.local.json  >  settings.json  >  ~/.claude/settings.json  >  ANTHROPIC_MODEL
Проверь себя #cp-1

В settings.json прописана модель claude-sonnet-4-6. Вы запускаете Claude Code с флагом --model claude-haiku-4-5. Какая модель будет использована и почему?

Показать ответ

Claude Haiku 4.5 — CLI-флаг --model имеет наивысший приоритет и перекрывает все файлы настроек, включая project-level settings.json. Порядок: CLI > local > project > user > переменная окружения.

---

Extended thinking и adaptive thinking

Это два разных механизма — их часто путают, но они решают разные задачи.

Extended thinking — явный режим: вы сами задаёте бюджет токенов на «внутренние рассуждения», и модель думает перед ответом. Поддерживают Haiku 4.5 и (в режиме обратной совместимости) Sonnet 4.6. В Claude Code включается через:

{
  "alwaysThinkingEnabled": true
}

Бюджет мышления контролируется переменной окружения:

MAX_THINKING_TOKENS=8000 claude

По умолчанию «мысли» скрыты — видно только итоговый ответ. Включить отображение summary:

{
  "showThinkingSummaries": true
}

Чтобы полностью отключить extended thinking (например, для быстрых автоматических задач):

MAX_THINKING_TOKENS=0 claude -p "добавь docstring"

Adaptive thinking — другой механизм: модель *сама* решает, когда и насколько глубоко думать, без явного бюджета. Встроен в Sonnet 4.6, Opus 4.8 и Fable 5. Пользователь не управляет этим напрямую, но глубина мышления зависит от effortLevel (см. ниже).

Практическое следствие: на Opus 4.8 нет смысла включать alwaysThinkingEnabled — он не поддерживает extended thinking, только adaptive. На Sonnet 4.6 работают оба механизма, но Anthropic рекомендует переходить на effortLevel вместо явного бюджета токенов.

Проверь себя #cp-2

Вы работаете с Claude Opus 4.8 и выставили alwaysThinkingEnabled: true в settings.json. Что произойдёт?

Показать ответ

Ничего — Opus 4.8 не поддерживает extended thinking, только adaptive thinking (которое всегда активно). Параметр alwaysThinkingEnabled влияет на Haiku 4.5 и Sonnet 4.6. На Opus 4.8 настройка просто игнорируется; чтобы управлять глубиной рассуждений, используйте effortLevel.

---

effortLevel: реостат между скоростью и глубиной

Параметр effortLevel — более тонкая настройка, чем выбор модели. Он управляет тем, сколько усилий агент вкладывает в каждый запрос, и работает поверх adaptive thinking:

УровеньКогда использовать
lowБыстрые правки, rename, форматирование
mediumСтандартная разработка (дефолт для большинства моделей)
highРефакторинг, отладка нетривиальных багов
xhighАрхитектурные решения, анализ больших кодовых баз

Установить в settings.json:

{
  "effortLevel": "high"
}

Пеключить в сессии:

/effort xhigh

Перед одним запуском через CLI:

CLAUDE_CODE_EFFORT_LEVEL=low claude -p "добавь комментарии к функции"

effortLevel и выбор модели — ортогональные настройки. Sonnet с effortLevel: xhigh на конкретной задаче может дать результат лучше, чем Opus с effortLevel: low. Opus 4.8 по умолчанию работает с effort: high — если хочется сэкономить, явно выставьте low или medium.

---

Практический гайд: когда платить за более сильную модель

Haiku — достаточно:

  • Генерация unit-тестов по существующему коду
  • Написание CHANGELOG или commit message
  • Переименование переменных, форматирование
  • Краткое summary файла или документа

Sonnet — дефолт для большинства задач:

  • Реализация новых фич среднего размера
  • Debug нетривиального бага с контекстом стека и логов
  • Code review с объяснением проблем
  • Работа с большим контекстом (когда нужно больше 100k токенов)

Opus 4.8 / Fable 5 — когда сложность реально высокая:

  • Разбор чужой архитектуры без документации
  • Рефакторинг легаси-кода с неочевидными инвариантами
  • Архитектурные решения с множеством trade-offs
  • Задачи, где Sonnet несколько раз ошибся или потерял нить

Ключевой принцип: начинайте с Sonnet, переключайтесь на Opus или Fable 5 только когда видите, что модель «не вытягивает» — даёт поверхностные ответы или принимает заведомо плохие решения. Для CI/CD-автоматизации рассмотрите Haiku — разница в затратах при сотнях запросов в день существенная.

---

fallbackModel и управление в команде

Если основная модель перегружена или недоступна, Claude Code автоматически переключится на резервную:

{
  "model": "claude-opus-4-8",
  "fallbackModel": ["claude-sonnet-4-6", "claude-haiku-4-5"]
}

Цепочка — до трёх моделей, пробуются по порядку. Этот список не мержится между файлами настроек — работает только тот, что в файле с высшим приоритетом.

Для enterprise-деплоев можно ограничить доступные модели через managed-settings:

{
  "availableModels": ["sonnet", "haiku"],
  "enforceAvailableModels": true
}

Тогда разработчики не смогут случайно переключиться на дорогую модель там, где бюджет этого не предусматривает.

ИнтерактивКакую модель выбрать?#int-1
Перетащите каждую задачу в подходящую категорию модели
Haiku 4.5
Sonnet 4.6
Opus 4.8 / Fable 5
Распределите задачи по моделям, опираясь на их характеристики. Проверьте себя после расстановки.

---

Быстрое повторение #rc-3

Что произойдёт с сессией, если выполнить команду /model claude-opus-4-8?

Показать ответ

Модель переключится немедленно без перезапуска; следующий запрос обработается Opus.

Быстрое повторение #rc-2

В чём фундаментальное отличие extended thinking от adaptive thinking?

Показать ответ

Extended thinking требует явного бюджета токенов (MAX_THINKING_TOKENS), adaptive thinking — модель сама решает глубину размышлений на основе effortLevel.

Быстрое повторение #rc-1

Почему контекстное окно Sonnet (1 миллион токенов) критичнее для больших кодовых баз, чем 200k Haiku?

Показать ответ

Sonnet может анализировать больше кода одновременно, сохраняя контекст архитектуры и зависимостей — для Haiku часто недостаточно, чтобы удержать контекст больших проектов.

See also

Источники

  1. Claude Code Settings — model, effortLevel, alwaysThinkingEnabled
  2. Claude Models Overview — Opus 4.8, Sonnet 4.6, Haiku 4.5, Fable 5
  3. Extended Thinking in Claude — manual vs adaptive