AI.Product ClubБлог Михаила Карпова
← Все материалы
HOW-TOИИ для продукта7 мин чтения

Thinking в Ollama: как включить и проверить режим

Проверка thinking.values в Ollama, параметр think, отдельные поля reasoning и ответа. Учебный запрос и критерии сравнения режимов.

Если Ollama показывает длинный блок thinking перед ответом, полезно проверить две вещи: поддерживает ли выбранная модель управление этим режимом и улучшает ли он результат твоей задачи. Скрыть текст рассуждения в интерфейсе и изменить режим модели — не одно и то же действие.

Разберём небольшой API-пример на учебном планировании пилота. Он требует терминала, но не приложения собственной разработки. Конкретные настройки сначала проверим у модели, чтобы не переносить параметры одной модели на другую.

Thinking в Ollama: проверить поддерживаемые значения, задать think и оценить итоговый ответ
Оригинальная схема AI Product Club. Наличие reasoning-текста не доказывает правильность вывода. Открыть крупнее.

1. Проверь модель, а не только название режима

В официальной инструкции Ollama поддерживаемые значения можно получить через /api/show. У разных моделей это булевы значения или именованные уровни. Список [false] означает отсутствие поддержки thinking; отсутствие метаданных не позволяет уверенно сделать тот же вывод.

Для примера используем qwen3, указанную в документации. Если модели ещё нет, её загрузка выполняется командой ollama pull qwen3. Сначала оцени размер загрузки и доступную память; для проверки существующей установки не обязательно скачивать другую модель.

В macOS, Linux или WSL:

curl --fail-with-body http://127.0.0.1:11434/api/show \
  -H 'Content-Type: application/json' \
  -d '{"model":"qwen3"}'

Ищи объект thinking, поля values и default. Для другой установленной модели замени имя точным значением из ollama list. Если локальный сервер недоступен, начни с проверки Ollama API, а не с изменения параметров запроса.

2. Задай режим явно

Параметр think допускает true, false, null или поддерживаемое имя уровня. null использует настройку модели по умолчанию. У моделей, которые не отключают thinking, false выбирает минимальный доступный уровень. Неподдерживаемое имя может привести к использованию default, поэтому успешный запрос сам по себе не доказывает выбор нужного уровня.

Следующий пример подходит для модели, у которой проверена поддержка булева управления:

curl --fail-with-body http://127.0.0.1:11434/api/chat \
  -H 'Content-Type: application/json' \
  -d '{
    "model":"qwen3",
    "messages":[{"role":"user","content":"Учебный пилот: 5 сотрудников, каждый делает 4 проверки. До старта один сотрудник выбыл. Сколько проверок осталось? Покажи короткий расчёт и не придумывай результаты пилота."}],
    "think":true,
    "stream":false
  }'

При именованных уровнях используй точное значение из thinking.values. Не подставляй число вроде 3: числовой уровень этим параметром не задаётся. Полную схему поведения сверяй с документацией thinking.

3. Отдели ответ от вспомогательного текста

Для chat API итог находится в message.content, а thinking — в отдельном message.thinking. В примере отключён потоковый вывод, чтобы проще прочитать один JSON-ответ.

Ожидаемый редакционный расчёт: осталось 5 − 1 = 4 сотрудника, 4 × 4 = 16 проверок. Это число запланированных действий, не показатель точности и не свидетельство успешного пилота.

Сохрани итоговый ответ и время ожидания. Затем повтори тот же независимый запрос с think: false, если такое значение применимо к модели. Не передавай первый ответ второму запуску: это изменит условия сравнения. Не меняй одновременно размер контекста, модель и текст задания.

4. Сравни на задаче с ограничениями

Простой счёт нужен только как первая проверка. Для следующего задания замени текст сообщения:

Учебный пилот: 4 сотрудника, по 4 проверки каждому.
За один день наблюдатель может разобрать не более 6 проверок.
Пилот должен занять 2 дня. Увеличивать дневную нагрузку нельзя.
Проверь, согласуются ли условия. Предложи два изменения плана,
но не считай ни одно из них уже согласованным.

В текущих условиях 16 проверок не помещаются в 2 × 6 = 12 доступных разборов. Допустимые варианты для обсуждения: увеличить срок минимум до трёх дней или сократить объём до 12 проверок. Если модель предлагает «сделать по 8 в день», она нарушает явное ограничение.

Проверяй итог по трём критериям: правильная арифметика, сохранение запретов, отсутствие выдуманного согласования. Длина thinking-текста в эту оценку не входит. Если оба режима проходят задачу, сравни время и удобство проверки; если оба ошибаются, сначала уточни постановку.

5. Зафиксируй условия сравнения

Запиши версию Ollama, имя модели, найденные thinking.values, выбранное значение и исходный запрос. После обновления модели повтори проверку: поддерживаемые настройки могут измениться. Для текста длиннее учебного примера отдельно проверь размер контекста.

На курсе по ИИ-агентам учимся проверять результаты инструментов на конкретных задачах. Источник сверён 15 ноября 2026 года. Запросы в статье подготовлены по документации; реальный прогон Ollama и измерение времени не проводились.

Todo: попробуй на своей задачеПрогресс сохраняется в этом браузере.
ПРАКТИКА НА КУРСЕ / AI PRODUCT CLUB

Собери своего ИИ-агента и проверь результат

«AI Agents: от vibe coding к AI-команде»: desktop agents, MCP, skills, evals и harness. Отдельные воркшопы — от подключения инструментов до контроля качества.

7 практических воркшопов · записи · вопросы автору в чате

Посмотреть программу курса ↗

Автор: — практик автоматизации и автор курсов AI Product Club.