vllm-project/vllm
A high-throughput and memory-efficient inference and serving engine for LLMs
What it solves
vLLM は、大規模言語モデル (LLM) の推論およびサービングを高速、簡単、かつコスト効率の高いものにすることを目的に設計されています。これは、アテンションの key と value のメモリ管理のボトルネックを解決し、LLM サービング・システムのスループットを制限する要因を解消します。
How it works
このライブラリは、PagedAttention と呼ばれる技術を使用し、アテンションの key-value (KV) cache メモリを効率的に管理します。さらに、リクエストの連続バッチ処理 (continuous batching)、チャンク化されたプリフィル (chunked prefill)、およびプリフィックス・キャッシュ (prefix caching) を通 통해、パフォーマンスを最適化します。ハードウェアの利用率を最大化するため、最適化されたアテンション・カーネル (FlashAttention など) を採用し、幅広い要件に従って量子化手法 (FP8, INT8, INT4, など) および分散推論技術 (tensor, pipeline, and expert parallelism) をサポートします。
Who it’s for
高スループットかつ低レイテンシで LLM を大規模に展開したい開発者や研究者向けです。NVIDIA, AMD, Intel GPUs, および CPUs をサポートし、200 以上のアテンション・モデル・アーキテクチャを Hugging Face モデル・アーキテクチャをサポートします。
Highlights
- High Throughput: PagedAttention と continuous batching を使用した最先端のスループット。
- Broad Model Support: decoder-only, Mixture-of-Experts (MoE), multi-modal, および embedding モデルを含む 200+ のアーキテクチャをサポート。
- Hardware Flexibility: NVIDIA, AMD, Intel GPUs, および x86/ARM/PowerPC CPUs, および各種 NPU/TPU をサポート。
- API Compatibility: OpenAI-compatible API server, を提供し、Anthropic Messages API および gRPC をサポート。
- Advanced Decoding: speculative decoding および xgrammar または guidance を使用した構造化出力のサポートを含みます。