# mlx-vlm 0.7.6: типизированные решения и восстановление длинного контекста на Mac

Источник: https://modelium.tech/zhurnal/mlx-vlm-0-7-6-decision-api-context-compaction-mac/

5 октября вышли mlx-vlm 0.7.5 и затем 0.7.6. Первая версия добавила общий API типизированных решений для подготовленных Decider и Laya, CLI и серверный /v1/decisions; вторая расширила сжатие переполненных диалогов и события прогресса для Responses API. Это обновление локального движка, а не релиз новых весов. Для Decider нужен чекпойнт с правильной конфигурацией, а сжатие не спасает отдельный обмен, который сам больше окна модели.

## Что вышло

5 октября 2026 года проект mlx-vlm выпустил v0.7.5, а менее чем через час — v0.7.6. В PyPI уже доступен пакет 0.7.6. Важное отличие от очередной публикации чекпойнта: здесь обновился runtime для локального вывода, прежде всего в экосистеме MLX на Apple Silicon. Версия 0.7.5 ввела общий интерфейс типизированных решений и добавила обработку Qwen3-Omni пачками; 0.7.6 дополнила механизм сжатия длинных разговоров и восстановления запросов при переполнении контекста. [s1](#src-s1) [s2](#src-s2) [s3](#src-s3)

## Зачем нужен API решений

Новый `predict(model, processor, state, questions)` принимает текст ситуации и набор именованных вопросов; CLI `python -m mlx_vlm decide` и серверный `/v1/decisions` используют тот же интерфейс. Поддержка Decider и Laya вошла через отдельные изменения кода. Это полезно для маршрутизации обращений, выбора категории или оценки по заданной шкале без необходимости извлекать ответ из свободного текста генеративной модели. Например, документация показывает выбор отдела для сообщения о повторном списании: billing, technical или sales. Это пример формата, не проверка точности маршрутизации Modelium. [s1](#src-s1) [s4](#src-s4) [s5](#src-s5)

Практический путь на поддерживаемом Mac: установить `mlx-vlm==0.7.6`, затем для подготовленного чекпойнта `nativ-community/decider-2b` вызвать `python -m mlx_vlm decide --model nativ-community/decider-2b --state 'Please refund my duplicate charge' --questions '{"department":{"type":"choice","instructions":"Which team should handle this ticket?","criteria":["billing","technical","sales"]}}'`. Серверный вариант требует предварительно загрузить decision-модель через `--decision-model`; без неё либо явного `model` запрос на `/v1/decisions` получает HTTP 400. Команды сверены с README закреплённого тега, но Modelium не запускал модель и не измерял качество. [s4](#src-s4) [s6](#src-s6)

Важное ограничение: Decider-чекпойнту нужен `model_type: decider2`, параметры `decision_config` и токенизатор в корне пакета. Старый конвертированный пакет или исходный чекпойнт без этой подготовки не следует считать совместимым только по названию модели. Для Laya нужна своя подготовленная конфигурация; совместимость произвольного репозитория с Laya релиз не обещает. Автор PR сообщает о тестах и сравнении нескольких реальных примеров, но это результаты разработчика, не независимый тест Modelium. [s5](#src-s5) [s7](#src-s7)

## Что изменилось с длинными диалогами

Согласно документации тега 0.7.6, Chat Completions теперь может автоматически сжать историю, когда вход вместе с резервом под ответ не помещается в окно модели. Для Responses API доступен ранний запуск через `context_management` и отдельный `/v1/responses/compact`. Потоковые запросы получают события `mlx.compaction.started` и `mlx.compaction.completed`, чтобы клиент показывал ход операции; ошибка не маскируется под успешный ответ. Авторы ограничивают попытки суммаризации восемью проходами и сохраняют инструкции и целые группы вызовов инструментов. [s2](#src-s2) [s8](#src-s8)

Это не увеличение собственного контекстного окна модели и не гарантия сохранения каждой детали: старые сообщения суммаризуются, а один слишком большой обмен по-прежнему может вызвать ошибку. В Chat Completions восстановление действует для отдельного запроса; клиент, который каждый раз отправляет полную исходную историю, может снова запустить сжатие. Отправлять секреты в непрозрачных объектах сжатия между чужими серверами не стоит: документация говорит о привязке состояния к ключу, модели и арендатору. Результаты шести live API-тестов на двух моделях в описании PR — авторская проверка; в том же PR отмечены воспроизводимые проблемы со сбросом деталей summary в отдельных стресс-сценариях. [s8](#src-s8) [s9](#src-s9)

## Версия, права и следующий шаг

Код mlx-vlm опубликован под MIT, а пакет 0.7.6 присутствует в PyPI. Это разрешение для кода runtime; оно не меняет условия использования весов выбранной модели. Проверьте отдельную карточку и лицензию весов перед коммерческим внедрением. Если уже используете mlx-vlm для локального ассистента, разумный контроль после обновления — прогнать свои длинные диалоги и запросы решений с собственными критериями, сравнить ответы и поведение при превышении контекста на вашей модели и устройстве. Новых замеров скорости или требований к памяти этот выпуск сам по себе не устанавливает. [s3](#src-s3) [s10](#src-s10)

## Источники

1. [mlx-vlm v0.7.5 release](https://github.com/Blaizzy/mlx-vlm/releases/tag/v0.7.5) — получено 2026-10-05
2. [mlx-vlm v0.7.6 release](https://github.com/Blaizzy/mlx-vlm/releases/tag/v0.7.6) — получено 2026-10-05
3. [PyPI mlx-vlm 0.7.6 metadata](https://pypi.org/pypi/mlx-vlm/0.7.6/json) — получено 2026-10-05
4. [mlx-vlm v0.7.6 README: decision models](https://github.com/Blaizzy/mlx-vlm/blob/v0.7.6/README.md) — получено 2026-10-05
5. [mlx-vlm PR 2396: Decider typed decision API](https://github.com/Blaizzy/mlx-vlm/pull/2396) — получено 2026-10-05
6. [mlx-vlm v0.7.6 decisions server implementation](https://github.com/Blaizzy/mlx-vlm/blob/v0.7.6/mlx_vlm/server/decisions.py) — получено 2026-10-05
7. [mlx-vlm PR 2397: Laya typed decision API](https://github.com/Blaizzy/mlx-vlm/pull/2397) — получено 2026-10-05
8. [mlx-vlm v0.7.6 usage: conversation compaction](https://github.com/Blaizzy/mlx-vlm/blob/v0.7.6/docs/usage.md) — получено 2026-10-05
9. [mlx-vlm PR 2418: context overflow recovery](https://github.com/Blaizzy/mlx-vlm/pull/2418) — получено 2026-10-05
10. [mlx-vlm v0.7.6 MIT LICENSE](https://github.com/Blaizzy/mlx-vlm/blob/v0.7.6/LICENSE) — получено 2026-10-05
