Об этом проекте
# Обзор llm-d Router
llm-d Router — это интеллектуальная точка входа для трафика инференса в средах Kubernetes, предназначенная для оптимизации обслуживания LLM за счёт маршрутизации с учётом нагрузки и префикс-кэша, приоритизации запросов и расширенного управления потоками. Он поддерживает различные форматы запросов и сложные цели обслуживания, что делает его пригодным для AI-развёртываний промышленного уровня.
## Основные компоненты
Репозиторий содержит несколько ключевых компонентов:
1. **Endpoint Picker (EPP)**: интеллектуальный механизм маршрутизации, выполняющий роль «мозга» роутера. Он оценивает входящие запросы относительно текущего состояния InferencePool, учитывая такие факторы, как локальность KV-кэша, текущая нагрузка и приоритет, чтобы принимать оптимальные решения о размещении. Он интегрируется с L7-прокси через протокол ext-proc.
2. **API управления запросами**: ресурсы, влияющие на поведение EPP:
- **InferenceObjective**: настраивает цели планирования для конкретных запросов, включая уровни приоритета и целевые показатели производительности.
- **InferenceModelRewrite**: обеспечивает переименование модели для гибкого управления трафиком, поддерживая A/B-тестирование и канареечные развёртывания.
3. **Disaggregation Sidecar**: координационный компонент, развёртываемый вместе с серверами моделей (обычно как sidecar для decode-воркеров). Он оркестрирует сложные многоэтапные жизненные циклы инференса, такие как P/D (Prefill/Decode) и E/P/D (Encode/Prefill/Decode), взаимодействуя со специализированными воркерами для управления передачей KV-кэша и эмбеддингов.
## Режимы работы
llm-d Router поддерживает два основных режима развёртывания:
### 1. Standalone Mode
Этот режим использует самостоятельно управляемый прокси Envoy без необходимости инфраструктуры Gateway API. Standalone Helm-чарт поддерживает две топологии:
- **Sidecar mode** (по умолчанию): прокси работает в поде EPP, подходит для базового тестирования и локальных оценок.
- **Service mode**: прокси работает как отдельный горизонтально масштабируемый Deployment и Service, достигая EPP через его Service. Установите `router.proxy.mode=service`, чтобы масштабировать прокси независимо.
### 2. Gateway Mode (Inference Gateway)
Рекомендуемый производственный режим использует официальный Kubernetes Gateway API. EPP выступает в качестве бэкенда для InferencePool, на который ссылается HTTPRoute на общем Gateway. Это обеспечивает расширенное управление трафиком, межкластерную балансировку нагрузки и общую инфраструктуру как для инференса, так и для традиционных рабочих нагрузок.
## Архитектура и документация
Проект предоставляет исчерпывающую документацию, включая:
- Детали архитектуры, логику маршрутизации и плагины (фильтры и скореры)
- Рекомендации по размеру контейнеров для тяжёлых рабочих нагрузок или нагрузок с длинным контекстом
- Спецификации формата логов OpenTelemetry JSON stdout
- Руководства по настройке disaggregation
- Инструкции по проверке артефактов для безопасности
## Технические требования
Для автоматической установки Envoy проект предоставляет инструменты, но ручная установка требует поддержки режимов тела запроса/ответа `FULL_DUPLEX_STREAMED` в фильтре ext-proc.
## Сообщество и вклад
Проект поощряет участие сообщества: проводятся встречи раз в две недели, есть выделенный канал Slack (#sig-router) и руководство по внесению вклада. Он следует руководству по внесению вклада организации llm-d, а крупные изменения следует сначала обсуждать через issues.
## Безопасность
Публикуемые образы контейнеров имеют подписанную аттестацию происхождения и SBOM (software bill of materials). Руководящие указания по сообщению о проблемах безопасности описаны в SECURITY.md, а также приведены инструкции по проверке выпущенных артефактов.
В целом, llm-d Router — это надёжное решение для организаций, стремящихся к интеллектуальной, масштабируемой маршрутизации инференса в Kubernetes, особенно для современных рабочих нагрузок LLM с требованиями disaggregated serving.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.