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

SGLang 0.5.21: API решений, Rust-кеш префиксов и изменения совместимости

Стабильный SGLang 0.5.21 добавил HTTP-маршрут /v1/decisions для выбора, оценки и ответов да/нет по вероятностям токенов без генерации текста. В этом же релизе Rust-ядро кеша префиксов включено по умолчанию, а передаваемые клиентом шаблоны чата отклоняются без явного разрешения. Перед обновлением своего inference-сервера стоит проверить шаблоны, старые эндпоинты и настройки кеша.

SGLang выпустил стабильный v0.5.21 2 октября 2026 года. Это обновление программного сервера инференса, а не выпуск новых весов: модель нужно выбрать и получить отдельно, соблюдая её собственную лицензию. Код SGLang в закреплённом теге распространяется по Apache-2.0; лицензия сервера не меняет условия использования весов. s1 s2

Что получает собственный сервер

Решения без генерации ответа. В закреплённом коде версии есть POST /v1/decisions. Он принимает вход и вопросы типов choice, score или yes_no, затем оценивает следующие токены допустимых меток вместо генерации и разбора произвольного текста. Для каждого вопроса возвращаются вероятности по предложенным вариантам и label_mass — доля общей вероятности словаря, пришедшаяся на метки. Это полезно для локальной маршрутизации обращений или предварительной сортировки документов, когда важна фиксированная схема ответа. Маршрут является расширением SGLang, а не методом OpenAI API. s1 s3 s4

Не всякая модель годится без проверки. Документация требует, чтобы метки ответа были различимыми одиночными токенами в позиции ответа, а шаблон чата не оставлял открытый блок рассуждений. Авторы проверили Qwen3.8-27B и Qwen3.5-35B-A3B на H200 в BF16; это условия авторской валидации, не минимальные требования к оборудованию. Вероятности среди меток не являются откалиброванной вероятностью правильного решения: порог передачи человеку нужно проверять на собственном размеченном наборе. Для воспроизводимости запросов API возвращает версию формата промпта и позволяет её закрепить. Мы не проводили собственного теста качества или скорости. s3

Кеш префиксов. Объединённое radix-дерево теперь использует ядро на Rust по умолчанию. Для несовместимых конфигураций предусмотрен автоматический возврат к реализации на Python; при диагностике можно явно выбрать её через SGLANG_UNIFIED_RADIX_TREE_CORE_BACKEND=python. Это изменение реализации кеша, а не обещание универсального ускорения для любой модели и нагрузки. s1 s5

Что проверить перед обновлением

  • Запросы к /v1/chat/completions и /v1/tokenize, которые присылают свой chat_template через chat_template_kwargs, теперь отклоняются по умолчанию. Запуск с --trust-request-chat-template возвращает доверие клиентскому шаблону; включать его стоит только для доверенных клиентов. Остальные параметры chat_template_kwargs не запрещены. s1 s4
  • Устаревшие /get_weight_version, /weight_version и /get_load удалены: используйте /model_info и /v1/loads. Старые имена некоторых переменных и алиасов квантизации также удалены — сравните свою конфигурацию со списком breaking changes релиза до перезапуска. s1
  • Для FlashInfer MoE режим fused finalize теперь выключен по умолчанию ради численной точности; возможен компромисс по задержке отдельных W4A4-сценариев. Не переносите чужие замеры производительности на свой стек без измерения. s1

Как попробовать без смешения лицензий

Официальный релиз указывает установку uv pip install --prerelease=allow sglang==0.5.21; пакет этой версии присутствует на PyPI. Для проверяемого эксперимента с Decisions API документация показывает локальный сервер python -m sglang.launch_server --model-path Qwen/Qwen3.8-27B --host 127.0.0.1 --port 30000 и HTTP-запрос к /v1/decisions. Сначала сверяйте доступность и лицензию выбранных весов, поддержку вашей платформы и память на собственной конфигурации. Привязка к 127.0.0.1 ограничивает сетевой доступ к примеру; это не эквивалент аутентификации при переносе сервера в сеть. s1 s3 s6

Практический следующий шаг: на тестовом сервере зафиксировать версию SGLang и модели, прогнать типовые вопросы с собственными эталонными метками, сравнить ответы и время обработки до и после обновления и лишь затем менять production. Сами вероятности API не заменяют проверку ошибок классификации. s3

Источники

  1. SGLang v0.5.21 — официальный GitHub release — Стабильный релиз от 02.10.2026; API, кеш, security и breaking changes.. Получено 05.10.2026.
  2. SGLang LICENSE в теге v0.5.21 — Лицензия кода Apache 2.0; не лицензия весов.. Получено 05.10.2026.
  3. SGLang decision models, документация в теге v0.5.21 — Типы вопросов, валидация, ограничения меток, условия авторской проверки и пример запуска.. Получено 05.10.2026.
  4. SGLang HTTP routes, pinned v0.5.21 — В закреплённом коде определены /v1/decisions, /v1/score и /v1/systemone.. Получено 05.10.2026.
  5. SGLang PR #39627 — Rust TreeCore default — PR смержен 29.09, релиз описывает default и Python fallback.. Получено 05.10.2026.
  6. sglang 0.5.21 — метаданные PyPI — Версия пакета и опубликованные артефакты.. Получено 05.10.2026.