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

Источник: https://modelium.tech/zhurnal/llama-cpp-server-props/

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

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

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

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

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

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

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

- `model_alias` — имя модели, которое сервер показывает клиентам; `model_path` — путь к файлу на этом компьютере. Сравните их **локально** со своей командой запуска. Совпадение имени и пути не проверяет происхождение весов или их качество. [s2](#src-s2)

- `default_generation_settings.n_ctx` — длина контекста **для одного слота** в текущей конфигурации, то есть сколько места есть для частей входного текста и ответа в этом слоте; это не обещание, что модель корректно обработает любой текст такой длины. Эти настройки относятся к endpoint `/completion`, а не к каждому отдельному запросу чата. [s1](#src-s1) [s2](#src-s2)

- `total_slots` — число настроенных мест для обработки запросов (параметр `--parallel`), **не** число запросов, занятых прямо сейчас. Чтобы узнать нагрузку, нужна [отдельная проверка слотов](/zhurnal/llama-cpp-server-slots/). [s1](#src-s1) [s2](#src-s2)

- `is_sleeping` — флаг сна, если вы отдельно включили сон после простоя; поле не измеряет оперативную или видеопамять. [Проверка сна и пробуждения](/zhurnal/llama-cpp-sleep-idle/) — другой сценарий. [s1](#src-s1) [s2](#src-s2)

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

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

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

**Следующий шаг:** если цель — понять текущую нагрузку, [проверьте слоты и очередь](/zhurnal/llama-cpp-server-slots/) у того же экземпляра. Путь и настройки — не тест качества ответа и не минимальные требования к памяти; собственный запуск и замер редакция не проводила. [s1](#src-s1) [s2](#src-s2)

## Источники

1. [llama.cpp v0.8.0 — README llama-server: GET /props и параметры](https://github.com/ggml-org/llama.cpp/blob/8642541b255bfb5dc39cd351a178be09013a55d6/tools/server/README.md) — получено 2026-11-01
2. [llama.cpp v0.8.0 — server-context.cpp: get_res_props и GET handler](https://github.com/ggml-org/llama.cpp/blob/8642541b255bfb5dc39cd351a178be09013a55d6/tools/server/server-context.cpp) — получено 2026-11-01
3. [llama.cpp v0.8.0 — server-http.cpp: проверка API-ключа](https://github.com/ggml-org/llama.cpp/blob/8642541b255bfb5dc39cd351a178be09013a55d6/tools/server/server-http.cpp) — получено 2026-11-01
4. [llama.cpp v0.8.0 — server.cpp: регистрация маршрутов](https://github.com/ggml-org/llama.cpp/blob/8642541b255bfb5dc39cd351a178be09013a55d6/tools/server/server.cpp) — получено 2026-11-01
