llama.cpp server health: проверить готовность и ответ модели
На странице · 3 разделов
На своём работающем llama.cpp server откройте /health: во время загрузки модели он отвечает HTTP 503, после готовности — HTTP 200. Но такой ответ не проверяет, как модель решает вашу задачу и свободен ли слот. Отправьте отдельный маленький запрос к модели и оцените полученный текст; редакция сверила инструкцию с кодом, но не запускала модель.
Ваш локальный llama.cpp server отвечает, но можно ли уже отправлять запрос? Его адрес /health различает загрузку модели и готовность сервера. После этого нужен отдельный короткий запрос: зелёный статус не оценивает содержание ответа. Это инженерная диагностика уже работающего сервера, а не инструкция домашней установки. s1 s2
Статус проверки: инструкция сверена с документацией и исходным кодом версии v0.8.0; редакция не запускала llama-server и модель. Нужен свой компьютер с Linux, терминал с curl, уже работающий сервер и локальный файл модели GGUF. Установка сервера и загрузка весов — отдельный шаг, для которого может понадобиться интернет; приведённые запросы идут к адресу вашего компьютера. Минимальный объём RAM/VRAM зависит от модели и режима, здесь он не установлен. Если сервера ещё нет, начните с руководства по llama.cpp. s1
Как отличить загрузку от готовности?
На том же компьютере откройте второй терминал. Выполните curl -i --max-time 10 'http://127.0.0.1:9931/health'. Здесь 127.0.0.1 означает собственный компьютер, а 9931 — порт по умолчанию в указанной версии; если при запуске задан другой --host или --port, подставьте свой адрес и порт. Не открывайте сервер в интернет ради этой проверки. s1
При загрузке ожидается HTTP 503 и сообщение Loading model; попробуйте снова после окончания загрузки. При готовности ожидается HTTP 200 и {"status":"ok"}. Если соединения нет, проверьте запущенный процесс и адрес, а не объявляйте модель сломанной. /health остаётся публичным даже при настроенном API-ключе: его 200 не подтверждает, что защищённый запрос сможет пройти авторизацию. В режиме сна сервер тоже может отвечать на /health; 200 не доказывает, что модель сейчас активна в памяти. s1 s2 s3
Как проверить сам ответ модели?
Если у вас не настроен API-ключ, отправьте в том же терминале маленький учебный запрос: curl -i --max-time 60 -H 'Content-Type: application/json' -d '{"prompt":"Ответь одним словом: столица Франции?","n_predict":32,"stream":false}' 'http://127.0.0.1:9931/completion'. Ответ может отличаться по формулировке; проверьте HTTP-статус и поле content, затем вручную сопоставьте текст с вопросом. Это пример для вашей модели, не воспроизведённый результат Modelium. Если в вашем экземпляре включён API-ключ, запрос без него даст 401: используйте собственную безопасную настройку клиента, не публикуйте ключ в команде или отчёте. POST /completion — интерфейс llama.cpp, а не совместимый с OpenAI адрес. s1 s2
Чего не доказывает зелёный статус?
Успешный /health не проверяет свободный слот обработки, содержательную правильность ответа, скорость или доступность модели другим компьютерам. Ошибку 503 во время загрузки не следует путать с нехваткой слотов у уже работающего сервера: для занятости есть отдельная проверка слотов. Даже если учебный вопрос получился, на своих документах и задачах проверяйте факты отдельно. Команды здесь проверяются по исходному коду и на безопасной заглушке, не на запущенной модели. s1 s3
Следующий шаг: проверьте слоты сервера, если собираетесь принимать параллельные запросы. s1
Источники
- llama.cpp v0.8.0 — README llama-server: health, completion, host и port — revision 8642541b255bfb5dc39cd351a178be09013a55d6; GET /health, POST /completion, --host, --port; pinned snapshot and SHA in research/raw/2026-11-01/seo/llama-cpp-server-health/.. Получено 01.11.2026.
- llama.cpp v0.8.0 — server-http.cpp: middleware readiness and public route — revision 8642541b255bfb5dc39cd351a178be09013a55d6; Lines 251–361: /health bypasses API key, loading middleware returns 503.. Получено 01.11.2026.
- llama.cpp v0.8.0 — server-context.cpp: health response and slots — revision 8642541b255bfb5dc39cd351a178be09013a55d6; Lines 5716–5726: health returns status ok, including sleeping case; slots are a separate endpoint.. Получено 01.11.2026.