Слой управления KV-кэшем, который хранит, передаёт и повторно использует кэши внимания LLM между serving-движками, сокращая время до первого токена.
microsoft/vidur
Высокоточный симулятор систем инференса LLM, позволяющий изучать производительность, планировать развертывание и проверять идеи по планированию без GPU.
- Звёзды
- 720
- Форки
- 142
- Открытые issues
- 24
- Последний коммит
- 3 месяца назад
Что это?
Vidur симулирует обработку запросов большими языковыми моделями в кластерах GPU. Он моделирует такие метрики, как время до первого токена (TTFT), время на выходной токен (TPOT), полная задержка обработки запроса и размер пакета для выбранной нагрузки, модели и конфигурации оборудования. Сначала симулятор проводит короткий этап профилирования на реальных GPU, после чего эксперименты можно выполнять без доступа к ним.
Основные сценарии использования — изучение поведения моделей при разных схемах трафика, поиск наиболее экономичного варианта развертывания (например, настройка тензорного и конвейерного параллелизма для заданного SLO), а также прототипирование новых алгоритмов планирования и оптимизаций, таких как спекулятивное декодирование. Поддерживаются модели Llama-2, Llama-3, CodeLlama, InternLM и Qwen, а также конфигурации узлов с A100, H100 и A40. Нагрузку можно создавать синтетическими генераторами или брать из трасс инференса LLM в Azure. Результаты записываются в wandb или локальные файлы; также можно экспортировать трассы Chrome.
Ключевые возможности
- 01Оценивает TTFT, TPOT, полную задержку и размер пакета для рабочих нагрузок инференса LLM.
- 02После начального этапа профилирования на целевом оборудовании работает без GPU.
- 03Поддерживает различные сочетания тензорного и конвейерного параллелизма на нескольких типах узлов с GPU.
- 04Принимает синтетические генераторы запросов и трассы инференса LLM в Azure.
- 05Экспортирует трассы Chrome и записывает метрики в wandb или локальные каталоги.
- 06Позволяет расширять симулятор для проверки новых планировщиков и оптимизаций.
Сценарии использования
- Планирование емкости: поиск самого дешевого варианта развертывания, который укладывается в целевые показатели задержки.
- Сравнение политик планирования на одной и той же трассе трафика.
- Изучение спекулятивного декодирования и других оптимизаций инференса до их реализации на реальных GPU.
- Изучение влияния размера модели и настроек параллелизма на производительность инференса.
Быстрый старт
- 1
Создайте venv с Python 3.10
python3.10 -m venv .venv - 2
Активируйте виртуальное окружение
source .venv/bin/activate - 3
Установите зависимости
python -m pip install -r requirements.txt - 4
Запустите симулятор из корня репозитория
python -m vidur.main
Что важно знать
- Требуется Python 3.10, а для новых моделей или SKU необходимо сначала выполнить профилирование GPU.
- Поддерживаются только модели и оборудование из перечисленных конфигураций.
- Некоторые функции, например кэширование префиксов, доступны только в ветке canary.
В подборках
Темы
Частые вопросы
- Что такое vidur?
- Высокоточный симулятор систем инференса LLM, позволяющий изучать производительность, планировать развертывание и проверять идеи по планированию без GPU. Vidur симулирует обработку запросов большими языковыми моделями в кластерах GPU. Он моделирует такие метрики, как время до первого токена (TTFT), время на выходной токен (TPOT), полная задержка обработки запроса и размер пакета для выбранной нагрузки, модели и конфигурации оборудования. Сначала симулятор проводит короткий этап профилирования на реальных GPU, после чего эксперименты можно выполнять без доступа к ним.
- vidur можно использовать бесплатно? Какая у него лицензия?
- vidur распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- vidur всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в vidur — 24 авг. 2026 г..
- Для чего можно использовать vidur?
- Планирование емкости: поиск самого дешевого варианта развертывания, который укладывается в целевые показатели задержки. Сравнение политик планирования на одной и той же трассе трафика. Изучение спекулятивного декодирования и других оптимизаций инференса до их реализации на реальных GPU. Изучение влияния размера модели и настроек параллелизма на производительность инференса.
- Как установить vidur?
- Создайте venv с Python 3.10: python3.10 -m venv .venv Активируйте виртуальное окружение: source .venv/bin/activate Установите зависимости: python -m pip install -r requirements.txt Запустите симулятор из корня репозитория: python -m vidur.main
- Где скачать vidur?
- Исходный код и инструкции по установке — на GitHub: https://github.com/microsoft/vidur
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Шаблон worker для Runpod Serverless, разворачивающий совместимые с OpenAI LLM-эндпоинты на движке инференса vLLM.
Инференс трансформера в стиле Llama 2 на чистом Mojo, в одном файле, с SIMD-векторизацией и многопоточностью.
Менеджер GPU-кластеров с открытым исходным кодом: развёртывает AI-модели с помощью vLLM, SGLang и TensorRT-LLM и предоставляет GPU-инстансы с доступом по SSH по запросу.
Официальная реализация FlashAttention — точного и экономного по памяти attention-ядра для обучения и инференса Transformer-моделей на GPU.
Открытый программируемый уровень маршрутизации, который выбирает или объединяет LLM для каждого запроса и направляет их на локальные, частные или облачные backend-системы через единый API endpoint.