SGLang 推理引擎部署 AutoGLM-Phone-9B
为什么选 SGLang
SGLang 是由 LMSYS(Chatbot Arena 背后的团队)开发的推理引擎,在多模态视觉任务上有针对性优化。AutoGLM 模型和 SGLang 的兼容性已被官方验证,两种推理引擎你可以根据自己的环境偏好二选一。
对比 vLLM:
| 方面 | vLLM | SGLang |
|---|---|---|
| 多模态支持 | 成熟 | 专门优化 |
| OpenAI 兼容 | 完全 | 完全 |
| Docker 镜像 | 官方提供 | 官方提供 |
| AutoGLM 验证 | ✓ | ✓ |
| 上手难度 | 较低 | 略高 |
硬件要求
与 vLLM 相同——24GB+ FP16 / 12GB+ Q8_0 / 8GB+ Q5_K_M / 6GB+ Q4_K_M。
安装 SGLang
pip install sglang
Docker 方式:
docker pull lmsysorg/sglang:v0.5.6.post1
容器内需要额外安装:
pip install nvidia-cudnn-cu12==9.16.0.29
下载模型
与 vLLM 部署相同——HuggingFace 或 ModelScope 任选一种。
启动模型服务
python -m sglang.launch_server ^
--model-path zai-org/AutoGLM-Phone-9B ^
--served-model-name autoglm-phone-9b ^
--context-length 25480 ^
--mm-enable-dp-encoder ^
--mm-process-config '{"image":{"max_pixels":5000000}}' ^
--port 8000
参数对应关系(与 vLLM 对照):
| vLLM 参数 | SGLang 对应参数 |
|---|---|
--served-model-name autoglm-phone-9b | --served-model-name autoglm-phone-9b(相同) |
--max-model-len 25480 | --context-length 25480 |
--mm_processor_kwargs "{\"max_pixels\":5000000}" | --mm-process-config '{"image":{"max_pixels":5000000}}' |
--mm-encoder-tp-mode data | --mm-enable-dp-encoder |
验证与接入
验证脚本与 vLLM 相同:
python scripts/check_deployment_cn.py ^
--base-url http://localhost:8000/v1 ^
--model autoglm-phone-9b
Phone Agent 框架接入方式也完全一样:
python main.py ^
--base-url http://localhost:8000/v1 ^
--model "autoglm-phone-9b" ^
"打开淘宝搜索无线耳机"
选型建议
- 第一次部署 → 选 vLLM,中文资料更多,坑更少
- 多视觉任务并发多 → 选 SGLang,视觉编码器的数据并行优化更好
- 已有 vLLM 环境 → 继续用 vLLM,没必要为 SGLang 折腾
- 遇到 vLLM 视觉处理问题 → 试试 SGLang 作为备选