You need to enable JavaScript to run this app.
文档中心
云服务器

云服务器

复制全文
下载 pdf
AIGC实践
搭建DeepSeek-R1-Distill模型进行文本生成推理
复制全文
下载 pdf
搭建DeepSeek-R1-Distill模型进行文本生成推理
本文主要介绍如何在云服务器实例中部署不同参数量级的DeepSeek-R1-Distill模型并使用CPU进行推理,以及通过Intel xFasterTransformer实现推理过程加速的方案。
背景信息
DeepSeek-R1-Distill模型
DeepSeek-R1-Distill是一个基于DeepSeek-R1生成的800K个样本,对原开源模型进行微调得到的新模型,旨在以更小参数规模保留DeepSeek-R1发现的强大推理模型。您可以根据本文指引,按需部署不同参数量级的模型。
模型名称
参数量级
DeepSeek-R1-Distill-Qwen-1.5B
1.5B
DeepSeek-R1-Distill-Qwen-7B
7B
DeepSeek-R1-Distill-Llama-8B
8B
DeepSeek-R1-Distill-Qwen-32B
32B
xFasterTransformer
Intel xFasterTransformer 是Intel®开发的一个加速库,旨在为大语言模型(LLM)在CPU X86平台上的部署提供了一种深度优化的解决方案。支持多CPU节点之间的分布式部署方案,使得超大模型在CPU上的部署成为可能。此外,xFasterTransformer提供了C++和Python两种API接口,涵盖了从上层到底层的接口调用,易于用户使用并将xFasterTransformer集成到自有业务框架中。更多信息,可查看xFasterTransformer
oneCCL
oneCCL(One Collective Communication Library)是Intel®推出的一种集体通信库,旨在为分布式深度学习训练提供高性能的通信支持。它提供了一组优化的通信算法和数据结构,可用于在分布式环境中实现高效的通信操作。
oneDNN
oneDNN(oneAPI Deep Neural Network Library)是Intel®开发的一个深度学习加速库,旨在优化和加速深度学习模型的推理和训练。它提供了一系列高效的算法和优化,用于在英特尔处理器(CPU)、图形处理器(GPU)和其他硬件加速器上执行深度学习任务。
使用场景
  • 低成本体验
  • 若您希望体验自行部署、运行DeepSeek模型,对AI性能要求较低,云服务器实例的CPU性能足以满足您的需求,且相较于选用GPU实例成本更低。
  • 开发和调试
  • 若您在进行DeepSeek模型的开发、调试,使用CPU实例可以避免GPU驱动、CUDA版本等兼容性问题,降低开发和管理成本。
  • 轻量级模型需求
  • 若您任务规模较小(低频调用、小批量数据处理),云服务器实例的多核CPU足以满足性能要求。
操作步骤
步骤一:准备环境
根据期望部署的模型参数规模,购买符合要求的创建CPU实例了解更多
配置项
推荐配置
基础配置
计算规格
ecs.c3il.2xlarge
说明
若您期望部署不同参数规模的DeepSeek-R1-Distill模型,可参考如下推荐选用实例:
  • DeepSeek-R1-Distill-Qwen-1.5B:推荐选用ecs.c3il.2xlarge、ecs.c3i.2xlarge规格
  • DeepSeek-R1-Distill-Qwen-7B:推荐选用ecs.c3il.8xlarge、ecs.c3i.8xlarge规格
  • DeepSeek-R1-Distill-Llama-8B:推荐选用ecs.c3il.8xlarge、ecs.c3i.8xlarge规格。
  • DeepSeek-R1-Distill-Qwen-32B:推荐选用ecs.c3il.16xlarge、ecs.c3i.16xlarge规格。
镜像
Ubuntu 22.04 64 bit
存储
  • 规格:极速型SSD FlexPL云盘或吞吐型SSD TL0云盘
  • 容量:不低于 100 GiB
说明
本文使用的DeepSeek-R1-Distill-Qwen-1.5B模型参数量为1.5B,您可以根据实际部署的模型参数量级调整云盘容量。推荐配置如下:
  • DeepSeek-R1-Distill-Qwen-1.5B:不低于 100 GiB
  • DeepSeek-R1-Distill-Qwen-7B:不低于 100 GiB
  • DeepSeek-R1-Distill-Llama-8B:不低于 100 GiB
  • DeepSeek-R1-Distill-Qwen-32B:不低于 200 GiB。
网络配置
弹性公网IP
勾选“分配弹性公网IP”。
步骤二:部署模型
方案
支持模型
说明
通过Docker部署(推荐)
  • DeepSeek-R1-Distill-Qwen-1.5B
  • DeepSeek-R1-Distill-Qwen-7B
  • DeepSeek-R1-Distill-Qwen-32B
  • 适用于快速部署非Llama模型场景
  • 无需跨境下载依赖工具,部署过程简单
手动部署
  • DeepSeek-R1-Distill-Qwen-1.5B
  • DeepSeek-R1-Distill-Qwen-7B
  • DeepSeek-R1-Distill-Llama-8B
  • DeepSeek-R1-Distill-Qwen-32B
  • 适用于部署Qwen与Llama模型的场景
  • 需要跨境下载依赖工具,部署过程相对复杂
