lmdeploy

Local AI RunnersCLIPython

★ 8,061주당 +17조회 4

무엇인가

LMDeploy는 MMRazor·MMDeploy 팀이 만든 LLM 추론·서빙 스택이다. 모델 가중치를 양자화해 압축하는 단계와, 그 모델을 GPU에서 돌려 네트워크로 내보내는 단계를 한 저장소에서 다룬다. 학습 프레임워크가 아니라 배포 계층에 속한다.

어떻게 동작하나

추론 엔진은 두 갈래로 나뉜다. TurboMind는 C++/CUDA 커널로 구현되어 지속 배치(continuous batching), blocked KV cache, dynamic split&fuse, tensor parallelism을 사용한다. PyTorchEngine은 전부 Python으로 작성되어 CUDA graph와 Ascend 플랫폼 그래프 모드를 지원한다. 서빙 계층에는 요청 분배 서비스가 있어 여러 모델을 여러 머신·여러 카드에 나눠 배치한다. KV cache는 int8/int4로 온라인 양자화할 수 있다.

무엇과 다른가

vLLM과 같은 자리를 겨냥한다. 차이는 처리량과 양자화 폭이다. README 기준 internlm2-20b에서 vLLM 대비 약 1.8배 RPS를 기록했고, H800에서 gpt-oss 모델 MXFP4 기준 1.5배를 낸다. 양자화는 AWQ 기반 4bit weight-only와 k/v 양자화를 지원하며 FP16 대비 2.4배 추론 성능을 기록한다. KV Cache Quant, AWQ, Automatic Prefix Caching을 동시에 켤 수 있다.

어떻게 쓰나

설치는 `pip install lmdeploy` 한 줄이다. 이후 CLI에서 모델을 지정해 대화하거나 서빙 서버로 띄운다. 서버는 OpenAI 호환 엔드포인트를 노출하므로 OpenAOE 같은 클라이언트가 그대로 붙는다. HuggingFace Hub에 올라온 사전 양자화 4bit 모델을 바로 받아 쓸 수도 있다.

전제와 한계

제약이 있다. TurboMind는 NVIDIA GPU를 전제로 하며 Windows에서는 tensor parallel 1만 지원한다. MXFP4는 V100 이상 NVIDIA GPU에서 동작한다. PyTorchEngine은 Huawei Ascend를 지원한다. 지원 모델은 Llama, InternLM, Qwen, DeepSeek, Gemma, Mistral 계열 LLM과 InternVL, LLaVA, CogVLM2 등 VLM으로 한정된다.

관련 논문 5

유사 도구