InternLM/lmdeploy

LMDeploy — это инструмент для сжатия, развёртывания и обслуживания LLM.

Инференс⭐ 8 085Pythonпоследний релиз: v0.17.0
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

LMDeploy — это инструмент от InternLM для сжатия, развёртывания и обслуживания больших языковых моделей (LLM). Он обеспечивает высокую скорость инференса за счёт оптимизаций ядра TurboMind и поддержки PyTorch.

Зачем нужен

Инструмент решает задачу эффективного запуска LLM на GPU, значительно превосходя по скорости такие решения, как vLLM, благодаря техникам квантования (int4/int8/MXFP4) и оптимизации внимания (Flash Attention, Paged Attention). Он полезен для снижения затрат на инфраструктуру и ускорения отклика моделей в продакшене.

Что можно реализовать

  • Развёртывание сервисов инференса для моделей семейства Llama3, Qwen, DeepSeek и InternLM с поддержкой Function Calling.
  • Запуск мультимодальных моделей (VLM), таких как InternVL, LLaVA и CogVLM, с балансировкой нагрузки на несколько GPU.
  • Оптимизация MoE-моделей (например, Mixtral, Qwen1.5-MOE) с использованием квантования и специализированных ядер (DeepGemm, FlashMLA).
  • Создание высоконагруженных сервисов (16+ RPS) для моделей среднего размера (например, internlm2-20b) с использованием онлайн-квантования KV cache.

Ключевые возможности

  • Высокая производительность: TurboMind обеспечивает до 1.8x скорости по сравнению с vLLM и 1.5x по сравнению с vLLM для моделей GPT-oss на H800.
  • Поддержка современных архитектур: DeepSeek V3/R1, Qwen3.5, Llama3.1, а также MoE-модели (dbrx, Mixtral).
  • Гибкие движки инференса: встроенное ядро TurboMind для максимальной скорости и PyTorchEngine для быстрой экспериментальной разработки и поддержки Huawei Ascend.
  • Продвинутое сжатие: поддержка 4-bit (symmetric/asymmetric) и 8-bit квантования весов и KV cache, включая MXFP4 на NVIDIA V100+.
  • Специализированные оптимизации: интеграция с DLSlime и Mooncake для DeepSeek PD Disaggregation, а также поддержка CUDA Graph и Flash Decoding.

👤 Кому подойдёт: ML-инженеры, разработчики LLM-сервисов и исследователи, которым требуется быстрый и экономичный инференс LLM и VLM на GPU (NVIDIA, Huawei Ascend).

Релизы

v0.17.0minor
🕐 20 дн назад · релиз на GitHub ↗

Добавлена поддержка Kimi K2.6 и DeepEPv2, оптимизирован GLM-5.2 и FP8 MoE, исправлены ошибки API и Triton.

  • Added: Добавлена поддержка модели Kimi K2.6 и интеграция DeepEPv2.
  • Added: Реализован серверный fan-out для n>1 вариантов ответов и поддержка структурных тегов в response_format.
  • Added: Добавлена поддержка Mooncake store для KV-коннекторов.
  • Fixed: Исправлены ошибки в API-интерфейсах, поддержка inline-system сообщений и некорректная компиляция Triton.
  • Added: Оптимизирована работа GLM-5.2, FP8 MoE и снижены накладные расходы speculative decoding.
v0.16.0minor
🕐 1 мес назад · релиз на GitHub ↗

Добавлена поддержка моделей Interns2, GLM-5.2, Hy3 и Qwen3; улучшена работа с FP8, SSM и оптимизация декодирования.

  • Added: Добавлена поддержка моделей Interns2 (Mobius), GLM-5.2, Hy3 и Qwen3, включая специфичные функции вроде preserve_thinking.
  • Added: Внедрена поддержка MoE gate v2 для Intern-S2-Mobius и оптимизации FP8 для архитектур Hopper (SM90).
  • Added: Добавлена поддержка ViT в TurboMind для моделей InternVL и Qwen VL, а также MTP для Hy3.
  • Added: Улучшена работа с SSM prefix caching и добавлена опциональная оптимизация decode через torch.compile.
  • Fixed: Исправлены ошибки жизненного цикла входных данных PyTorch, диспетчеризации cuMemcpyBatchAsync и квантования KV-кэша.
  • Fixed: Устранены проблемы с дублированием вывода в Ray, валидацией запросов и поддержкой Anthropic thinking blocks.
v0.15.0major
🕐 1 мес назад · релиз на GitHub ↗

Добавлена поддержка DeepSeek V4, MTP prefix-cache, guided decoding и оптимизации для Qwen3.5/Ascend.

  • Added: Добавлена поддержка модели DeepSeek V4 и специфичных оптимизаций fp8 moe для Qwen3.5.
  • Added: Реализована поддержка MTP prefix-cache hits и guided decoding для speculative decoding.
  • Added: Внедрены новые механизмы распределения памяти, кэширования объектов и планировщика в TurboMind.
  • Fixed: Исправлены ошибки prefix caching, работы с Triton 3.5.1 и интеграции XGrammar.
  • Added: Добавлен флаг --language-model-only для текстового вывода VLM и CLI-параметр --generation-config.
v0.14.0major
🕐 2 мес назад · релиз на GitHub ↗

Добавлена поддержка Qwen3, FP8 KV-cache, OpenAI Responses API и улучшена работа с мультимодальными моделями.

  • Added: Добавлена поддержка моделей Qwen3 и Qwen3.5 (включая Moe lite awq и ViT-инференс в Turbomind).
  • Added: Реализовано квантование KV-cache в формате FP8 для снижения потребления памяти.
  • Added: Появился эндпоинт /get_ppl и добавлена совместимость с OpenAI Responses API.
  • Added: Расширены чат-комплитионы: добавлены токены in/out, routed experts и сырые logprobs.
  • Fixed: Исправлены утечки памяти при больших изображениях, работа на Windows и загрузка чекпоинтов Intern-S1.
  • Fixed: Устранены проблемы с потоковой передачей инструментов, структурированным выводом и FlashAttention 3 на SM80+.