地表最强SGLang部署本地Qwen3-32B大模型--实战教程

大模型数据安全容器

前言

在企业中部署大模型,相信各位都有 ”数据不出库 “ 的需求。
想用大模型的能力,又要保证数据安全
有 且只有一条出路:本地部署大模型

本地部署大模型,只需三步:下载模型--选推理引擎--启动服务

picture.image

硬件要求

  • 显存 :至少需 2*24GB(如 RTX 3090/4090)以支持 32B 模型的运行
  • 内存 :建议 32GB 以上,若使用混合推理(GPU+CPU)则需更高内存
  • 存储 :模型文件约 20GB,需预留 30GB 以上的硬盘空间

一、下载模型

[ModelScope / Huggingface] 两个方式,任君二选一

1.1 ModelScope

安装包


 
 
 
 
   
pip install -U modelscope

代码下载


 
 
 
 
   
from modelscope import snapshot\_download   
model\_dir = snapshot\_download('Qwen/Qwen3-32B',cache\_dir='/NV/llm\_models/Qwen/Qwen3-32B')

1.2 Huggingface

安装包


 
 
 
 
   
pip install -U huggingface\_hub

添加环境变量,就不存在“需要科学”的问题


 
 
 
 
   
export HF\_ENDPOINT=https://hf-mirror.com

代码下载


 
 
 
 
   
# 代码下载  
from huggingface\_hub import hf\_hub\_download  
hf\_hub\_download(repo\_id="Qwen/Qwen3-32B",local\_dir='/NV/llm\_models/Qwen/Qwen3-32B')

命令行下载


 
 
 
 
   
huggingface-cli download Qwen/Qwen3-32B --local-dir /NV/models\_hf/Qwen/QwQ-32B/

二、拉镜像

Docker-Hub官网 搜 SGLang,找到合适的镜像
默认为


 
 
 
 
   
docker pull lmsysorg/sglang:latest

picture.image

三、启动模型

SGLang官方文档查看参数

Docker 启动命令如下:


 
 
 
 
   
docker run -d --gpus all \  
           --shm-size 32g \  
           -p 8001:8001 \  
           -v /NV/models\_hf/Qwen/Qwen3-32B:/model \  
           --ipc=host \  
           lmsysorg/sglang:latest \  
    python3 -m sglang.launch\_server \  
           --model /model \  
           --tp 4 \  
           --trust-remote-code \  
           --port 8001

基本参数

  • • 启用显卡
  • • 启用全部显卡: --gpus all
  • • 启用指定几张卡: --gpus '"device=0,1,2,3"'
  • • 后台运行: -d
  • • 初次运行:验证是否正常启动了服务,先不使用 -d

附加参数

  • • 允许外部访问: --host 0.0.0.0
  • • 指定模型名称:--served-model-name Qwen3-32B
  • • 开启最大上下文长度32768: --json-model-override-args '{"rope\_scaling":{"rope\_type":"yarn","factor":4.0,"original\_max\_position\_embeddings":32768}}' --context-length 131072

四、使用Qwen3的三种方式🌐

4.1 Python调用本地Qwen3


 
 
 
 
   
import openai  
client =openai.client(base\_url="http://localhost:8001/v1",api\_key="EMPTY" )  
  
# Chat completion  
response=client.chat.completions.create(  
    model="default",  
    messages=[  
        {"role": "system","content": "You are a helpful AI assistant"},  
        {"role":"user","content":"简要介绍RAG是什么?"},  
    ],  
    temperature=0,  
    max\_tokens=64,  
)  
print(response)

4.2 HTTP 接口请求本地Qwen3


 
 
 
 
   
curl --location --request POST 'http://127.0.0.1:8001/v1/chat/completions' \  
--header 'Content-Type: application/json' \  
--data-raw '{  
    "model": "Qwen/Qwen3-32B",  
    "messages": [  
      {"role": "user", "content": "请用一句话介绍你自己"}  
    ],  
    "temperature": 0.7,  
    "max\_tokens": 512  
  }'

4.3 客户端使用本地Qwen3

以CherryStudio为例

picture.image

