vllm: 무엇이며, 어떤 문제를 해결하고 왜 주목받고 있는가

vllm: 무엇이며, 어떤 문제를 해결하고 왜 주목받고 있는가

해결하는 문제

vLLM은 대규모 언어 모델(LLM) 추론 및 서빙을 빠르고 쉽고 비용 효율적으로 만들기 위해 설계되었습니다. 대규모로 LLM을 배포할 때 발생하는 메모리 관리와 처리량의 병목 현상을 해결합니다.

작동 원리

vLLM은 PagedAttention이라는 기술을 사용하여 어텐션 키와 값 메모리를 효율적으로 관리합니다. 또한 들어오는 요청을 지속적으로 배치하고, 청크 프리필 및 프리픽스 캐싱을 활용해 처리량을 극대화합니다. 성능을 위해 최적화된 어텐션 커널(예: FlashAttention)을 사용하고, FP8, INT8, AWQ와 같은 다양한 양자화 방법을 지원하여 메모리 사용량을 줄이고 속도를 높입니다.

대상 사용자

높은 처리량과 낮은 지연 시간을 요구하는 LLM 배포가 필요한 개발자와 연구자를 위한 도구이며, NVIDIA 및 AMD GPU를 포함한 다양한 하드웨어와 CPU, 특수 NPU/TPU에서도 동작합니다.

주요 특징

  • 고처리량: 지속적인 배치와 최적화된 커널을 통한 최첨단 서빙 처리량.
  • 광범위한 모델 지원: 디코더 전용, MoE, 멀티모달 모델 등을 포함해 200개가 넘는 Hugging Face 모델 아키텍처를 원활히 지원.
  • 유연한 API: OpenAI 호환 API 서버 제공은 물론 Anthropic Messages API와 gRPC도 지원.
  • 하드웨어 비종속: NVIDIA GPU, AMD GPU, x86/ARM/PowerPC CPU뿐 아니라 Google TPU, Intel Gaudi 등 플러그인도 지원.
  • 고급 디코딩: 추측 디코딩, 병렬 샘플링, 빔 서치를 지원.

요약

vLLM은 PagedAttention을 활용해 메모리를 효율적으로 관리하고 성능을 극대화하는 고처리량 LLM 추론 및 서빙 라이브러리입니다.

제목

vllm: 무엇이며, 어떤 문제를 해결하고 왜 주목받고 있는가

Sources