Что нового в Quartermaster 1.7: decision-модели llama.cpp
Quartermaster 1.7 научился обслуживать decision-модели llama.cpp, работающие через эндпоинт /v1/systemone. Сам Quartermaster работает как локальный менеджер инференса: один сервер, который подгружает и выгружает из VRAM модели llama.cpp, изображений, аудио и видео. До версии 1.7 decision-моделей в этой схеме не было.
Обновление приносит четыре вещи:
- автообнаружение decision GGUF в папке моделей и отдельную запись в конфиге с расчётом VRAM;
- вкладку Playground для быстрой проверки поведения модели;
- вкладку Decision в браузере моделей, которая ищет такие модели на Hugging Face;
- проксирование запросов
POST /v1/systemoneчерез планировщик и API-ключи Quartermaster.
Описание обновления опубликовано в посте r/LocalLLaMA от 13 октября 2026 года.
Что такое decision-модели и зачем они нужны
Decision-модель не продолжает диалог текстом. Она отвечает выбором из набора вариантов, который задаёт форма ответа. Отсюда и устройство вкладки Playground: отдельное поле для одного вопроса, выбор формы и результат в виде полосы вероятности для каждого варианта, а не абзаца сгенерированного текста.
Такой режим закрывает задачи выбора и классификации, где нужен один ответ из нескольких заранее известных. Чат-модель решает другую задачу: разворачивает ответ текстом и рассуждает по шагам. Decision-модели дополняют чат-модель, а не заменяют её.
Примеры GGUF-моделей этого класса, названные в источнике: Kev, OpenJev, Laya. Перечень открытый, многоточие в исходном описании оставляет место для других моделей.
Чем это отличается от обычных чат-моделей в Quartermaster
С точки зрения управления не меняется почти ничего. Decision GGUF лежит в той же папке моделей, получает запись в конфиге с расчётом VRAM и обслуживается тем же сервером. Второй инстанс llama.cpp, отдельный порт и ручное переключение между моделями не нужны.
Запрос POST /v1/systemone проходит через планировщик и API-ключи Quartermaster, поэтому decision-модель подгружается в VRAM рядом с чат-моделью как обычный запрос. Слово «подгружается» здесь ключевое: планировщик управляет загрузкой и выгрузкой, а не держит все модели в памяти постоянно. Бюджет VRAM всё равно придётся планировать.
Как запустить decision-модель в Quartermaster 1.7
Порядок действий:
- Обновить сборку llama.cpp до upstream b11361 или новее.
- Положить decision GGUF в папку моделей.
- Дождаться автообнаружения и проверить появившуюся запись в конфиге.
- Отправить запрос на
POST /v1/systemoneили проверить модель во вкладке Playground.
Требования к сборке llama.cpp: b11361 и новее
Эндпоинт /v1/systemone появился в llama.cpp не сразу. Нужна сборка upstream b11361 или новее. На более старых сборках Quartermaster выдаст предупреждение, и decision-модель не заработает. Речь идёт именно об upstream-версии, а не о форке: сторонние сборки могут отставать от апстрима по номеру билда, и тогда поддержки эндпоинта в них может не оказаться. Проверить номер своей сборки стоит до того, как раскладывать GGUF по папкам.
Автообнаружение GGUF и запись в конфиге с расчётом VRAM
Ручное прописывание модели не требуется: достаточно положить файл в папку моделей. Quartermaster сам создаёт запись в конфиге и оценивает, сколько VRAM займёт модель, как и для остальных типов моделей. Оценка нужна, чтобы понимать, влезет ли decision-модель рядом с уже загруженной чат-моделью на вашей GPU. Формат конфига и точные имена полей в источнике не раскрыты, поэтому сверяйтесь с тем, что Quartermaster создал сам.
Логика подсчёта та же, что и для чат-моделей: в разборе запуска Qwen 3.8 27B на 16 ГБ VRAM показаны бюджет памяти, гибридная квантизация и GPU offload. Те же принципы пригодятся и для decision GGUF.
Вкладка Playground: быстрая проверка поведения decision-модели
Playground нужен для проверки модели без кода и без внешнего клиента. Сценарий такой: вы пишете промпт, задаёте один вопрос, выбираете форму ответа и нажимаете Run. Каждый вариант ответа возвращается с полосой вероятности.
Форма ответа задаёт набор вариантов, среди которых модель делает выбор, и превращает свободный текст в задачу выбора. Условный пример формата: промпт описывает правило отбора, вопрос содержит ситуацию, а форма ответа перечисляет возможные решения. Это иллюстрация структуры запроса, а не готовая инструкция из обновления.
Как читать полосы вероятности
Полоса показывает, как модель распределила уверенность между вариантами. Один доминирующий вариант означает, что модель склоняется к нему. Несколько сопоставимых полос означают, что выбор для модели неочевиден. В источнике нет утверждения, что это калиброванные вероятности, поэтому относитесь к полосам как к относительной уверенности на конкретном промпте, а не как к доле правильных ответов. Для быстрой проверки поведения этого хватает: видно, реагирует ли модель на формулировку промпта и не выдаёт ли один и тот же вариант на разные вопросы.
Вкладка Decision в браузере моделей: поиск на Hugging Face
В браузере моделей появилась вкладка Decision, которая ищет decision-модели на Hugging Face. Она избавляет от ручного перебора репозиториев. Примеры моделей этого класса: Kev, OpenJev, Laya, при этом список открытый и этими тремя не исчерпывается.
Дополнительных фильтров и сортировок вкладки источник не описывает, поэтому оценивать найденное стоит по обычным критериям: размер, квантование, требования к VRAM и совместимость с вашей сборкой llama.cpp. Общий чек-лист по этим параметрам собран в материале как выбрать модель для локального запуска без перебора всех карточек.
Как это работает под капотом: планировщик, API-ключи и VRAM
Весь трафик к decision-модели идёт через Quartermaster. Запрос POST /v1/systemone проходит через планировщик и API-ключи, то есть используется тот же API, что и для остальных моделей. Клиенту не нужно знать, куда загружена модель и сколько их сейчас в VRAM.
API-ключи дают контроль доступа: сторонний скрипт обратится к decision-модели только с валидным ключом Quartermaster. Планировщик решает, что и когда загрузить или выгрузить, чтобы выполнить запрос.
Что значит «подгружается рядом с чат-моделью»
Decision-модель подгружается в VRAM рядом с чат-моделью как обычный запрос. Речь о поведении планировщика при поступлении запроса, а не о постоянном совместном размещении: в источнике сказано, что модель swaps in next to your chat model like any other request, то есть занимает VRAM на время обработки. Если обе модели должны отвечать мгновенно, запас видеопамяти придётся считать по сумме, а не по одной модели. Точных цифр потребления для конкретных decision GGUF в источнике нет, поэтому ориентируйтесь на оценку, которую Quartermaster посчитал для записи в конфиге.
Ограничения и подводные камни Quartermaster 1.7
- Зависимость от свежей сборки. Без llama.cpp upstream b11361 или новее эндпоинт
/v1/systemoneнедоступен, Quartermaster ограничится предупреждением. - Неполный список моделей. Kev, OpenJev и Laya приведены как примеры. Другие decision GGUF могут вести себя иначе, совместимость конкретной модели стоит проверять отдельно.
- Расход VRAM. Decision-модель подгружается рядом с чат-моделью, поэтому запас видеопамяти должен покрывать оба варианта, если вы хотите обойтись без частых переключений.
- Это не замена чат-модели. Задачи, где нужен развёрнутый ответ текстом, decision-модель не закрывает.
- Молодой класс моделей. Экосистема decision-моделей в llama.cpp только формируется, практика их применения ограничена выбором среди заданных вариантов.
Исходное описание обновления со всеми изменениями: пост автора обновления в r/LocalLLaMA.
Кому и когда стоит обновляться до Quartermaster 1.7
Обновление имеет смысл, если вы уже держите Quartermaster для локального инференса и вам нужны задачи выбора: классификация, выбор одного варианта из списка, быстрая проверка того, как модель реагирует на формулировку вопроса. Вкладка Playground полезна и сама по себе, если хочется посмотреть распределение вероятностей по вариантам без написания клиента к API.
Если decision-модели вам не нужны, обновление не критично. Перед установкой проверьте сборку: без llama.cpp upstream b11361 или новее новая функциональность не запустится, и Quartermaster предупредит об этом прямым текстом.