在WSL中通过SGLang部署优化版LLM
配置环境与模型选择
本教程以16GB内存、NVIDIA 3060(笔记本)6GB显存为例,介绍如何在WSL中使用SGLang部署大语言模型(LLM)。以下是具体步骤。
前置条件
- NVIDIA驱动版本需≥535,支持CUDA 12.x。
- 关闭占用内存或显存的后台程序(如浏览器、游戏等)。
- 确保Windows虚拟内存开启,建议设置为16GB或更高。
安装依赖
打开终端执行以下命令:
// 安装基础依赖项
pip install "sglang[all]" --upgrade
// 安装模型相关的工具库
pip install transformers torch accelerate
模型下载与量化
推荐使用Hugging Face提供的4-bit量化模型,例如`Qwen/Qwen3.5-9B-Instruct-GPTQ-Int4`。此模型经过GPTQ优化,专为NVIDIA GPU设计,仅占用约5.1GB显存。
启动服务
以下命令针对6GB显存进行了优化,可直接复制运行:
python -m sglang.launch_server \
--model Qwen/Qwen3.5-9B-Instruct-GPTQ-Int4 \
--quantization gptq \
--offload-model 0.65 \ # 将65%的模型加载到GPU上,其余部分分配给CPU
--max-seq-len 8192 \ # 上下文长度设为8k,若显存不足可调整为4096
--gpu-mem-util 0.95 \ # 设置显存利用率至95%
--port 30000 # 指定服务端口为30000
测试接口
通过浏览器访问`http://localhost:30000`,或者使用curl进行测试:
curl http://localhost:30000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.5-9b",
"messages": [{"role": "user", "content": "你好,请简单介绍一下自己"}]
}'
专属优化参数
以下是针对6GB显存的优化参数:
| 参数 | 取值范围 | 作用 |
|---|---|---|
| --offload-model 0.65 | 0.6~0.7 | 控制GPU与CPU之间的模型分配比例,6GB显存最佳值为0.65。 |
| --max-seq-len | 4096/8192 | 上下文窗口长度,4096更稳定,8192则平衡性能与显存占用。 |
| --quantization gptq | gptq | 启用4-bit量化,显著降低显存需求。 |
| --gpu-mem-util | 0.95 | 最大化利用3060显存,避免浪费。 |
常见问题处理
- 如果出现显存溢出(OOM),可以将`--offload-model`降低至0.6,或将`--max-seq-len`改为4096。
- 若运行速度较慢,尝试将`--offload-model`提高至0.7,并确保关闭其他占用资源的程序。
- 模型下载缓慢时,可通过设置镜像源加速:`set HF_ENDPOINT=https://hf-mirror.com`(适用于Windows系统)。
总结
SGLang凭借其高效性能和简洁API,是3060 6GB显存用户部署高性能LLM服务的理想选择。结合4-bit量化模型和合理参数配置,能够平稳运行Qwen3.5-9B。