# Ollama num_predict: ограничить длину одного ответа

Источник: https://modelium.tech/zhurnal/ollama-num-predict/

`num_predict` задаёт верхний предел генерируемых токенов — небольших частей текста — для одного запроса Ollama. Передайте число в `options` локального API и посмотрите `eval_count` в ответе. Модель может остановиться раньше, а короткий лимит способен оборвать фразу; настройка не увеличивает размер входного контекста.

Если локальная Ollama отвечает слишком длинно, можно ограничить **один** ответ через `num_predict`, не создавая нового варианта модели. Это число токенов — небольших частей текста, а не слов или предложений. Ниже учебный запрос на Linux: вы увидите ответ и счётчик сгенерированных токенов; длину текста и его смысл всё равно проверяет человек. [s1](#src-s1) [s2](#src-s2)

**Проверено по источникам 31 октября 2026 года:** Ollama v0.40.13, локальный API (адрес программы для запросов из других приложений) и тег `qwen2.5:1.5b`, указанный в официальной библиотеке на эту дату. Нужны Linux с установленной Ollama, терминал, `curl`, свободное место под выбранную модель и достаточная оперативная или видеопамять для её запуска; **универсальный минимум памяти здесь неизвестен**. Интернет нужен для установки и первой загрузки модели, запрос отправляется на адрес вашего компьютера `127.0.0.1`. Редакция сверила документацию и структуру команды, но не скачивала веса и не запускала модель: это инструкция по источникам, а не тест Modelium. [s1](#src-s1) [s4](#src-s4)

## Как ограничить один ответ и увидеть результат?

Откройте терминал Linux. Если Ollama ещё не установлена, начните с [гайда запуска](/zapusk/ollama/). На установленной программе выполните `ollama pull qwen2.5:1.5b`: дождитесь окончания загрузки, затем `ollama list` и найдите именно этот тег. Тег и его файлы в публичном реестре могут меняться; для повторяемого исследования запишите фактический идентификатор модели из своей установки. Если загрузка не удалась, не переходите к запросу; ошибка нехватки памяти может проявиться только при попытке запуска модели. [s4](#src-s4)

Отправьте один запрос командой `curl -fsS http://127.0.0.1:11434/api/generate -H 'Content-Type: application/json' -d '{"model":"qwen2.5:1.5b","prompt":"Назови два способа сберечь заряд ноутбука одним коротким предложением.","stream":false,"options":{"num_predict":64}}'`. `curl` обращается к локальной Ollama; `stream:false` просит один ответ в формате JSON (текст с именованными полями) вместо потока отдельных строк. В нём найдите `response` (полученный текст), `done:true` (завершение ответа) и `eval_count` (сколько токенов сгенерировано). Сверьте, отвечает ли текст на вопрос, а не только счётчик; конкретные слова модели заранее неизвестны. [s1](#src-s1) [s2](#src-s2) [s4](#src-s4)

При исправном ответе `eval_count` не должен превышать заданный предел `64`, но может быть меньше: модель вправе завершить ответ раньше. В ответе этой версии `done_reason: "length"` указывает остановку по пределу; его отсутствие не делает текст проверенным. `num_predict` задаёт **потолок вывода**, а не требование выдать ровно столько токенов и не гарантирует полного предложения. Сохраните исходный текст и полученный ответ, прежде чем менять параметр на своей задаче. [s1](#src-s1) [s2](#src-s2) [s6](#src-s6)

## Чем это отличается от контекста и Modelfile?

`num_ctx` — настройка окна контекста, то есть того, сколько токенов модель учитывает в запросе и истории; `num_predict` — предел генерируемого ответа. Увеличение второго не делает длинный документ допустимым входом, а слишком малое значение может оборвать фразу. Не используйте `-1` из настройки по умолчанию как обещание бесконечной генерации: реальный ответ ограничивают и другие условия выполнения. [s2](#src-s2) [s3](#src-s3)

Поле `options` меняет параметр только в приведённом запросе: в коде v0.40.13 настройки запроса применяются после настроек модели, а сама команда не создаёт новый тег. Если нужен отдельный именованный вариант модели с сохранённой настройкой, это другая операция — [Ollama Modelfile](/zhurnal/ollama-modelfile/). Для первого опыта с одним ответом новый тег не нужен. Если локальный адрес не отвечает, проверьте запуск Ollama и установленный тег; если ответ внезапно обрывается, поднимите `num_predict` для нового запроса и снова проверьте текст, не выдавая увеличение лимита за гарантию качества. [s1](#src-s1) [s2](#src-s2) [s5](#src-s5)

## Что проверить перед использованием ответа?

На учебном вопросе проверьте два понятных совета; на своём тексте отдельно сверяйте все факты с исходными данными. Этот предел регулирует **объём вывода**, а не точность ответа, защиту данных или сетевую изоляцию. Для разбора того, почему два одинаково длинных русских предложения могут занимать разное число токенов, откройте [объяснение токенов](/zhurnal/tokeny-v-neyroseti/). [s1](#src-s1) [s2](#src-s2)

## Источники

1. [Ollama v0.40.13 — API: generate, options, stream и eval_count](https://github.com/ollama/ollama/blob/04088e7c9d41cba5d33bafbf788d87a465c79d5b/docs/api.md#generate-a-completion) — получено 2026-10-31
2. [Ollama v0.40.13 — параметры Modelfile](https://github.com/ollama/ollama/blob/04088e7c9d41cba5d33bafbf788d87a465c79d5b/docs/modelfile.mdx#valid-parameters-and-values) — получено 2026-10-31
3. [Ollama v0.40.13 — типы Options и DefaultOptions](https://github.com/ollama/ollama/blob/04088e7c9d41cba5d33bafbf788d87a465c79d5b/api/types.go#L1218-L1245) — получено 2026-10-31
4. [Официальная библиотека Ollama — тег qwen2.5:1.5b](https://ollama.com/library/qwen2.5:1.5b) — получено 2026-10-31
5. [Ollama v0.40.13 — приоритет options отдельного запроса](https://github.com/ollama/ollama/blob/04088e7c9d41cba5d33bafbf788d87a465c79d5b/server/routes.go#L139-L172) — получено 2026-10-31
6. [Ollama v0.40.13 — передача num_predict в runner и счётчик ответа](https://github.com/ollama/ollama/blob/04088e7c9d41cba5d33bafbf788d87a465c79d5b/llm/llama_server.go#L1680-L1704) — получено 2026-10-31
