vllm-project/vllm
요약
vLLM은 UC Berkeley의 Sky Computing Lab에서 시작된 고성능 LLM 추론 및 서빙 라이브러리입니다. PagedAttention 기술을 통해 메모리 효율성을 극대화하며, 다양한 양자화 방식과 최적화된 커널을 지원하여 매우 빠른 처리량을 제공합니다.
핵심 포인트
- PagedAttention을 통한 효율적인 어텐션 키 및 값 메모리 관리
- 연속 배치(Continuous batching), 청크 단위 프리필, 접두사 캐싱 등 최신 서빙 기술 지원
- FP8, INT4 등 다양한 양자화 및 FlashAttention, Triton 등 최적화된 커널 활용
- Hugging Face 모델과의 원활한 통합 및 OpenAI/Anthropic 호환 API 제공
- NVIDIA, AMD GPU부터 TPU, Intel Gaudi, Apple Silicon까지 폭넓은 하드웨어 지원
| 문서 (Documentation) | 블로그 (Blog) | 논문 (Paper) | Twitter/X | 사용자 포럼 (User Forum) | 개발자 Slack (Developer Slack) |
🔥 저희는 여러분이 vLLM을 시작하는 데 도움을 드리기 위해 vLLM 웹사이트를 구축했습니다. 더 자세한 내용을 알아보려면 vllm.ai를 방문해 주세요. 이벤트에 참여하시려면 vllm.ai/events를 방문해 주세요.
vLLM은 LLM 추론 (Inference) 및 서빙 (Serving)을 위한 빠르고 사용하기 쉬운 라이브러리입니다.
본래 UC Berkeley의 Sky Computing Lab에서 개발된 vLLM은 2,000명 이상의 기여자로부터 유래된 수십 개의 학술 기관 및 기업들로 구성된 다양한 커뮤니티에 의해 구축되고 유지 관리되는 가장 활발한 오픈 소스 (Open-source) AI 프로젝트 중 하나로 성장했습니다.
vLLM은 다음과 같은 특징을 통해 빠릅니다:
- 최첨단 서빙 처리량 (Serving throughput)
- PagedAttention을 통한 어텐션 키 및 값 메모리 (Attention key and value memory)의 효율적인 관리 - 들어오는 요청의 연속 배치 (Continuous batching), 청크 단위 프리필 (Chunked prefill), 접두사 캐싱 (Prefix caching)
- 조각별 및 전체 CUDA/HIP 그래프 (Piecewise and full CUDA/HIP graphs)를 통한 빠르고 유연한 모델 실행
- 양자화 (Quantization): FP8, MXFP8/MXFP4, NVFP4, INT8, INT4, GPTQ/AWQ, GGUF, compressed-tensors, ModelOpt, TorchAO 등
- FlashAttention, FlashInfer, TRTLLM-GEN, FlashMLA, Triton을 포함한 최적화된 어텐션 커널 (Attention kernels)
- CUTLASS, TRTLLM-GEN, CuTeDSL를 사용하여 다양한 정밀도(Precision)에 대해 최적화된 GEMM/MoE 커널
- n-gram, suffix, EAGLE, DFlash를 포함한 투기적 디코딩 (Speculative decoding)
- torch.compile을 사용한 자동 커널 생성 및 그래프 수준 변환 (Graph-level transformations)
- 분리된 프리필, 디코드 및 인코드 (Disaggregated prefill, decode, and encode)
vLLM은 다음과 같은 특징을 통해 유연하고 사용하기 쉽습니다:
- 인기 있는 Hugging Face 모델과의 원활한 통합 (Seamless integration)
- 병렬 샘플링 (parallel sampling), 빔 서치 (beam search) 등을 포함한 다양한 디코딩 알고리즘을 통한 고처리량 (High-throughput) 서빙
- 분산 추론 (distributed inference)을 위한 텐서 (Tensor), 파이프라인 (pipeline), 데이터 (data), 전문가 (expert), 컨텍스트 (context) 병렬성 지원
- 스트리밍 출력 (Streaming outputs)
- xgrammar 또는 guidance를 사용한 구조화된 출력 (structured outputs) 생성
- 도구 호출 (Tool calling) 및 추론 파서 (reasoning parsers)
- OpenAI 호환 API 서버, 그리고 Anthropic Messages API 및 gRPC 지원
- 밀집 (dense) 및 MoE 레이어를 위한 효율적인 멀티-LoRA (multi-LoRA) 지원
- NVIDIA GPU, AMD GPU 및 x86/ARM/PowerPC CPU 지원. 또한 Google TPU, Intel Gaudi, IBM Spyre, Huawei Ascend, Rebellions NPU, Apple Silicon, MetaX GPU 등 다양한 하드웨어 플러그인 지원.
vLLM은 Hugging Face의 200개 이상의 모델 아키텍처를 원활하게 지원하며, 여기에는 다음이 포함됩니다:
- 디코더 전용 (Decoder-only) LLM (예: Llama, Qwen, Gemma)
- 전문가 혼합 (Mixture-of-Expert, MoE) LLM (예: Mixtral, DeepSeek-V3, Qwen-MoE, GPT-OSS)
- 하이브리드 어텐션 (Hybrid attention) 및 상태 공간 모델 (state-space models) (예: Mamba, Qwen3.5)
- 멀티모달 (Multi-modal) 모델 (예: LLaVA, Qwen-VL, Pixtral)
- 임베딩 (Embedding) 및 검색 (retrieval) 모델 (예: E5-Mistral, GTE, ColBERT)
- 보상 (Reward) 및 분류 (classification) 모델 (예: Qwen-Math)
지원되는 모델의 전체 목록은 여기에서 확인하세요.
uv (권장) 또는 pip를 사용하여 vLLM 설치:
uv pip install vllm
또는 개발을 위해 소스에서 빌드하세요.
더 자세히 알아보려면 공식 문서를 방문하세요.
우리는 모든 기여와 협업을 환영하고 가치 있게 여깁니다. 참여 방법은 Contributing to vLLM을 확인해 주세요.
연구를 위해 vLLM을 사용하는 경우, 저희 논문을 인용해 주세요:
@inproceedings{kwon2023efficient,
title={Efficient Memory Management for Large Language Model Serving with PagedAttention},
author={Woosuk Kwon and Zhuohan Li and Siyuan Zhuang and Ying Sheng and Lianmin Zheng and Cody Hao Yu and Joseph E. Gonzalez and Hao Zhang and Ion Stoica},
...
-
기술적인 질문 및 기능 요청(feature requests)은 GitHub Issues를 이용해 주세요.
-
다른 사용자들과의 논의는 vLLM Forum을 이용해 주세요.
-
기여(contributions) 및 개발 조율을 위해서는 Slack을 이용해 주세요.
-
보안 취약점 제보(security disclosures)는 GitHub의 Security Advisories 기능을 이용해 주세요.
-
협업 및 파트너십 문의는 collaboration@vllm.ai로 연락해 주세요.
-
vLLM의 로고를 사용하고자 하는 경우, 저희의 미디어 키트 리포지토리(media kit repo)를 참조해 주세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Trending Python (daily)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기