DeepSeek是一款由杭州深度求索公司推出的AI大模型,类似于ChatGPT、豆包、Kimi等AI工具,它不仅能给出答案,而且还能像进行“深度思考”。目前很多国内云服务器商都支持部署DeepSeek模型服务。本文就以国内云服务器商腾讯云为例,使用SGLang在单台GPU云服务器实例上进行满血版DeepSeek推理服务部署。
一、创建并配置腾讯云GPU云服务器实例
腾讯云作为一家全球领先的云计算服务商,面向全世界各个国家和地区提供云计算、大数据、人工智能等服务,热门产品包括云服务器、轻量应用服务器、GPU云服务器、对象存储、内容分发网络CDN等,适用于各种业务场景。
腾讯云GPU云服务器就是提供GPU算力的弹性计算服务,主要应用于深度学习训练/推理、图形图像处理以及科学计算等场景。提供类型丰富的GPU计算实例,如计算型实例、渲染型实例等,可满足不同业务应用场景的需求。
《点击进入官网选购》
1、进入腾讯云官网,点击“免费注册“,完成注册后登录账号即可。
2、进入GPU云服务器购买页面,选择计费模式、地域(可用区)及实例。
- 实例:计算型PNV6,类型选择PNV6.32XLARGE1280或PNV6.96XLARGE2304,两规格均搭载8块GPU卡。
- 镜像:推荐使用TencentOS Server 3.1(TK4)。
- 驱动:推荐使用535以上GPU驱动+12.4CUDA。
a.POC测试-按量付费
进入云服务器购买页,计费模式选择按量计费、选择地域可用区,架构选择异构计算,实例族选择GPU机型,类型选择8卡PNV6规格。
镜像选择TencentOS Server 3.1(TK4)镜像,勾选后台自动安装GPU驱动。如下图所示:
云盘规格按需选择,建议准备大于800G的存储空间。完成VPC网络、公网资源、安全组、实例名称、登录方式等配置后提交订单。
b.长期业务部署-包销/包月
正式购买阶段,需通过高性能计算平台-工作空间购买,计费模式为包年包月或包销计费。
3、核对订单信息后,点击“立即购买”,完成支付即可。
4、支付成功后,进入控制台,待实例创建启动完毕,即可进行登录操作。
5、配置容器环境
登录实例,执行以下命令配置容器环境:
curl -s -L http://mirrors.tencent.com/install/GPU/taco/get-nvidia-docker2.sh | sudo bash
6、准备存储空间
- 方式一:使用CFS Turbo文件系统挂载到实例内/cfs目录。
- 方式二:如果使用云硬盘存储模型,建议准备大于800G的存储空间,需要初始化云硬盘,将该磁盘挂载到实例内/data挂载点。
二、下载DeepSeek模型权重
满血版DeepSeek模型即DeepSeek-R1/V3,参数规模为671B(6710亿参数),其模型权重已开源。
1、进入准备好的存储目录/data或/cfs,根据需要选择命令下载模型权重:
# 上海地域 DeepSeek R1
wget https://haihub-model-1251001002.cos.ap-shanghai.myqcloud.com/DeepSeek-R1_1739186633750.zip
# 南京地域 DeepSeek R1
wget https://haihub-model-nj-1251001002.cos.ap-nanjing.myqcloud.com/DeepSeek-R1_1739186633750.zip
# 上海地域 DeepSeek V3
wget https://haihub-model-1251001002.cos.ap-shanghai.myqcloud.com/DeepSeek-V3_1739186651905.zip
# 南京地域 DeepSeek V3
wget https://haihub-model-nj-1251001002.cos.ap-nanjing.myqcloud.com/DeepSeek-V3_1739186651905.zip
# 可选,附加下载,上面四个必选其一下载
# 注意:当前 DeepSeek R1 权重为旧版本,可能无法触发思维链,如有强制思维链的需求,使用最新版 tokenizer.json 替换即可
wget https://haihub-model-1251001002.cos.ap-shanghai.myqcloud.com/tokenizer_config.json
2、解压下载好的模型权重:
UNZIP_DISABLE_ZIPBOMB_DETECTION=TRUE nohup unzip DeepSeek-R1_xxxxxxxxxxxxx.zip -d ./DeepSeek-R1 &
3、解压完毕后,检查模型权重文件解压文件序号是否连续完整。
三、部署DeepSeek推理服务
1、拉取推理容器镜像
# -v 映射到容器里面的目录根据实际情况调整
# 将宿主机内下载地址 /data 或 /cfs 映射到 docker 目录
docker run \
-itd \
--gpus all \
--privileged --cap-add=IPC_LOCK \
--ulimit memlock=-1 --ulimit stack=67108864 \
-v /data0:/data \
-v /cfs:/cfs \
--net=host \
--ipc=host \
--name=sglang_tencent aicompute.tencentcloudcr.com/aibench/sglang:0.4.3post4_tencent
2、进入容器镜像。
运行以下命令,进入上一步拉起的容器镜像环境。
docker exec -it sglang_tencent bash
3、启动推理服务。
# --model-path 修改为模型权重所在地址
# --tp 8 单机部署为8
# 如果测试性能指标,可以使用 --disable-radix-cache 参数以禁用 prefill cache,避免因为缓存命中率影响
nohup python3 -m sglang.launch_server --model-path /data/DeepSeek-R1 --tp 8 --disable-radix-cache --trust-remote-code --mem-fraction-static 0.9 --host 0.0.0.0 --port 30030 2>&1 > ds_infer_$(date +'%Y%m%d_%H%M%S').log &
在当前路径查看日志文件ds_infer_$(date+'%Y%m%d_%H%M%S').log,检查节点启动日志查看推理服务是否正常启动以及监听端口是否正常,若日志中有以下提示,则表明推理服务已正常部署:
四、DeepSeek模型互动体验
打开一个新的终端页面,向刚部署的推理服务发送请求:
# 若在其他服务器访问推理服务,127.0.0.1可以改成部署服务节点 eth0 对应 IP,访问端口号需要与启动推理服务的端口号保持一致,推理服务使用的是30030
# model 需要指定为 server 的 model 名 /data0/DeepSeek-R1
# stream 参数开启决定是否流式输出,以下为流式输出交互命令
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ''" \
-d '{
"model": "/data0/DeepSeek-R1",
"messages": [
{"role": "user", "content": "你好!请帮我制定一个去大理游玩的计划!"}
],
"temperature": 0.7,
"stream": true
}' \
"http://127.0.0.1:30030/v1/chat/completions"
# stream 参数开启决定是否流式输出,以下为非流式输出交互命令
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ''" \
-d '{
"model": "/data0/DeepSeek-R1",
"messages": [
{"role": "user", "content": "你好!请帮我制定一个去大理游玩的计划!"}
],
"temperature": 0.7
}' \
"http://127.0.0.1:30030/v1/chat/completions"
若选择非流式输出,可以看到如下返回:
相关推荐: