Первый запрос к локальной модели Ollama через API

Практическое руководство по первому локальному API-запросу к Ollama. Описаны базовый URL, структура JSON-тела, отключение потока и проверка статуса сервера. Материал помогает избежать типичных ошибок с именами моделей и сетевым доступом.

Подготовка сервера и проверка статуса

Перед отправкой запроса убедитесь, что процесс Ollama запущен. По умолчанию сервер слушает адрес 127.0.0.1 на порту 11434. Для локальной работы не требуется открывать доступ из интернета. Если процесс не активен, HTTP-клиент не сможет установить соединение. Используйте команду ollama ps для проверки загруженных моделей и распределения ресурсов между CPU и GPU. Список ollama ps относится к загруженным моделям; пустой список не означает, что сервер остановлен. Установленные модели проверяются отдельно через ollama list.

Структура запроса к эндпоинту generate

Основной метод генерации ответов использует POST-запрос к адресу /api/generate. Тело запроса представляет собой JSON-объект. Поле model должно содержать точное имя установленной модели, совпадающее с тегом из списка ollama list. Не следует придумывать имена или использовать идентификаторы из других систем. Поле prompt содержит текст вашего запроса. Важно понимать, что этот эндпоинт отличается от интерфейса OpenAI, поэтому форматы могут различаться.

Управление потоковой передачей данных

По умолчанию Ollama возвращает ответ в виде потока данных. Для получения единого JSON-объекта с полным текстом установите поле stream в значение false. В этом случае ответ содержит поле response с итоговым текстом, а поле done указывает на завершение генерации. Если оставить поток включенным, клиент будет получать данные частями. Выбор режима зависит от логики вашего приложения и необходимости обработки ответа целиком или по мере поступления.

Пример одного локального запроса

В терминале Linux или macOS замените MODEL_TAG на точный тег установленной модели из ollama list. Если curl отсутствует, сначала установите его способом, подходящим вашей ОС. Затем выполните:

curl localhost:11434/api/generate -H 'Content-Type: application/json' -d '{"model":"MODEL_TAG","prompt":"Привет","stream":false}'

Это пример для локального адреса по умолчанию. При другом порте используйте адрес своего сервера. Ответ должен быть JSON; текст генерации находится в поле response. Не используйте этот пример как команду PowerShell без адаптации синтаксиса кавычек.

Ограничения и сетевые аспекты

Локальный запуск не означает полное отсутствие сетевого трафика. Загрузка новых моделей или использование облачных функций требует доступа к интернету. Установленный клиент может обращаться в сеть для этих целей. Не следует считать, что локальный сервер никогда не взаимодействует с внешними ресурсами. Также важно помнить, что качество ответов зависит от конкретной модели и вычислительных мощностей, а не от самого API. Не все модели работают одинаково эффективно на любом оборудовании.

Рекомендации для первого запуска

Начните с проверки наличия curl или другого HTTP-клиента. Убедитесь, что модель установлена и видна в списке. Отправьте простой тестовый запрос с отключенным потоком, чтобы получить полный ответ в одном пакете. Если соединение не устанавливается, проверьте статус процесса Ollama. Не пытайтесь настраивать переменные окружения для внешнего доступа на начальном этапе. Сосредоточьтесь на стабильной локальной работе и корректной обработке JSON-ответа.

Источники и проверка

Инструкция сверена с официальной документацией. Возможности и команды зависят от установленной версии.

Другие инструкции · Методология редакции