SGLang 部署与推理指南
关于将 LLM 保存并部署到 SGLang 以便在生产环境中提供服务的指南
您可以通过以下方式为任何大型语言模型(LLM)或微调模型提供服务 SGLang 以实现低延迟、高吞吐量的推理。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-Instruct,请在另一个终端执行下面操作(否则会阻塞当前终端——您也可以使用 tmux):

然后您可以在另一个终端或使用 tmux 使用 OpenAI Chat 完成库来调用该模型:
您将得到 2 + 2 = 4.
🦥 在 SGLang 中部署 Unsloth 微调模型
微调完成后 Fine-tuning Guide 或使用我们的笔记本在 Unsloth 笔记本,您可以通过单一工作流程直接通过 SGLang 保存或部署您的模型。例如一个 Unsloth 微调脚本示例:
要为 SGLang 保存为 16 位,请使用:
若只保存 LoRA 适配器,可以使用:
或者直接使用我们内置的函数来完成:
🚃gpt-oss-20b:Unsloth 与 SGLang 部署指南
下面是一个逐步教程,包含使用 Unsloth 训练 gpt-oss-20b 并使用 SGLang 部署的说明。它包含跨多种量化格式的性能基准测试。
💎FP8 在线量化
要使用 FP8 在线量化部署模型,从而在 SGLang 中实现 30% 到 50% 的更高吞吐量、50% 的内存节省并支持更长两倍的上下文长度,您可以执行以下操作:
您也可以使用 --kv-cache-dtype fp8_e5m2 该选项具有更大的动态范围,如果您遇到 FP8 推理问题可能会有所帮助。或者使用我们在以下列出的预量化 float8 量化模型: https://huggingface.co/unsloth/models?search=-fp8 或者下面列出的一些:
⚡ SGLang 基准测试
下面是一些您可以运行以测试微调模型性能速度的代码:
然后在另一个终端或通过 tmux:
您将看到类似下面的基准运行输出:

我们使用 B200x1 GPU 对 gpt-oss-20b 进行了测试,得到以下结果(约 2,500 标记的吞吐量)
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.html 以获取 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,使用 --tokenizer-path
最后更新于
这有帮助吗?

