场景简介
DeepSeek-R1在数学推理、编程竞赛等多个任务上表现出色,不仅超过了其他闭源模型,而且在某些任务上接近或超越了OpenAI-o1系列模型。一经发布,DeepSeek-R1模型便火爆海内外。本实验介绍了如何在Anolis OS 8上使用AC2容器部署生产可用的DeepSeek推理服务。
费用说明
本实验时长为一小时,预计产生费用为10元,其中包含0.8元/GB的公网流量费用。如果您调整了资源规格、使用时长,或执行了本方案以外的操作,可能导致费用发生变化,请以控制台显示的实际价格和最终账单为准。
背景知识
本场景主要涉及以下云产品和服务:
DeepSeek-R1
DeepSeek-R1在后训练阶段大规模使用了强化学习技术,在仅有极少标注数据的情况下,极大提升了模型推理能力。DeepSeek-R1在数学、代码、自然语言推理等任务上的性能接近或达到OpenAI o1正式版的水平。DeepSeek-R1-Distill-Qwen则是通过DeepSeek-R1的输出,基于Qwen大语言模型,经过模型蒸馏的小模型,其中32B和70B模型在多项能力上实现了对标OpenAI o1-mini的效果。
龙蜥操作系统
龙蜥操作系统Anolis OS 8是OpenAnolis龙蜥社区发行的开源Linux发行版,支持多计算架构,提供稳定、高性能、安全、可靠的操作系统支持。Anolis OS 8中通过引入龙蜥生态软件仓库(EPAO),实现一键安装部署AI开发环境,解决了AI组件之间繁琐的依赖关系,加速AI应用的开发、部署流程。
EPAO仓库为开发者提供了一键安装主流NVIDIA GPU驱动和CUDA加速库的功能,简化了驱动版本匹配和手动安装的繁琐过程。仓库中的组件均经过兼容性测试,确保一键安装时无需修改系统依赖项,从而提升了使用过程中的稳定性。
Alibaba Cloud AI Containers概述
Alibaba Cloud AI Containers(简称AC2)是阿里云官方推出的一系列AI容器镜像的合集。AC2内置了多种硬件加速库、AI运行时和AI框架等,能够满足用户在不同场景下的部署需求。同时,它还针对阿里云基础设施(如 ECS、ACK 和 ACS)进行了深度优化,从而提升了用户的AI性能和体验。
创建实验资源
在实验页面,勾选我已阅读并同意《阿里云云起实践平台服务协议》和我已授权阿里云云起实践平台创建、读取及释放实操相关资源后,单击开始实操。
创建资源需要5分钟左右的时间,请您耐心等待。
在云产品资源列表,您可以查看本场景涉及的云产品资源信息。

安全设置
资源创建完成后,为了保护您阿里云主账号上资源的安全,请您重置云服务器ECS的登录密码、设置安全组端口。
重置云服务器ECS的登录密码。
在云产品资源列表的ECS云服务器区域,单击管理。

在实例详情页签的基本信息区域,单击重置密码。

在重置实例密码对话框中,设置新密码和确认密码,重置密码的方式选择在线重置密码,配置SSH密码登录策略选择开启,单击确认修改。

返回如下结果,表示ECS实例root用户的登录密码重置成功。

设置安全组端口。
在云产品资源列表的安全组区域,单击管理。

在访问规则区域的入方向中,添加8000端口。

准备容器运行环境
在云产品资源列表的ECS云服务器区域,单击远程连接。

在登录实例对话框中,输入用户自定义密码,单击确定。

执行如下命令,在Anolis OS 8上使用EPAO仓库安装NVIDIA驱动以及CUDA驱动。
dnf install -y anolis-epao-release
dnf install -y kernel-devel-$(uname -r) nvidia-driver{,-cuda}
执行如下命令,在Anolis OS 8上安装Docker运行环境,并安装NVIDIA Container Toolkit来支持GPU容器。
dnf config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
dnf install -y docker-ce nvidia-container-toolkit
systemctl restart docker
执行如下命令,安装运行依赖系统组件。
dnf install -y curl jq git{,-lfs}
git lfs install
执行如下命令,下载模型文件。
git clone https://www.modelscope.cn/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B.git
运行DeepSeek容器
执行如下命令,从AC2拉取容器镜像,并运行DeepSeek部署容器。
镜像会检查MODEL_DIR
环境变量设置的模型目录下是否存在模型文件,并运行自动启动vLLM推理服务,以OpenAI API接口透出服务。
docker run -d -p 8000:8000 --gpus all \
-v ./DeepSeek-R1-Distill-Qwen-7B:/models/DeepSeek-R1-Distill-Qwen-7B \
-e MODEL_DIR=/models/DeepSeek-R1-Distill-Qwen-7B \
ac2-registry.cn-hangzhou.cr.aliyuncs.com/ac2/qwen2:7b-pytorch2.4.0-cuda12.1.1-py310-alinux3.2104
执行如下命令,查看运行中的容器。
返回如下结果,可以获取到DeepSeek部署容器的容器ID。

执行如下命令,查看DeepSeek部署容器的运行日志。
说明
您需要将命令中的<container_id>
替换为上一步获取的容器ID后,再执行命令。
docker logs <container_id>
容器正常运行后日志输出类似如下结果,可以查看到API服务已在本地8000端口运行。

通过curl实用程序可以测试模型推理效果。例如,执行如下命令,提问9.9和9.11哪个大?。
说明
如果您需要提问其它问题,修改示例命令中content的内容,即可提问。
curl -s http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model": "/models/DeepSeek-R1-Distill-Qwen-7B",
"messages": [{"role": "user", "content": "9.9和9.11哪个大?"}],
"max_tokens": 1024, "temperature": 0.9
}' | \
jq '.choices[0].message.content' | \
xargs echo -e
模型输出如下,由于 DeepSeek-R1 为推理模型,模型输出大致分为思考部分以及回答部分。

总结
通过Anolis OS 8所提供的原生AI能力,结合AC2容器化AI运行环境的预配置,用户得以免去自行部署CUDA驱动及安装PyTorch/vLLM等繁琐步骤,极大地简化了部署流程,有效规避了因组件与驱动版本不兼容所引发的潜在问题,更专注于核心业务逻辑,而无需被底层技术细节所困扰。这一创新组合显著降低了在生产环境中部署人工智能技术的门槛,真正使得AI技术普惠广大用户。