Skip to content

vLLM

Description:
大規模言語モデル (LLM) の推論とサービングを高速化する、高スループットでメモリ効率の良いオープンソースエンジン。
Updated:
2026/02/05

vLLM は、UC Berkeley で開発された LLM (Large Language Model) の推論・サービング用エンジンです。独自のメモリ管理アルゴリズムである PagedAttention を採用することで、従来のサービングシステムと比較して数倍から数十倍の高いスループットを実現しています。

  • PagedAttention: オペレーティングシステムの仮想メモリ管理に着想を得た技術。KV (Key-Value) キャッシュを不連続なメモリ領域にページ単位で格納することで、メモリ断片化をほぼゼロにし、バッチサイズを劇的に向上させます。
  • 高スループット: 継続的なバッチ処理 (Continuous Batching) により、GPU のリソースを常に最大活用し、多数の同時クエストを低遅延で処理します。
  • 幅広いモデル対応: Llama, Mistral, Qwen, DeepSeek, Mixtral, Gemma など、主要なオープンソースモデルのアーキテクチャをネイティブにサポート。
  • 分散推論: Tensor Parallelism や Pipeline Parallelism をサポートし、複数の GPU を跨いだ大規模なモデルの実行が可能。
  • OpenAI 互換サーバー: OpenAI API と互換性のあるサーバーを簡単に立ち上げることができ、既存のアプリケーションとの統合が容易です。
  • 豊富な量子化オプション: AWQ, GPTQ, FP8, INT4, INT8 など、多様な量子化フォーマットに対応し、メモリ使用量を大幅に削減可能。
  • プロダクション環境での LLM サービング: 大規模な同時アクセスが発生するチャットボットや API サービスのバックエンド。
  • RAG (検索拡張生成) パイプライン: 共有プレフィックスキャッシングを活用し、共通のコンテキストを使い回す効率的な検索エンジンの構築。
  • 開発・検証環境: 高速なイテレーションが求められるモデルの評価やプロトタイピング。

vLLM は Linux 環境(および NVIDIA/AMD/Intel GPU)を推奨しています。

Python 仮想環境を使用することを推奨します。

# 仮想環境の作成と有効化
python -m venv vllm-env
source vllm-env/bin/activate

# インストール
pip install vllm

OpenAI 互換の API サーバーを起動する例:

# Llama-3-8B モデルを起動
python -m vllm.entrypoints.openai.api_server --model meta-llama/Meta-Llama-3-8B-Instruct

サーバーが起動したら、標準的な OpenAI SDK や curl でリクエストを送信できます。

curl http://localhost:8000/v1/chat/completions \
    -H "Content-Type: application/json" \
    -d '{
        "model": "meta-llama/Meta-Llama-3-8B-Instruct",
        "messages": [
            {"role": "user", "content": "vLLM のメリットを一言で教えてください。"}
        ]
    }'