picture.image

4.4 查看推理速度

找到你的容器id


 
 
 
 
   
sudo docker ps   # 如0d5faf88f505

查看容器的日志


 
 
 
 
   
sudo docker logs 0d5faf88f505  # 如需实时查看,加个-f

picture.image

以下是 逐行解析 启动命令的含义和作用,按需查看。


🐳 docker run 是什么?

这是启动一个 Docker 容器的命令。你可以把它理解为“运行一个已经打包好的应用环境”。


🔧 参数详解

--gpus all

  • • 启用所有 GPU(NVIDIA 显卡),让容器可以访问你的 CUDA 设备。
  • • 需要安装好 nvidia-docker2

--shm-size 32g

  • • 设置共享内存大小为 32GB。
  • • 某些模型推理需要较大的共享内存空间,特别是大规模模型(如 DeepSeek-V3)。
  • • 默认共享内存较小(64MB),不足以支持大模型推理。

-p 8001:8001

  • • 将宿主机(也就是你当前系统的)端口 8001 映射到容器内部的 8001 端口。
  • • 用于通过浏览器或 API 访问服务: http://localhost:8001

/NV/models\_hf/Qwen/Qwen3-32B:/model

  • • 将宿主机上的 HuggingFace 缓存目录挂载到容器中的 /model
  • • 目的是:
  • • 共享模型缓存,避免重复下载
  • • 加快下次加载模型的速度

示例路径说明:

  • • 宿主机路径: /NV/models\_hf/Qwen/Qwen3-32B → 当前用户的HuggingFace 缓存目录

  • • 容器路径: /model → 容器中 root 用户的缓存路径

--ipc=host

  • • 使用宿主机的 IPC(进程间通信)命名空间。
  • • 大模型推理时可能涉及多进程通信,使用这个参数可以避免 IPC 资源限制问题。

🖼️ lmsysorg/sglang:latest
这是你要运行的镜像名称和标签:

  • lmsysorg/sglang : SGLang 的官方镜像
  • latest : 最新版本的 tag

🚀 python3 -m sglang.launch\_server

这部分是容器启动后执行的命令,用来启动 SGLang 服务。

参数解释

--model /model

  • • 加载 HuggingFace 上的模型 /model
  • • 如果本地没有这个模型,SGLang 会自动从 HF 下载并缓存到之前挂载的目录中

--tp 4

  • tp = Tensor Parallelism(张量并行)
  • • 表示使用 4 个 GPU 并行推理(适用于多卡服务器)
  • • 如果你只有 2 张卡,请设置为 --tp 2

--trust-remote-code

  • • 允许加载远程代码(某些模型依赖自定义代码实现)
  • • 如不加此参数,可能会报错: This repository requires custom code

--port 8001

  • • 指定服务监听的端口号(与前面的 -p 对应)

📦 小结:整个命令的作用

| 功能 | 说明 | | 使用 GPU | 支持深度学习加速 | | 共享内存 32G | 支持大规模模型推理 | | 挂载模型缓存 | 避免重复下载模型 | | 映射端口 | 通过 REST API 访问模型服务 | | 启动 SGLang 服务 | 加载 Qwen3-32B 模型并提供推理接口 |


实践出真知,与君共勉。

下集预告

  • • vllm部署本地Qwen3-32B大模型--实战教程(附实测)

picture.image

picture.image

点击下方卡片 关注我们

picture.image

  
📢【三连好运 福利拉满】📢  
  
🌟 若本日推送有收获:  
👍 点赞 → 小手一抖,bug没有  
📌 在看 → 一点扩散,知识璀璨  
📥 收藏 → 代码永驻,防止迷路  
🍻 分享 → 传递战友,功德+999  
🔔 关注 → 关注“AI早高峰”,追更不迷路,干货永同步  
  
💬 若有槽点想输出:  
👉 评论区已铺好红毯,等你来战!  

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
在火山引擎云搜索服务上构建混合搜索的设计与实现
本次演讲将重点介绍字节跳动在混合搜索领域的探索,并探讨如何在多模态数据场景下进行海量数据搜索。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论