# Ollama API logprobs: посмотреть варианты токенов, а не достоверность ответа

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

В `/api/generate` поля `logprobs: true` и `top_logprobs` запрашивают оценку сгенерированных токенов и несколько альтернатив в ответе. Токен — часть текста, а его оценка не показывает, правдив ли ответ. Для длинных ответов есть сообщение пользователя о различии самого текста при включении поля; Modelium этот эффект не воспроизводил.

Хотите увидеть, какие кусочки текста модель рассматривала при коротком ответе? Ollama может вернуть `logprobs` — оценки отдельных **токенов** (частей слов или знаков) — и несколько возможных продолжений. Это инструмент изучения генерации, **не проверка правдивости ответа**. [s1](#src-s1) [s2](#src-s2)

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

## Как запросить оценки одного короткого ответа?

Если Ollama ещё нет, начните с [гайда установки](/zapusk/ollama/). В терминале Linux выполните `ollama pull qwen2.5:1.5b` и дождитесь завершения, затем найдите точный тег через `ollama list`. Тег в каталоге подвижен: для повторения опыта запишите реально загруженную версию модели и версию Ollama. Наличие файла не означает достаточной памяти для запуска. [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,"logprobs":true,"top_logprobs":3,"options":{"num_predict":16}}'`. При успехе придёт один JSON-объект — текст с подписанными полями. Сам ответ находится в `response`. В списке `logprobs` каждый `token` — выбранный кусочек текста, `logprob` — его оценка, а `top_logprobs` — возможные альтернативы на этом шаге, если они есть. Мы не придумываем, какой предмет назовёт модель и какие числа она вернёт. [s1](#src-s1) [s2](#src-s2) [s3](#src-s3)

## Что эти числа означают — и чего не доказывают?

`top_logprobs: 3` просит до трёх наиболее вероятных вариантов токена на каждой позиции; допустимый диапазон в закреплённом коде — от 0 до 20. Здесь `options.num_predict: 16` ограничивает длину ответа для учебного просмотра, но модель может остановиться раньше. Сравнивайте варианты **на одной позиции**, а смысл полного ответа — с вопросом: школьный рюкзак может содержать тетрадь, но это не доказательство содержимого конкретного рюкзака. [s2](#src-s2) [s3](#src-s3)

Открытый отчёт пользователя Ollama #16196 утверждает, что возвращённые оценки не учитывали установленную температуру; его комментарий также описывает повторение опыта. Другой автор сообщил, что на Ollama **0.30.5** включение `logprobs` меняло длинный сгенерированный текст даже при фиксированных настройках. Это **сообщения авторов**, не воспроизведённые Modelium результаты на v0.40.13: не считайте числа откалиброванной вероятностью истины и не исходите из того, что включение оценок никогда не меняет ответ. [s5](#src-s5) [s6](#src-s6)

## Если не появился массив или запрос не проходит

Если `curl` сообщает об отказе в соединении, проверьте запуск Ollama и адрес сервера; если модель не найдена — точное имя через `ollama list`. Если `logprobs` пуст или отсутствует, сначала сверьте фактически установленную версию, тег и ответ API: исходный код передаёт флаг в движок и собирает полученные оценки, но отсутствие данных на вашем сочетании версии и модели нельзя объяснить одним предположением. Не подменяйте собственный результат примерными числами из чужого лога. Для сравнений повторных ответов отдельно прочитайте [ограничения `seed`](/zhurnal/ollama-seed-api/). [s2](#src-s2) [s3](#src-s3)

## Источники

1. [Ollama — Generate API, описание полей logprobs и top_logprobs](https://docs.ollama.com/api/generate) — получено 2026-10-31
2. [Ollama v0.40.13 — типы запросов и ответа](https://github.com/ollama/ollama/blob/04088e7c9d41cba5d33bafbf788d87a465c79d5b/api/types.go#L126-L132) — получено 2026-10-31
3. [Ollama v0.40.13 — GenerateHandler и сборка ответа](https://github.com/ollama/ollama/blob/04088e7c9d41cba5d33bafbf788d87a465c79d5b/server/routes.go#L315-L333) — получено 2026-10-31
4. [Официальная библиотека Ollama — qwen2.5:1.5b](https://ollama.com/library/qwen2.5:1.5b) — получено 2026-10-31
5. [Ollama issue #16196 — сообщение о logprobs и temperature](https://github.com/ollama/ollama/issues/16196) — получено 2026-10-31
6. [Ollama issue #18163 — сообщение об изменении длинного ответа](https://github.com/ollama/ollama/issues/18163) — получено 2026-10-31
