SGLang デプロイ & 推論ガイド

LLM を SGLang に保存してプロダクションで提供するためのデプロイガイド

任意のLLMやファインチューニング済みモデルを以下を介して提供できます SGLangarrow-up-right 低レイテンシ・高スループット推論のために。SGLangは任意のGPU構成でテキスト・画像/ビデオモデルの推論をサポートしており、一部のGGUFもサポートしています。

💻SGLangのインストール

NVIDIA GPU上にSGLangとUnslothをインストールするには、仮想環境内で以下を実行できます(他のPythonライブラリを壊しません)。

# 任意: 仮想環境を使用
python -m venv unsloth_env
source unsloth_env/bin/activate

# Rust、outlines-core、次にSGLangをインストール
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env && sudo apt-get install -y pkg-config libssl-dev
pip install --upgrade pip && pip install uv
uv pip install "sglang" && uv pip install unsloth

に関して Docker セットアップの実行:

docker run --gpus all \
    --shm-size 32g \
    -p 30000:30000 \
    -v ~/.cache/huggingface:/root/.cache/huggingface \
    --env "HF_TOKEN=<secret>" \
    --ipc=host \
    lmsysorg/sglang:latest \
    python3 -m sglang.launch_server --model-path unsloth/Llama-3.1-8B-Instruct --host 0.0.0.0 --port 30000

🐛SGLangインストール問題のデバッグ

以下のような表示が出る場合は、Rustとoutlines-coreをで指定されている通りに更新してください SGLang

もし以下のようなFlashinferの問題が表示されたら:

flashinferのキャッシュを次で削除してください rm -rf .cache/flashinfer およびエラーメッセージに記載されているディレクトリ、つまり rm -rf ~/.cache/flashinfer

🚚SGLangモデルのデプロイ

例えば任意のモデルをデプロイするには unsloth/Llama-3.2-1B-Instructarrow-up-right以下を別のターミナルで実行してください(そうしないと現在のターミナルがブロックされます。tmuxの利用も可能です):

その後、OpenAI Chat completionsライブラリを使用してモデルを呼び出すことができます(別のターミナルまたはtmuxを使用):

そして次のような結果が得られます 2 + 2 = 4.

🦥SGLangでのUnslothファインチューンのデプロイ

ファインチューニング後 Fine-tuning Guide または当社のノートブックを使用して Unsloth ノートブックSGLang内で単一のワークフローとしてモデルを直接保存またはデプロイできます。例えば以下のようなUnslothファインチューニングスクリプトの例があります:

SGLang用に16ビットで保存するには、次を使用してください:

LoRA アダプタだけを保存するには、いずれかを使用します:

または当社の組み込み関数を使ってこれを行うだけでも良いです:

🚃gpt-oss-20b: Unsloth & SGLang デプロイガイド

以下は、をトレーニングして gpt-ossUnslothで-20bを使用してSGLangでデプロイする手順付きのステップバイステップチュートリアルです。複数の量子化フォーマットでの性能ベンチマークを含みます。

1

Unsloth のファインチューニングとエクスポート形式

ファインチューニングが初めての場合は、私たちの ガイドを読むか、gpt-oss 20B ファインチューニングノートブックをで試してみてください gpt-oss トレーニング後、モデルを複数の形式でエクスポートできます:

2

SGLangでのデプロイ

我々は gpt-oss のファインチューニングをフォルダ "finetuned_model" に保存したので、新しいターミナルでSGLangを使ってファインチューンモデルを推論エンドポイントとして起動できます:

次の表示が出るまで少し待つ必要があるかもしれません バッチをキャプチャ中 (bs=1 avail_mem=20.84 GB): !

3

推論エンドポイントを呼び出しています:

推論エンドポイントを呼び出すには、まず新しいターミナルを起動します。次に以下のようにモデルを呼び出せます:

💎FP8 オンライン量子化

FP8 オンライン量子化でモデルをデプロイすると、SGLangでスループットが30〜50%向上し、メモリ使用量が50%減少し、コンテキスト長のサポートが2倍に延びます。以下のように設定できます:

また次も使用できます --kv-cache-dtype fp8_e5m2 これにはより大きなダイナミックレンジがあり、FP8推論で問題が発生した場合に解決する可能性があります。あるいは我々の事前量子化済みのfloat8クオンタイズをで使用してください https://huggingface.co/unsloth/models?search=-fp8arrow-up-right または以下にいくつか記載されています:

⚡SGLangのベンチマーク

以下はファインチューンしたモデルの性能速度をテストするために実行できるコードです:

その後、別のターミナルまたはtmuxで:

ベンチマークが以下のように実行されるのが見えます:

我々は gpt-oss-20b を B200x1 GPU で使用し、以下の結果を得ました(約2,500トークンのスループット)

バッチ/入力/出力
TTFT (秒)
ITL (秒)
入力スループット
出力スループット

8/1024/1024

0.40

3.59

20,718.95

2,562.87

8/8192/1024

0.42

3.74

154,459.01

2,473.84

詳細については https://docs.sglang.ai/advanced_features/server_arguments.htmlarrow-up-right SGLangのサーバー引数についてはこちらを参照してください。

🏃SGLang インタラクティブオフラインモード

Pythonのインタラクティブ環境内で(サーバーではなく)オフラインモードのSGLangも使用できます。

🎇SGLangにおけるGGUF

SGLangは興味深くGGUFもサポートしています! Qwen3 MoEはまだ開発中ですが、大多数のデンスモデル(Llama 3、Qwen 3、Mistralなど)はサポートされています。

まず最新のgguf pythonパッケージを次でインストールしてください:

その後、例えばオフラインモードのSGLangで次を実行できます:

🎬SGLangによる高スループットなGGUF提供

まず以下のように特定のGGUFファイルをダウンロードしてください:

次に特定のファイルを提供します Qwen3-32B-UD-Q4_K_XL.gguf を確認し、 --served-model-name unsloth/Qwen3-32B また、HuggingFace互換のトークナイザも必要ですので、次を使用してください --tokenizer-path

最終更新

役に立ちましたか?