通过Docker部署
手动部署
  1. 执行如下命令,安装Docker。
  • sudo apt update
    sudo apt install -y docker.io
  1. 执行如下命令,启动Docker和模型服务。
  • docker run -d --network host --privileged --shm-size 15g -v /data00/models:/data00/models -e MODEL_PATH=/data00/models -e PORT=8000 -e MODEL_NAME=DeepSeek-R1-Distill-Qwen-7B -e DTYPE=bf16 -e KV_CACHE_DTYPE=fp16 ai-containers-cn-beijing.cr.volces.com/deeplearning/xft-vllm:1.8.2.iaas bash /llama2/entrypoint.sh
  • 参数说明:
  • MODEL_PATH:模型存储路径,默认为/data/models
  • MODEL_NAME:待部署的模型名称,默认值为DeepSeek-R1-Distill-Qwen-7B。取值支持:DeepSeek-R1-Distill-Qwen-1.5BDeepSeek-R1-Distill-Qwen-7BDeepSeek-R1-Distill-Qwen-32B
  • PORT:服务监听的端口号,默认值8000
  • DTYPE:模型量化类型,默认值为bf16。取值支持:autohalffloat16bfloat16floatfloat32fp16bf16int8w8a8int4nf4bf16_fp16bf16_int8bf16_w8a8bf16_int4bf16_nf4w8a8_int8w8a8_int4w8a8_nf4
  • KV_CACHE_DTYPE:KV_CACHE量化类型,默认值为fp16。取值支持:autofp8fp8_e5m2fp8_e4m3fp16int8
  1. 执行如下命令,通过Docker日志确认容器及模型是否成功启动。
  1. 查看容器ID。
  • docker ps
  1. 查看对应容器的运行日志。
  • docker logs --since 30m <CONTAINER_ID>
说明
请将<CONTAINER_ID>替换为实际容器ID。
  1. 执行如下命令,查看端口启动情况。
  • netstat -lntp | grep 8000
  • 回显示例:
  • 回显如下所示时,表示8000端口已成功处于监听状态。
步骤三:调用模型
注意
若您选用“手动部署”方案,调用模型时请勿关闭运行推理服务的终端,请在浏览器中新建页面再次登录目标实例。后续,您可以在新建的终端中调用模型。
  1. 执行如下命令安装jq,美化模型输出。
  • sudo apt install -y jq
  1. 执行如下命令调用模型,确保部署的模型可以正常进行推理。
  • curl http://localhost:8000/v1/chat/completions -H "Content-Type: application/json" -d '{
    "model": "xft",
    "messages":[{"role":"user","content":"你好呀!请问你是谁?"}],
    "max_tokens": 256,
    "temperature": 0.6
    }' | jq
  • 参数说明:
  • 本文仅说明验证使用到的参数信息,更多参数详情可查看DeepSeek API文档
  • 参数名
    说明
    取值样例
    model
    使用的模型名称。
    xft
    messages
    对话的消息列表。
    • role:该消息的发起角色。
    • content:消息的内容。
    -
    max_tokens
    指定一次请求中模型生成Completion的最大Token数。取值:
    • 介于18192 间的整数,如未指定 max_tokens参数。
    • 默认值为 4096
    100
    temperature
    采样温度,值越高(例如1)会使输出更随机,而值越低(例如0.2)会使其更加集中和确定。取值:介于 02 之间。
    0.7
  • 回显示例:
附录
资源
地域
下载方式
推理引擎
华北2(北京)
docker pull ai-containers-cn-beijing.cr.volces.com/deeplearning/xft-vllm:1.8.2.iaas
模型文件
说明
请使用tosutil下载模型文件。
DeepSeek-R1-Distill-Qwen-1.5B
华北2(北京)
https://iaas-public-model-cn-beijing.tos-cn-beijing.ivolces.com/models/DeepSeek-R1-Distill-Qwen-1.5B/
华东2(上海)
https://iaas-public-model-cn-shanghai.tos-cn-shanghai.ivolces.com/models/DeepSeek-R1-Distill-Qwen-1.5B/
DeepSeek-R1-Distill-Qwen-7B
华北2(北京)
https://iaas-public-model-cn-beijing.tos-cn-beijing.ivolces.com/models/DeepSeek-R1-Distill-Qwen-7B/
华东2(上海)
https://iaas-public-model-cn-shanghai.tos-cn-shanghai.ivolces.com/models/DeepSeek-R1-Distill-Qwen-7B/
DeepSeek-R1-Distill-Qwen-32B
华北2(北京)
https://iaas-public-model-cn-beijing.tos-cn-beijing.ivolces.com/models/DeepSeek-R1-Distill-Qwen-32B/
华东2(上海)
https://iaas-public-model-cn-shanghai.tos-cn-shanghai.ivolces.com/models/DeepSeek-R1-Distill-Qwen-32B/
最近更新时间:2025.02.28 16:24:49
这个页面对您有帮助吗?
有用
有用
无用
无用