AI・機械学習
上級

SGLang(エスジーラング)

UC Berkeley発の高速LLM推論フレームワーク。RadixAttentionによるKVキャッシュ共有とStructured Generation最適化を特長とし、構造化出力においてvLLMを大幅に上回るスループットを実現する。

0 回閲覧
0 いいね
2026/5/25 更新
関連タグ
SGLang
RadixAttention
LLM推論
構造化生成
JSON Schema
Tool Use
KVキャッシュ
UC Berkeley

SGLangとは

SGLang(Structured Generation Language、エスジーラング)は2024年1月にUC Berkeleyの研究チーム(Lianmin Zheng、Liangsheng Yin ら)が発表した高性能LLM推論フレームワークです。vLLMの共同開発者チームが設計した次世代システムとして、特に構造化生成(Structured Generation)の高速化に特化しています。

2026年5月現在GitHub Stars 12,000超・PyPI月間ダウンロード100万件以上に成長しており、2025〜2026年のLLM推論ベンチマークでvLLMを多くの指標で上回る性能を示しています。

RadixAttentionの仕組み

SGLangの核心技術はRadixAttention(基数木注意機構)です。従来のPagedAttentionが個別シーケンスのKVキャッシュを独立管理するのに対し、RadixAttentionはシーケンス間で共有されるプレフィックス(接頭辞)のKVキャッシュを基数木(Radix Tree)データ構造で効率的に管理・再利用します。

適用が特に効果的なケース:

  1. Few-Shotプロンプト: 同じ例示(System prompt + N個のexamples)を多数のリクエストで共有する場合、例示部分のKVキャッシュを一度だけ計算して全リクエストで再利用。例示が2,000トークンある場合、100件のリクエストで合計200,000トークン分の計算をスキップ可能

  2. マルチターン会話: 会話履歴をRadix Treeに保持し、各ターンで共通部分のKVを再計算せず増分処理のみで対応

  3. ドキュメント解析タスク: 同じ長文ドキュメントに対して複数の質問を投げる場合、ドキュメント部分のKVを共有

Few-Shotプロンプトを用いるシナリオではvLLM比でスループットが最大5.6倍向上するケースが報告されています。

構造化生成の高速化

SGLangのもう一つの特長はStructured Generation(構造化生成)の効率化です。

JSON Schema強制出力: LLMの出力をJSONスキーマに従って制約することで、後処理パースエラーをゼロにし、APIレスポンスの信頼性を高めます。SGLangはJSONスキーマ検証をCPU側で非同期処理することでGPU推論のボトルネック化を防ぎます。

正規表現マッチング: 出力トークンを正規表現パターンでフィルタリングし、有効なトークンのみをサンプリング対象とするConstrained Decodingを高効率化。

主な機能・スペック

機能詳細
対応モデルLlama 3/3.1/3.2、Mistral、Qwen 2/2.5、DeepSeek V2/V3/R1、Gemma 2/3、Phi-3/4 など主要OSS
RadixAttention共有プレフィックスKVキャッシュ自動管理
構造化生成JSON Schema、正規表現、EBNF文法による制約デコード
テンソル並列化マルチGPU対応(--tp-size指定)
APIサーバーOpenAI互換 + ネイティブSGLang API
量子化AWQ、GPTQ、FP8対応
Speculative DecodingEAGLE統合サポート
ライセンスApache 2.0

ベンチマーク比較(2025年、DeepSeek V3 MoEモデル)

フレームワーク出力トークン/秒JSON出力スループットFew-Shot効率
SGLang 0.4.x195 tok/s高(RadixAttention)5.6x
vLLM 0.6.x148 tok/s標準1x
TGI 2.x120 tok/s標準1x

インストール・クイックスタート

# インストール
pip install sglang[all]

# サーバー起動(OpenAI互換API)
python3 -m sglang.launch_server --model-path meta-llama/Llama-3.1-8B-Instruct --port 30000

自作PCでの活用

RTX 4090(24GB): DeepSeek R1-Distill-Qwen-14B(AWQ量子化、約10GB VRAM)をSGLangでサービングすると約180 tok/s。Few-Shotプロンプト多用の分類・抽出タスクでvLLMより高効率。

RTX 4080(16GB): Qwen2.5-7B-Instruct(BF16、約15GB)をSGLangで起動し、Function Calling(ツール呼び出し)ワークフローに活用。JSON出力の安定性がvLLM比で改善する。

vLLMとの使い分け

ユースケース推奨フレームワーク理由
JSON/構造化出力が多いSGLangRadixAttention + Structured Generationが効く
Few-Shot・RAGシステムSGLang共有プレフィックスKVキャッシュ再利用が効果的
汎用APIサーバーvLLM対応モデルが多く生態系が成熟
モデル多様性が必要vLLM100+モデルのサポート範囲が広い

よくある質問(FAQ)

Q1: SGLangとvLLMはどちらを選ぶべきですか? A: Function Calling・JSON Schema強制出力・RAGシステムなど構造化生成が多い場合はSGLang。汎用的なチャットAPI・対応モデル数を重視する場合はvLLM。どちらもOpenAI互換APIなのでA/Bテストで実測するのが確実です。

Q2: RadixAttentionはどんな場合に効果がありますか? A: 複数リクエストが同じ長いプレフィックス(System Prompt + Few-Shot Examples)を共有する場合に最も効果的です。プレフィックスが1,000トークン以上かつリクエスト数が多い場合、スループットが2〜5倍向上するケースがあります。

Q3: SGLangはDeepSeekモデルに最適化されていますか? A: はい、特にDeepSeek V3やR1などのMoE(Mixture-of-Experts)モデルでの高速化が実証されています。2025年にはDeepSeekが推奨するサービングフレームワークとしてSGLangを公式に言及し、注目度が急上昇しました。

まとめ

  • RadixAttentionで共有プレフィックスのKVキャッシュを木構造管理し、Few-Shotシナリオで最大5.6xのスループット向上
  • JSON Schema・正規表現による構造化生成高速化が特長
  • DeepSeek V3/R1などMoEモデルのサービングで特に高い性能を発揮
  • 2025〜2026年のベンチマークでvLLMを多くの指標で上回り急成長中
この記事について
カテゴリーAI・機械学習
難易度上級
作成日2026/5/25