lmdeploy: dual inference engine을 사용하여 LLM 및 VLM을 압축하고 서빙하는 고처리량 툴킷

lmdeploy: dual inference engine을 사용하여 LLM 및 VLM을 압축하고 서빙하는 고처리량 툴킷

해결하는 문제

LMDeploy는 대규모 언어 모델(LLM) 및 시각 언어 모델(VLM)의 압축, 배포 및 서빙 프로세스를 단순화하고 최적화하도록 설계된 툴킷입니다. 고처리량 서빙과 효율적인 양자화 기술을 제공하여 LLM 추론 시 발생하는 높은 계산 비용과 지연 시간 문제를 해결합니다.

작동 방식

이 프로젝트는 두 가지 별도의 추론 엔진을 제공합니다: 최대 성능에 최적화된 TurboMind와 개발자의 진입 장벽을 낮추고 빠른 실험을 가능하게 하기 위해 Python으로 개발된 PyTorch 기반 엔진입니다. 요청 처리량을 높이기 위해 persistent batching (continuous batching), blocked KV cache, tensor parallelism, 그리고 고성능 CUDA kernels 기술을 활용합니다.

대상 사용자

생산 환경에서 LLM 및 VLM을 배포해야 하는 개발자와 AI 엔지니어, 그리고 새로운 모델 아키텍처와 기능을 실험하고자 하는 연구자를 대상으로 합니다.

주요 특징

  • 고처리량: vLLM보다 최대 1.8배 높은 요청 처리량을 제공합니다.
  • 광범위한 모델 지원: 다양한 LLM (예: Llama, Qwen, DeepSeek, Mistral, Phi) 및 VLM (예: InternVL, LLaVA, Qwen-VL)을 지원합니다.
  • 효과적인 양자화: weight-only 및 KV cache 양자화 (AWQ 포함)를 지원하며, 4-bit 추론 성능은 FP16보다 최대 2.4배 빠릅니다.
  • 분산 서버: 여러 대의 머신과 카드를 통해 멀티 모델 서비스를 쉽게 배포할 수 있도록 지원합니다.
  • 하드웨어 호환성: NVIDIA GPU (RTX 50 시리즈 포함) 및 Huawei Ascend 플랫폼을 지원합니다.

Sources