Files
ai-setup/EFFORT_MAPPING.md
vitaly 6c2844ce92 feat: добавить поддержку Kimi K2.7 Code в ai-kimi
- Opus/Sonnet: kimi-k2.7 (флагманский программист)
- Haiku/Subagent: kimi-k2.6 (быстрый универсал)
- Проверка ключа тестирует kimi-k2.7
- Обновлён EFFORT_MAPPING.md и тесты

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-12 21:42:28 +03:00

6.3 KiB
Raw Blame History

Effort Mapping — Соответствие уровней для всех провайдеров

Как это работает

Когда вы меняете effort в Claude Code (через /effort или --effort), значение передаётся в API провайдера. Каждый провайдер поддерживает свой набор уровней reasoning effort. Если выбранного уровня нет у провайдера — он автоматически маппится на ближайший более высокий нативный уровень.

Таблица маппинга

Актуально на 12 июня 2026 г.

Claude Code
/effort
Anthropic
(Claude)
GPT-5.5
(ChatGPT)
DeepSeek V4 Kimi K2.7
(Moonshot)
Gemini 3.x
low low low high 🔛 thinking on LOW
medium medium medium high 🔛 thinking on MEDIUM
high high high high 🔛 thinking on HIGH
xhigh xhigh xhigh max 🔛 thinking on HIGH
max max xhigh ¹ max 🔛 thinking on HIGH

Обозначения:

  • — нативная поддержка (1:1 соответствие)
  • ⬆ — маппинг на ближайший доступный уровень вверх
  • 🔛 — бинарный режим (thinking вкл/выкл, без градаций)

¹ GPT-5.5 не имеет уровня max — effort-proxy (claude-gpt-effort-proxy.py) маппит maxxhigh

Нативные уровни каждого провайдера

Anthropic (Claude) — эталон

low → medium → high → xhigh → max
  • 5 уровней, полное соответствие с Claude Code
  • По умолчанию: xhigh
  • max — максимальный бюджет на thinking, для самых сложных задач

GPT-5.5 (через claude-code-proxy)

low → medium → high → xhigh
  • 4 основных уровня (также существуют none и minimal)
  • Нет max → маппится в xhigh
  • По умолчанию: medium
  • Маппинг выполняется effort-proxy на стороне лаунчера

DeepSeek V4

high → max
  • Всего 2 реальных уровня
  • low и medium → автоматически поднимаются до high
  • xhigh → автоматически поднимается до max
  • Маппинг выполняется на стороне DeepSeek API

Kimi K2.7 (Moonshot AI)

on / off
  • Бинарный режим — thinking либо включён, либо выключен
  • Все уровни effort = thinking включён
  • Нет градаций глубины reasoning
  • Маппинг выполняется на стороне Moonshot API

Gemini 3.x (через antigravity-claude-proxy)

MINIMAL → LOW → MEDIUM → HIGH
  • 4 уровня
  • Нет xhigh и maxоба маппятся в HIGH
  • Pro-модели: по умолчанию HIGH
  • Flash-модели: по умолчанию MEDIUM
  • Маппинг выполняется на стороне antigravity-claude-proxy

Где выполняется маппинг

Провайдер Кто маппит Файл/компонент
Anthropic Не нужен
GPT-5.5 effort-proxy (наш) ~/.local/bin/claude-gpt-effort-proxy.py
DeepSeek V4 DeepSeek API На стороне сервера
Kimi K2.7 Moonshot API На стороне сервера
Gemini 3.x antigravity-claude-proxy npm пакет

Persistence effort между сессиями

Каждый лаунчер (ai-claude, ai-deepseek, ai-kimi, ai-openrouter) запоминает свой уровень effort отдельно. Логика гибридная:

  • low / medium / high / xhigh живут нативно в settings.json лаунчера. /effort внутри сессии работает как обычно, уровень сохраняется между сессиями.
  • max — единственный, который Claude Code не сохраняет в settings.json (он session-only). Поэтому его восстанавливаем через CLAUDE_CODE_EFFORT_LEVEL. Текущий уровень (включая max) статусбар пишет в ~/.cache/ai-setup/effort_<launcher>.

Важное следствие (только для max): когда восстановлена max-сессия, выставлена CLAUDE_CODE_EFFORT_LEVEL=max, и /effort внутри неё не сменит уровень (env-переменная — жёсткий override Claude Code). На остальных уровнях /effort свободен.

Как выйти из max (или форсить любой уровень): перезапусти лаунчер с AI_EFFORT:

AI_EFFORT=max ai-deepseek    # включить и запомнить max
AI_EFFORT=high ai-deepseek   # вернуться на high (выйти из max)
ai-deepseek                  # без флага - восстанавливает последний уровень

Дефолты при пустом кэше: xhigh для ai-claude, high для остальных.

Рекомендации

  • Для повседневной работы: high или xhigh — работает одинаково хорошо у всех провайдеров
  • max effort: имеет реальный эффект только у Anthropic и DeepSeek. Для GPT маппится в xhigh, для Gemini и Kimi — в их максимальный уровень
  • low/medium: у DeepSeek и Kimi фактически не снижают reasoning — DeepSeek поднимет до high, Kimi просто включит thinking
  • Смена уровня: на low..xhigh обычным /effort; из max — через AI_EFFORT=<lvl> ai-<launcher> (в max-сессии /effort залочен env-переменной, см. «Persistence effort»)