Buoyant выпустила Kinference — управляющий слой для маршрутизации запросов к моделям vLLM в Kubernetes. Проект добавляет политики маршрутизации, балансировку с учётом KV-кэша и метрики по арендаторам. О выпуске и результатах тестирования 7 ноября 2026 года сообщил MarkTechPost.
Как Kinference меняет маршрутизацию
Kinference размещается перед группой рабочих узлов vLLM и выбирает, куда направить запрос. Правила могут учитывать арендатора, запрошенную модель, состояние пула GPU и семантические теги. В одном управляющем слое также предусмотрены ограничения скорости по токенам и метрики по арендаторам. Политики хранятся в Kubernetes-ресурсах и, по материалу MarkTechPost, могут проверяться офлайн с помощью CLI kinfctl.
Среди описанных сценариев — отправка простых запросов на менее дорогую модель, если перекрытие KV-кэша не делает большую модель быстрее. Для всплеска нагрузки правило может пропускать рабочие узлы, в очереди которых больше двух запросов, и использовать внешнего провайдера. Запросы с тегом PII можно оставить только на локальных узлах и отклонить, если подходящего направления нет. При выборе конечной точки Kinference учитывает прогнозируемое время до первого токена, длину очереди и перекрытие кэша.
Какие результаты показала Buoyant
В опубликованном сравнении использовались три пода vLLM версии 0.31.0, каждый с одним GPU L40S, модель Qwen3.8-27B-FP8 и генератор нагрузки GuideLLM 0.8.1. Базовым вариантом была маршрутизация через Kubernetes Service.
| Нагрузка | Kubernetes Service | Kinference | Медианное TTFT |
|---|---|---|---|
| Без общего префикса | 6,92 с | 6,83 с | Заметного выигрыша нет |
| Общий префикс | 6,88 с | 0,31 с | Снижение примерно на 95% |
| Многоходовые запросы | 1,70 с | 0,59 с | Снижение примерно на 65% |
В тесте пропускной способности goodput — число запросов в минуту, укладывающихся в заданный SLO, — на нагрузке с общим префиксом составил 103,0 запроса в минуту против 14,0 у Kubernetes Service, примерно в 7,4 раза больше. Для многоходовых запросов показатели составили 82,7 и 23,8 запроса в минуту соответственно, примерно в 3,5 раза. Эти показатели сравнивают два варианта маршрутизации, а не долю успешных запросов от общего числа попыток.
Для каких нагрузок это может быть полезно
По приведённым Buoyant результатам наибольшая разница появилась при общем префиксе и в многоходовых запросах — сценариях, где сохранение состояния KV-кэша может влиять на задержку. На запросах без общего префикса медианное время до первого токена изменилось незначительно: 6,92 секунды у Kubernetes Service против 6,83 секунды у Kinference. Поэтому цифры не показывают одинакового ускорения для всех типов запросов.
Что ограничивает сравнение
Это самотестирование Buoyant: базовым вариантом была случайная маршрутизация через Kubernetes Service, а не другой маршрутизатор с учётом KV-кэша, например llm-d или Dynamo. Измерения проводились на трёх GPU L40S, одной модели и заданных сценариях; Buoyant отмечает, что использованные SLO в 8 и 4 секунды лучше соответствуют офлайн-агентам, чем обычному чату. В публикации проект указан как v0.1.0-alpha.7; цена и независимые подтверждения результатов не приведены. Поэтому тест описывает конкретное сравнение, но не устанавливает преимущество Kinference над специализированными альтернативами или результат для других кластеров.







