快速部署DeepSeek-V3、DeepSeek- R1模型
更新时间:2025-09-04
DeepSeek-V3 是一款由深度求索公司开发的一款拥有6710亿参数的专家混合(MoE)大语言模型,支持文本、图像、音频等多种数据类型的处理。DeepSeek-R1是基于DeepSeek-V3-Base训练的高性能推理模型。百舸平台提供了基于vLLM、SGLang加速部署的能力,帮助您快速部署DeepSeek-V3和DeepSeek-R1系列模型。百舸目前支持在自运维资源池和轻量计算实例两种资源形态上部署DeepSeek,轻量实例更灵活可以快速体验模型效果,资源池更稳定适合部署在线推理服务。您可以根据需求选择部署方式。
支持部署以下模型,模型大小请参考附录:
- DeepSeek-V3
- DeepSeek-R1
- DeepSeek-R1-Distill-Qwen-1.5B
- DeepSeek-R1-Distill-Qwen-7B
- DeepSeek-R1-Distill-Llama-8B
- DeepSeek-R1-Distill-Qwen-14B
- DeepSeek-R1-Distill-Qwen-32B
- DeepSeek-R1-Distill-Llama-70B
轻量实例部署
开通轻量计算实例
可根据下表的推荐配置开通算力计算实例并添加到百舸AI计算平台。
*注意:部分机型需开通白名单,请联系百度售前工程师;
部署vLLM
- 登录百舸AI计算平台
- 在左侧导航中选择 工具市场
- 进入工具市场页面,部署工具 vLLM
准备模型文件
- vLLM部署成功后,点击 登录 查看登录信息SSH登录
Plain Text
1ssh your_username@your_server_ip
- 下载模型
Plain Text
1modelscope download --model="deepseek-ai/DeepSeek-V3" --local_dir PATH_TO_MODEL
启动vLLM服务
Plain Text
1python -m vllm.entrypoints.openai.api_server \
2--model PATH_TO_MODEL \
3--served-model-name DeepSeek-V3 \
4--port $API_PORT
5--tensor-parallel-size 1
6--max-num-seqs 64
7--max_model_len=4096
设置WebUI 开启对话
- 下载并安装 ChatBoxAI客户端 https://chatboxai.app/zh
- 点击 设置 添加自定义提供方
- 在设置中输入模型名称和API域名,API调用地址可在百舸控制台已部署的vLLM实例的登录信息中获取,输入时需要在调用地址后拼接/v1/
- 输入问题,开启对话
资源池部署
前置条件
- 创建自运维资源池,可参考附录创建相应机型的资源池。 注意:购买H20、L20机器需要先联系百度售前工程师开通白名单。
- 开通PFS与资源池关联。
准备模型文件
- 从开源社区下载模型文件
- 登录百舸AI计算平台
- 在左侧导航中选择 数据下载
- 进入数据集/模型管理页面,点击 创建数据集/模型
- 创建内容选择模型,复制开源模型名称即可一键从HuggingFace下载模型权重文件存储到BOS对象存储中
- 将模型文件转储到PFS
在数据集/模型管理 列表中找到已下载成功的模型文件,点击 数据转储 将模型文件转储到需要部署的资源池关联的PFS中。
部署模型
- 登录百舸AI计算平台
- 在左侧导航中选择 在线服务部署
- 进入自定义部署页面点击 部署服务
- 填写部署模型服务的相关参数:
a.服务镜像选择 CCR企业版镜像>百舸预置镜像 平台提供vLLM和SGLang加速镜像,部署全尺寸R1和V3建议使用sglang v0.4.3,部署蒸馏模型建议使用vllm-openai v0.7.1
b.启动命令:输入附录中对应模型的vLLM和SGLang启动命令
c.挂载存储模型权重文件的PFS路径
5.部署服务,等待服务状态为“运行中”即可调用。
调用模型服务
- 在服务详情中查看访问地址和服务端口
- 请求示例
curl语句:
Plain Text
1curl http://192.168.0.46:8000/v1/completions \
2 -H "Content-Type: application/json" \
3 -d '{
4 "model": "DeepSeek-R1-Distill-Llama-70B",
5 "prompt": "鸡兔同笼,头共20个,足共62只,求鸡与兔各有多少只?"
6 }'
python语句:
Plain Text
1from openai import OpenAI
2
3openai_api_key = "EMPTY"
4openai_api_base = "http://192.168.0.46:8000/v1"
5
6client = OpenAI(
7 api_key=openai_api_key,
8 base_url=openai_api_base,
9)
10
11models = client.models.list()
12model = models.data[0].id
13
14# Round 1
15messages = [{"role": "user", "content": "鸡兔同笼,头共20个,足共62只,求鸡与兔各有多少只?"}]
16response = client.chat.completions.create(model=model, messages=messages)
17
18reasoning_content = response.choices[0].message.reasoning_content
19content = response.choices[0].message.content
20
21print("reasoning_content:", reasoning_content)
22print("content:", content)
- 响应结果
Plain Text
1reasoning_content:
2首先,设鸡的数量为x,兔的数量为y。根据题意,鸡和兔的总头数为20,只数为62。
3
4建立方程组:
5x + y = 20
62x + 4y = 62
7
8通过代数方法消元,求解方程组,得出x和y的值。
9
10content:
11
12**解答:**
13
14设鸡的数量为 \( x \) 只,兔的数量为 \( y \) 只。
15
16根据题意,可以建立以下方程组:
17
18\[
19\begin{cases}
20x + y = 20 & \text{(头的总数)} \\
212x + 4y = 62 & \text{(足的总数)}
22\end{cases}
23\]
24
25**步骤1:简化方程**
26
27将第二个方程两边同时除以2,得到:
28
29\[
30x + 2y = 31
31\]
32
33**步骤2:消元**
34
35用简化后的方程减去第一个方程:
36
37\[
38(x + 2y) - (x + y) = 31 - 20
39\]
40
41化简得到:
42
43\[
44y = 11
45\]
46
47**步骤3:回代求解 \( x \)**
48
49将 \( y = 11 \) 代入第一个方程:
50
51\[
52x + 11 = 20
53\]
54
55解得:
56
57\[
58x = 9
59\]
60
61**最终答案:**
62
63\[
64\boxed{鸡有9只,兔子有11只}
65\]
附录
推荐配置
模型名称 | 模型大小 | 推荐配置 | 云上可用实例 | 目录价参考 |
---|---|---|---|---|
DeepSeek-V3 | FP8:700 GB | H20 *8 | ebc.lgn7t.c208m2048.8h20.4d | 包年包月:¥140,000.00元/月 |
DeepSeek-R1 | FP8:700 GB | H20 *8 | ebc.lgn7t.c208m2048.8h20.4d | 包年包月:¥140,000.00元/月 |
DeepSeek-R1-Distill-Qwen-1.5B | BF16:3.55 GB | A10 *1 L20 *1 |
bcc.gn5.c28m112.1a10 bcc.gn5i.c28m112.1l20 |
A10_bcc.gn5.c28m112.1a10 包年包月:¥5,270.00元/月 按量计费:¥10.98元/小时 L20_bcc.gn5i.c28m112.1l20 包年包月:¥8,000.00元/月 |
DeepSeek-R1-Distill-Qwen-7B | BF16:15.23 GB | A10 *1 L20 *1 |
bcc.gn5.c28m112.1a10 bcc.gn5i.c28m112.1l20 |
A10_bcc.gn5.c28m112.1a10 包年包月:¥5,270.00元/月 按量计费:¥10.98元/小时 L20_bcc.gn5i.c28m112.1l20 包年包月:¥8,000.00元/月 |
DeepSeek-R1-Distill-Llama-8B | BF16:16.06 GB | A10 *1 L20 *1 |
bcc.gn5.c28m112.1a10 bcc.gn5i.c28m112.1l20 |
A10_bcc.gn5.c28m112.1a10 包年包月:¥5,270.00元/月 按量计费:¥10.98元/小时 L20_bcc.gn5i.c28m112.1l20 包年包月:¥8,000.00元/月 |
DeepSeek-R1-Distill-Qwen-14B | BF16:29.54 GB | A10 *2 L20 *1 |
bcc.gn5.c56m244.2a10 bcc.gn5i.c28m112.1l20 |
A10_bcc.gn5.c56m244.2a10 包年包月:¥10,540.00元/月 按量计费:¥21.96元/小时 L20_bcc.gn5i.c28m112.1l20 包年包月:¥8,000.00元/月 |
DeepSeek-R1-Distill-Qwen-32B | BF16:65.53 GB | A10 *4 L20 *2 |
bcc.gn5.c112m476.4a10 bcc.gn5i.c56m224.2l20 |
A10_bcc.gn5.c28m112.4a10 包年包月:¥21,206.00元/月 按量计费:¥44.18 元/小时 L20_bcc.gn5i.c28m112.2l20 包年包月:¥16,000.00元/月 |
DeepSeek-R1-Distill-Llama-70B | BF16:150 GB | L20 *4 | bcc.gn5i.c112m476.4l20 | 包年包月:¥32,000.00元/月 |
vLLM启动命令
模型名称 | 启动命令 |
---|---|
DeepSeek-V3 | python3 -m vllm.entrypoints.openai.api_server --port {port} --model PATH_TO_MODEL --served-model-name DeepSeek-V3 --trust-remote-code --tensor-parallel-size 8 --max-num-seqs 64 --max_model_len 2048 --enable-reasoning --reasoning-parser deepseek_r1 --gpu_memory_utilization 0.98 --enforce_eager |
DeepSeek-R1 | python3 -m vllm.entrypoints.openai.api_server --port {port} --model PATH_TO_MODEL --served-model-name DeepSeek-R1 --trust-remote-code --tensor-parallel-size 8 --max-num-seqs 64 --max_model_len 2048 --enable-reasoning --reasoning-parser deepseek_r1 --gpu_memory_utilization 0.98 --enforce_eager |
DeepSeek-R1-Distill-Qwen-1.5B | python3 -m vllm.entrypoints.openai.api_server --port {port} --model PATH_TO_MODEL --served-model-name DeepSeek-R1-Distill-Qwen-1.5B --tensor-parallel-size 1 --max-num-seqs 64 --max_model_len=2048 --enable-reasoning --reasoning-parser deepseek_r1 |
DeepSeek-R1-Distill-Qwen-7B | python3 -m vllm.entrypoints.openai.api_server --port {port} --model PATH_TO_MODEL --served-model-name DeepSeek-R1-Distill-Qwen-7B --tensor-parallel-size 1 --max-num-seqs 64 --max_model_len=2048 --enable-reasoning --reasoning-parser deepseek_r1 |
DeepSeek-R1-Distill-Llama-8B | python3 -m vllm.entrypoints.openai.api_server --port {port} --model PATH_TO_MODEL --served-model-name DeepSeek-R1-Distill-Llama-8B --tensor-parallel-size 1 --max-num-seqs 64 --max_model_len=2048 --enable-reasoning --reasoning-parser deepseek_r1 |
DeepSeek-R1-Distill-Qwen-14B | plain python3 -m vllm.entrypoints.openai.api_server --port {port} --model PATH_TO_MODEL --served-model-name DeepSeek-R1-Distill-Qwen-14B --tensor-parallel-size 1 --max-num-seqs 64 --max_model_len=2048 --enable-reasoning --reasoning-parser deepseek_r1 |
DeepSeek-R1-Distill-Qwen-32B | python3 -m vllm.entrypoints.openai.api_server --port {port} --model PATH_TO_MODEL --served-model-name DeepSeek-R1-Distill-Qwen-32B --tensor-parallel-size 1 --max-num-seqs 64 --max_model_len=2048 --enable-reasoning --reasoning-parser deepseek_r1 |
DeepSeek-R1-Distill-Llama-70B | python3 -m vllm.entrypoints.openai.api_server --port {port} --model PATH_TO_MODEL --served-model-name DeepSeek-R1-Distill-Llama-70B --tensor-parallel-size 2 --quantization fp8 --kv-cache-dtype fp8_e4m3 --max-num-seqs 64 --max_model_len=2048 --enable-reasoning --reasoning-parser deepseek_r1 |
SGLang启动命令
模型名称 | 启动命令 |
---|---|
DeepSeek-V3、R1 | python3 -m sglang.launch_server --model PATH_TO_MODEL --tp 8 --trust-remote-code --host 0.0.0.0 --port {port} --mem-fraction-static 0.90 |