LLM Model Serving(エルエルエム モデル サービング)
トレーニング済みLLMを推論リクエストに応答できる形でデプロイする技術基盤。スループット・レイテンシ・コスト効率のトレードオフを管理し、vLLM/TGI/TensorRT-LLMなど専用エンジンでバッチ処理・連続バッチング・KVキャッシュを最適化する。
LLM Model Serving 完全ガイド 2025 — 本番運用の設計・エンジン選択・最適化
LLM Model Servingはトレーニング済みLLMを本番APIとしてデプロイし、低レイテンシ・高スループット・コスト効率の三角形を最適化する技術領域。2025年時点ではvLLM・SGLang・TensorRT-LLM・Text Generation Inference(TGI)が主要エンジンとして競合し、それぞれ異なるユースケースに特化している。
主要概念と性能指標
スループット指標:
- TTFT(Time To First Token): リクエスト受信からストリーミング開始までのレイテンシ。チャットUIでは500ms以下が目標。
- ITL(Inter-Token Latency): 連続トークン生成の間隔。リアルタイム会話では50ms以下。
- RPS(Requests Per Second): 秒間リクエスト処理数。A100×8でLlama-3-70B相当は最大200 RPS。
- Token/s: 秒間生成トークン数。A100単体でLlama-3-8Bは約4,000 token/s(vLLM)。
最適化技術:
- Continuous Batching: 固定バッチサイズではなく生成完了次第新リクエストを挿入。GPU稼働率を20%→90%に改善。
- PagedAttention: KVキャッシュをOSのページング方式で管理。メモリ断片化を排除し最大2倍のスループット向上。vLLMが2023年に提案。
- Speculative Decoding: 小型ドラフトモデルで先読み生成→大型モデルで検証。レイテンシ30〜50%削減。
- Tensor Parallelism: 行列演算を複数GPUに分割。Llama-3-405BはTP=8で実用的な速度。
主要サービングエンジン比較
| エンジン | 開発元 | 強み | 弱み | 推奨用途 |
|---|---|---|---|---|
| vLLM | UC Berkeley | 汎用・高スループット | メモリ使用多 | クラウドAPI |
| SGLang | Stanford | 構造化生成・RadixAttention | 新興 | エージェント・JSON |
| TensorRT-LLM | NVIDIA | NVIDIA GPU最速 | NVIDIA専用 | 商用大規模 |
| TGI | HuggingFace | 手軽・モデル豊富 | vLLMより低速 | 開発・小規模 |
| llama.cpp | ggerganov | CPU/MPS対応・GGUF | スループット低 | エッジ・個人 |
ハードウェア選定
NVIDIA GPU階層(2025年時点):
- H100 SXM5 80GB: 最高性能・$30,000〜。Llama-3-405BをTP=4で実用速度。
- A100 SXM4 80GB: コスパ最良・$15,000〜。Llama-3-70BをBF16で安定運用。
- H100 PCIe 80GB: コンシューマ向け・$25,000〜。NVLinkなし。
- RTX 4090 24GB: 個人・中小規模・¥280,000〜。Llama-3-8Bは高速、70Bは量子化必須。
デプロイメントアーキテクチャ
単一GPU(開発・小規模): クライアント → nginx → vLLM/ollama → GPU
マルチGPU本番: ロードバランサー → vLLM レプリカ×N → GPU クラスター → Prometheus監視
クラウドマネージド:
- AWS: SageMaker + TGI/vLLM(ml.p4d.24xlarge: A100×8)
- GCP: Vertex AI + TensorRT-LLM(A3 High: H100×8)
- Azure: Machine Learning + vLLM(NDv5: H100×8)
よくある質問(FAQ)
Q1: vLLMとTGIどちらを選ぶべきですか? A: スループット重視かつ自社GPUサーバーならvLLM。HuggingFaceモデルを素早く試すならTGI。本番大規模はvLLM優勢(PagedAttentionの実装が成熟)。
Q2: A100とH100の実際の性能差は? A: Llama-3-70B BF16でA100 80GB×8が約200 token/s、H100×8が約400 token/sと約2倍。コスト比は1:2なのでコスパは同等。
Q3: LLMサービングのコスト最適化手法は? A: 量子化(AWQ/GPTQ/FP8)でGPUメモリ削減→1GPU当たりのロード可能モデルサイズ拡大。Continuous Batching + PagedAttentionで同一GPU台数あたりのスループット最大化。
まとめ
- 本番LLMサービングの核心はContinuous Batching + PagedAttentionによるGPU稼働率最大化
- エンジン選択: 汎用=vLLM、構造化生成=SGLang、NVIDIA最速=TensorRT-LLM
- SLO: TTFT 500ms以下・ITL 50ms以下がチャットUI基準
- コスト最適化: 量子化(AWQ/FP8)+ バッチング最大化が必須