Перейти к содержанию
modelium.
Начать с задачи
←

llama.cpp server: как прочитать свойства запущенной модели через /props

На уже работающем локальном llama.cpp server адрес GET /props показывает имя выбранной модели, длину контекста для слота и число слотов. Для чтения не нужен флаг --props: он разрешает изменение свойств через POST. Не публикуйте полный ответ сервера: в нём может быть путь к файлу модели и код подключения. Эти поля не заменяют пробный ответ модели.

Хотите узнать, какую модель и длину контекста сейчас показывает ваш локальный llama.cpp server? Адрес /props возвращает его свойства в виде JSON — текста с именованными полями. Это инженерная проверка уже работающего сервера, а не способ установить модель или доказать, что она хорошо отвечает. s1 s2

Статус: инструкция сверена с документацией и исходным кодом релиза v0.8.0 от 28 октября 2026 года; редакция не запускала сервер и модель. Нужны Linux, свой работающий llama-server с уже выбранным GGUF-файлом (файлом весов модели), терминал и curl — программа для обращения к локальному адресу. Для подготовки программы и весов может потребоваться сеть; запрос ниже идёт к своему компьютеру. Если сервер ещё не настроен, начните с общего гайда. s1

Как получить свойства без изменения сервера?

На компьютере, где работает сервер, откройте второй терминал. Убедитесь, что ваш экземпляр слушает 127.0.0.1:8080: эти адрес и порт в примере должны совпадать с его реальными параметрами --host и --port. Не открывайте сервер во внешнюю сеть ради проверки. Сначала выполните curl -i 'http://127.0.0.1:8080/health'. При готовности ожидается HTTP 200; во время загрузки модели возможен 503. Ответ /health ещё не подтверждает правильность ответа модели. s1 s3 s4

Затем в том же терминале выполните curl --fail-with-body -sS 'http://127.0.0.1:8080/props'. Ожидается JSON со свойствами; запрос GET ничего не меняет на одиночном сервере. Флаг --props для этого не нужен: он разрешает изменяющий запрос POST, который здесь не используется. Не копируйте весь JSON в публичный чат или баг-репорт: поле model_path раскрывает локальный путь, а при включённом туннеле может присутствовать и connect_code. Если вы настроили API-ключ, этот запрос потребует авторизации; не вставляйте ключ в публичный пример. s1 s2 s3 s4

Какие поля сверить с собственным запуском?

  • model_alias — имя модели, которое сервер показывает клиентам; model_path — путь к файлу на этом компьютере. Сравните их локально со своей командой запуска. Совпадение имени и пути не проверяет происхождение весов или их качество. s2
  • default_generation_settings.n_ctx — длина контекста для одного слота в текущей конфигурации, то есть сколько места есть для частей входного текста и ответа в этом слоте; это не обещание, что модель корректно обработает любой текст такой длины. Эти настройки относятся к endpoint /completion, а не к каждому отдельному запросу чата. s1 s2
  • total_slots — число настроенных мест для обработки запросов (параметр --parallel), не число запросов, занятых прямо сейчас. Чтобы узнать нагрузку, нужна отдельная проверка слотов. s1 s2
  • is_sleeping — флаг сна, если вы отдельно включили сон после простоя; поле не измеряет оперативную или видеопамять. Проверка сна и пробуждения — другой сценарий. s1 s2

Учебный критерий: если вы запустили одиночный сервер с выбранным GGUF и --parallel 2, ожидайте total_slots: 2; если видите иное, сначала сверьте, к какому процессу и порту обращаетесь. Это иллюстрация чтения поля из документации, не результат запуска Modelium. Для проверки самой модели задайте ей короткий вопрос на собственном локальном стенде и сверьте реальный ответ с вопросом: /props не генерирует ответ. s1 s2

Что делать, если ответ отличается или не приходит?

Если соединение не установлено, проверьте адрес, порт и состояние своего процесса, прежде чем менять его настройки. При HTTP 503 дождитесь завершения загрузки модели; при 401 проверьте авторизацию в вашем окружении, но не выкладывайте ключ и полный JSON. В режиме маршрутизатора многих моделей простой запрос отличается: документация требует параметр model, а чтение может автоматически загрузить выбранную модель; этот гайд рассчитан только на один уже запущенный экземпляр, не предлагает router-запрос как безопасное чтение без последствий. s1 s3

Следующий шаг: если цель — понять текущую нагрузку, проверьте слоты и очередь у того же экземпляра. Путь и настройки — не тест качества ответа и не минимальные требования к памяти; собственный запуск и замер редакция не проводила. s1 s2

Источники

  1. llama.cpp v0.8.0 — README llama-server: GET /props и параметры — revision 8642541b255bfb5dc39cd351a178be09013a55d6; Раздел GET /props, --props, router mode, сон и адрес/порт; сырой снимок и SHA в research/raw/2026-11-01/seo/llama-cpp-server-props/.. Получено 01.11.2026.
  2. llama.cpp v0.8.0 — server-context.cpp: get_res_props и GET handler — revision 8642541b255bfb5dc39cd351a178be09013a55d6; Строки 5657–5695 и 5866–5884: поля, путь, connect_code при включённом туннеле, доступ во сне, ограничение POST.. Получено 01.11.2026.
  3. llama.cpp v0.8.0 — server-http.cpp: проверка API-ключа — revision 8642541b255bfb5dc39cd351a178be09013a55d6; Строки 250–307: GET /props не в публичных исключениях при настроенном ключе, а без ключа middleware не ограничивает его.. Получено 01.11.2026.
  4. llama.cpp v0.8.0 — server.cpp: регистрация маршрутов — revision 8642541b255bfb5dc39cd351a178be09013a55d6; Строки 170–181: отдельно зарегистрированы GET и POST /props, GET /health.. Получено 01.11.2026.