Введение
KServe
Alauda Build of KServe основан на KServe. KServe предоставляет стандартизированный, облачно-нативный интерфейс для масштабируемого сервинга моделей машинного обучения на Kubernetes. Он развивался вокруг двух основных сценариев: Predictive AI для традиционного ML-инференса и Generative AI для рабочих нагрузок на базе LLM.
Generative AI
Поддержка Generative AI оптимизирована для сервинга больших языковых моделей (LLM) с API, совместимыми с OpenAI.
- llm-d (Distributed LLM Inference): Kubernetes-нативный распределённый фреймворк инференса, работающий под управлением KServe control plane. llm-d оркестрирует многозвенный LLM-инференс с использованием паттерна Leader/Worker и принимает решения о маршрутизации в реальном времени на основе состояния KV-кэша и загрузки GPU — обеспечивая планирование запросов с учётом KV-кэша, эластичный тензорный/конвейерный параллелизм и кластерный инференс, который ведёт себя как единая машина. Это снижает стоимость на токен и максимизирует использование GPU для больших моделей (например, Llama 3.1 405B), превышающих память одного узла.
- LLM Inference & Streaming: Нативная поддержка потоковой передачи ответов (SSE / chunked transfer), обеспечивающая доставку токенов в реальном времени для задач чата и дополнения, с API, совместимыми с OpenAI
/chat/completionsи/completions. - vLLM Runtime: Интеграция первого класса с vLLM в качестве высокопроизводительного бэкенда для сервинга LLM, с поддержкой непрерывного батчинга и PagedAttention.
- Gateway Integration: Нативная интеграция с Envoy Gateway и Gateway API Inference Extension (GIE) для AI-ориентированной маршрутизации трафика, балансировки нагрузки и ограничения скорости на модель в сервисах инференса.
- Autoscaling for LLMs: Автоматическое масштабирование на основе метрик, адаптированное к характеристикам пропускной способности LLM, включая масштабирование до нуля для экономии затрат.
Predictive AI
Predictive AI охватывает традиционный сервинг моделей машинного обучения с высокими требованиями к пропускной способности и низкой задержке.
- InferenceService: Основной CRD для развертывания и управления конечными точками сервинга моделей. Поддерживает канареечные релизы, распределение трафика между версиями моделей и A/B тестирование.
- Model Serving Runtimes: Предварительно интегрированные рантаймы для популярных ML-фреймворков — TensorFlow Serving, TorchServe, Triton Inference Server, SKLearn, XGBoost и др. Пользовательские рантаймы поддерживаются через CRD ClusterServingRuntime и ServingRuntime.
- Inference Graph: CRD InferenceGraph позволяет составлять конвейеры из нескольких моделей, включая узлы пред- и постобработки, логику маршрутизации и ансамблевые паттерны.
- Autoscaling: Поддержка масштабирования до нуля и из нуля через KEDA или Kubernetes HPA с политиками на основе скорости запросов, глубины очереди или пользовательских метрик.
Для установки на платформе смотрите Install KServe.
Документация
Документация KServe upstream и ключевые зависимости:
- KServe Documentation: https://kserve.github.io/website/ — Официальная документация, охватывающая концепции, рантаймы сервинга моделей и справочники по API.
- KServe GitHub: https://github.com/kserve/kserve — Исходный код, заметки о релизах и задачи.
- llm-d: https://github.com/llm-d/llm-d — Kubernetes-нативный распределённый фреймворк LLM-инференса с планированием с учётом KV-кэша и эластичным параллелизмом.
- LeaderWorkerSet (LWS): https://github.com/kubernetes-sigs/lws — Контроллер рабочих нагрузок Kubernetes SIG для многозвенных паттернов Leader/Worker, необходимый для многозвенного LLM-инференса.
- Envoy Gateway: https://gateway.envoyproxy.io/ — Kubernetes-нативный шлюз на базе Envoy Proxy, обеспечивающий управление трафиком для сервисов инференса KServe.
- Envoy AI Gateway: https://aigateway.envoyproxy.io/ — AI-специфичные возможности шлюза, построенного поверх Envoy Gateway, включая AI-ориентированную маршрутизацию и политики на модель.
- Gateway API Inference Extension (GIE): https://gateway-api-inference-extension.sigs.k8s.io/ — Проект Kubernetes SIG, предоставляющий AI-ориентированную маршрутизацию и балансировку нагрузки для сервисов инференса.