Суть инновации: Jev-подход в vLLM
В репозиторий vLLM добавлен прототип сервера, реализующего концепцию Jev (Jev-like models). В отличие от стандартных autoregressive-моделей, этот подход использует диффузионные механизмы для генерации структурированных ответов с фиксированными позициями в «холсте» (canvas). Ключевое отличие — модель возвращает не только токен-ответ, но и logprobs (логарифмические вероятности), из которых клиент может вычислить энтропию и, следовательно, уверенность модели в данном ответе.
Если энтропия превышает заданный порог, система может инициировать повторную выборку (resampling) для подтверждения согласия между запусками, что значительно снижает риск галлюцинаций в критических задачах.
Технические детали и ограничения
Прототип работает с моделью DiffusionGemma (версия 26B-A4B-it-NVFP4). Архитектура накладывает строгое ограничение: выбор токенов должен быть однотокенным (single-token), чтобы не сдвигать позиции в холсте. Многотокенные варианты (например, moderation_spam) должны быть предварительно маппированы клиентом на уникальные одно-токенные идентификаторы (например, A).
Для управления процессом введены новые параметры в vllm_xargs:
- diffusion_seed_canvas: предзаполнение холста фиксированными токенами.
- diffusion_read_only: режим только для чтения, который пропускает шаг коммита и возвращает argmax на этапе конвергенции.
- diffusion_max_steps: ограничение количества шагов денуайзинга (по умолчанию 1 для скорости).
Производительность на DGX Spark
Тестирование проводилось на аппаратной платформе NVIDIA DGX Spark с одним активным GPU. Использовалась конфигурация с 32-строчным холстом и кэшированием префиксов. Результаты показывают высокую пропускную способность при сохранении низкой задержки:
| Параметр | Значение | Примечание |
|---|---|---|
| Single-read (1 запрос) | 8.7 req/s | Задержка: 0.12 с |
| Concurrent (32 запроса) | 54.0 req/s | Задержка: 0.58 с |
| Общая пропускная способность | ~162 decisions/s | Суммарное количество принятых решений в секунду |
Пример запроса и структура ответа
Запрос отправляется через стандартный OpenAI-совместимый интерфейс, но с расширенными аргументами. Модель обрабатывает системный промпт, содержащий схему вопросов, и возвращает токены с их вероятностями. Это позволяет клиенту самостоятельно определять, является ли ответ статистически значимым, или требуется переспрашивание.
Данный PR также включает исправления багов для параллельной генерации (race conditions при lockstep) и поддержку мультимодальности, что делает прототип ближе к production-ready состоянию, хотя и требует доработки синтаксиса шаблонов в будущих релизах.
Источник: Github ↗
