天翼云910B部署DeepSeek蒸馏70B LLaMA模型实践总结
一、项目背景与目标
本文记录在天翼云昇腾910B服务器上部署DeepSeek 70B模型的全过程。该模型是基于LLaMA架构的知识蒸馏版本,模型大小约132GB。
1.1 硬件环境
- 服务器配置:天翼云910B服务器
- NPU:8×昇腾910B (每卡64GB显存)
- 系统内存:1500GB
- 操作系统:Ubuntu 22.04.5 LTS

1.2 软件环境
- CANN版本:6.5.1
- Mindie版本:2.0.T3
- Python版本:3.11
- DeepSeek模型:70B-base
二、部署步骤
2.1 环境准备
# 更新系统
apt update
apt upgrade
# 安装必要工具
apt install bash-completion
apt install iftop iotop htop atop haproxy
# 优化CPU性能
cpupower frequency-set -g performance
2.2 存储配置
# 清理并初始化新的NVME磁盘
wipefs -af /dev/nvme0n1
wipefs -af /dev/nvme1n1
# 创建物理卷
pvcreate /dev/nvme0n1
pvcreate /dev/nvme1n1
# 扩展卷组
vgextend system /dev/nvme0n1
vgextend system /dev/nvme1n1
# 扩展逻辑卷
lvextend /dev/system/lv_root /dev/nvme0n1
lvextend /dev/system/lv_root /dev/nvme1n1
# 扩展文件系统
xfs_growfs /dev/mapper/system-lv_root
2.2 华为ascend 910b mindie推理框架Docker镜像准备
# 拉取必要的Docker镜像
docker pull swr.cn-southwest-2.myhuaweicloud.com/ei-mindie/mindie:2.0.T3-800I-A2-py311-openeuler24.03-lts
2.3 模型文件准备
# 创建权重文件目录
mkdir /home/deepseek70b
chmod -R 755 /home/deepseek70b/
chown -R root:root /home/deepseek70b/
# 下载模型文件
# 下载模型分片文件
for i in $(seq -w 1 17); do
wget https://modelers.cn/coderepo/web/v1/file/State_Cloud/DeepSeek-R1-Distill-Llama-70B/main/media/model-000${i}-of-000017.safetensors
done
# 下载配置文件
wget https://modelers.cn/coderepo/web/v1/file/State_Cloud/DeepSeek-R1-Distill-Llama-70B/main/media/config.json
wget https://modelers.cn/coderepo/web/v1/file/State_Cloud/DeepSeek-R1-Distill-Llama-70B/main/media/model.safetensors.index.json
wget https://modelers.cn/coderepo/web/v1/file/State_Cloud/DeepSeek-R1-Distill-Llama-70B/main/media/tokenizer.json
wget https://modelers.cn/coderepo/web/v1/file/State_Cloud/DeepSeek-R1-Distill-Llama-70B/main/media/tokenizer_config.json
wget https://modelers.cn/coderepo/web/v1/file/State_Cloud/DeepSeek-R1-Distill-Llama-70B/main/media/generation_config.json
wget https://modelers.cn/coderepo/web/v1/file/State_Cloud/DeepSeek-R1-Distill-Llama-70B/main/media/configuration.json
# 配置文件权限
chmod 750 /home/deepseek70b/config.json
2.4 通过docker启动加载模型
docker run -it -d --net=host --shm-size=1g \
--privileged \
--name ds-deepseek-70b \
--device=/dev/davinci_manager --device=/dev/hisi_hdc --device=/dev/devmm_svm \
--device=/dev/davinci0 --device=/dev/davinci1 --device=/dev/davinci2 --device=/dev/davinci3 \
--device=/dev/davinci4 --device=/dev/davinci5 --device=/dev/davinci6 --device=/dev/davinci7 \
-v /usr/local/Ascend/driver:/usr/local/Ascend/driver:ro \
-v /usr/local/sbin:/usr/local/sbin:ro \
-v /home/deepseek70b:/home/deepseek70b:ro \
swr.cn-southwest-2.myhuaweicloud.com/ei-mindie/mindie:2.0.T3-800I-A2-py311-openeuler24.03-lts bash
2.5 验证模型部署
# 检查NPU状态
npu-smi info
# 测试API接口
curl -ik -H 'Content-Type: application/json' \
-d '{"messages":[{"role":"user","content":"请自我介绍"}],"model":"DeepSeek-70b","temperature":0.6,"max_tokens":128}' \
-X POST http://127.0.0.1:1025/v1/chat/completions
2.6 部署openweb-ui界面容器
# 拉取WebUI镜像使用国内镜像源
docker pull ghcr.nju.edu.cn/open-webui/open-webui:main
2.7 运行webui
# 运行WebUI容器
podman run -d \
-p 8000:8080 \
-v open-webui:/app/backend/data \
--name open-webui \
2.8 配置webui与模型127.0.0.1:1025的连接
# WebUI配置说明:
# 1. 访问WebUI界面:http://[服务器IP]:8000
# 2. 在WebUI设置中配置API地址:http://127.0.0.1:1025/v1
# 3. 选择模型:DeepSeek-70b
三、效果分析

部署架构分析


4、上下文窗口分析
{
"max_position_embeddings": 131072,
"rope_scaling": {
"factor": 8.0,
"high_freq_factor": 4.0,
"low_freq_factor": 1.0,
"original_max_position_embeddings": 8192,
"rope_type": "llama3"
}
}
- 基础窗口:8192 tokens
- 扩展后窗口:131072 tokens(约128K)
- 实际建议使用:32K-64K tokens
5、并发分析
1. 内存占用计算
- 模型基础占用:140GB (70B × 2 bytes)
- KV Cache每token占用:
8192(hidden_size) × 2(k,v) × 2(bytes) × 8(num_kv_heads) = 256KB/token
2. 单会话最大内存
- 32K上下文示例:
32K × 256KB = 8GB KV Cache
3. 并发会话数估算
基于910B 64GB NPU显存:
- 预留20GB给模型计算
- 剩余44GB可用于KV Cache
- 理论最大并发数:44GB ÷ 8GB ≈ 5-6个32K上下文会话
实际建议并发配置:
- 短文本(4K以下):8-10并发
- 中等文本(4K-16K):4-6并发
- 长文本(16K以上):2-3并发
四、实测API效果
time curl -X POST http://localhost/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{
"messages": [{"role": "user", "content": "写一个20字的句子"}],
"model": "DeepSeek-70b",
"max_tokens": 50,
"temperature": 0.7
}'
时间分析
1. 总响应时间:1.483秒
2. prefill_time: 60ms (预填充时间)
3. decode_time_arr详情:
- 首token生成: 43ms
- 后续token平均: 28ms
- 最快token生成: 27ms
- 最慢token生成: 43ms
Token统计
1. 输入tokens (prompt_tokens): 12个
2. 输出tokens (completion_tokens): 50个
3. 总计tokens (total_tokens): 62个
计算生成速度:
- 总生成时间:1.483秒
- Token生成速度:50 tokens / 1.483秒 ≈ 33.7 tokens/秒
性能分解
- 稳定的token生成时间(大部分维持在28ms)
- 较低的预填充延迟(60ms)
- 单token生成延迟控制得较好(<30ms)
相关文章:
天翼云910B部署DeepSeek蒸馏70B LLaMA模型实践总结
一、项目背景与目标 本文记录在天翼云昇腾910B服务器上部署DeepSeek 70B模型的全过程。该模型是基于LLaMA架构的知识蒸馏版本,模型大小约132GB。 1.1 硬件环境 - 服务器配置:天翼云910B服务器 - NPU:8昇腾910B (每卡64GB显存) - 系统内存&…...
Budibase低代码平台体验
低代码平台还是很多的,体验了Nocobase,又开始体验Budibase, 其实Budibase和appsmith更相似一点。 Budibase的安装也很简单。 1.安装好操作系统Debian; 2.安装好docker, docker-compose 3.创建目录/data,在里面参考内容创建文件docker-compos…...
【R语言】GitHub Copilot安装-待解决
参考: 文章目录...
Playwright 自动化测试系统学习
入门 Playwright安装:Playwright入门之---安装-CSDN博客 生成测试:Playwright入门之---生成测试-CSDN博客 命令汇总:Playwright入门之---命令-CSDN博客...
Jetson Agx Orin平台preferred_stride调试记录--1924x720图像异常
1.问题描述 硬件: AGX Orin 在Jetpack 5.0.1和Jetpack 5.0.2上测试验证 图像分辨率在1920x720和1024x1920下图像采集正常 但是当采集图像分辨率为1924x720视频时,图像输出异常 像素格式:yuv_uyvy16 gstreamer命令如下 gst-launch-1.0 v4l2src device=/dev/video0 ! …...
DeepSeek冲击(含本地化部署实践)
DeepSeek无疑是春节档最火爆的话题,上线不足一月,其全球累计下载量已达4000万,反超ChatGPT成为全球增长最快的AI应用,并且完全开源。那么究竟DeepSeek有什么魔力,能够让大家趋之若鹜,他又将怎样改变世界AI格…...
CF 144A.Arrival of the General(Java实现)
题目分析 一个n个身高数据,问最高的到最前面,最矮的到最后面的最短交换次数 思路分析 首先,如果数据有重复项,例如示例二中,最矮的数据就是最后一个出现的数据位置,最高的数据就是最先出现的数据位置&…...
set的使用(c++)
STL里面已经为我们实现了两种红黑树,一种是存储关键字的set,另一种是存储双关键字的map,今天主要来了解set,无论是set还是map后面都跟一个multi,它们区别是set 不能存相同元素, multiset 可以存相同的元素&…...
未加cont修饰的左值引用不能绑定到右值
目录 一、问题背景 二、错误分析 三、警告分析 一、问题背景 在initial value of reference to non-const - C Forum看到如下有问题的代码,编译如下代码看看 #include <iostream> #include <cmath>int g(double x) { return std::floor(x); } int&a…...
5.日常英语笔记
sprouted tater 发芽的土豆 fluid 液体,流体 The doctor recommended drinking plenty of fluids 医生建议多喝流质 适应新环境 adapt to the new environment adjust to the new surroundings get used to the new setting accommodate oneself to the new circu…...
IDEA单元测试插件 SquareTest 延长试用期权限
SquareTest是一款强大的IDEA单元测试生成插件工具,具体使用方法就不过多介绍了,这里主要介绍变更试用期,方便大家使用 配置信息 我的电脑安装前提配置条件 IntelliJ IDEA 2023.2windows 系统 软件安装 IntelliJ IDEA 直接安装插件Squar…...
25/2/17 <嵌入式笔记> 桌宠代码解析
这个寒假跟着做了一个开源的桌宠,我们来解析下代码,加深理解。 代码中有开源作者的名字。可以去B站搜着跟着做。 首先看下main代码 #include "stm32f10x.h" // Device header #include "Delay.h" #include &quo…...
C/C++字符串格式化全解析:从printf到std::format的安全演进与实战指南
目录 C 语言中的格式化函数对比 1. printf / fprintf / sprintf 的异同 C 中的字符串格式化 1. 流式输出 (std::ostringstream) 2. C20/23 格式化库 (std::format,需编译器支持) 跨语言对比与最佳实践 实战建议 总结 C 语言中的格式化函数对比 1. printf / …...
油田安全系统:守护能源生命线的坚固壁垒
油田安全系统:不可或缺的能源护盾 在能源领域,油田作为国家重要的能源供应基地,其安全生产的重要性不言而喻。油田安全系统犹如一道坚固的护盾,全方位守护着人员生命、企业财产以及生态环境,是油田平稳运行与可持续发展…...
【Python】实现文件移动与文件夹删除工具
【Python】 实现文件移动与文件夹删除工具 一、代码整体结构界面创建选择文件夹移动并删除操作处理文件重名问题打开文件夹 二、功能介绍三、 作者有话说 在日常的文件管理工作中,我们常常需要将某个文件夹下子文件夹中的文件统一移动到主文件夹,并删除这…...
LeetCode-680. 验证回文串 II
1、题目描述: 给你一个字符串 s,最多 可以从中删除一个字符。 请你判断 s 是否能成为回文字符串:如果能,返回 true ;否则,返回 false 。 示例 1: 输入:s "aba" 输出&a…...
【故障处理】- 执行命令crsctl query crs xxx一直hang
【故障处理】- 执行命令crsctl query crs xxx一直hang 一、概述二、故障处理三、解决方法 一、概述 Oracle RAC环境中,遇到执行crsctl query crs xxx等相关命令不返回任何结果,一直hang在那里。系统下执行命令ps -ef |grep crsctl query crs softwarever…...
JMeter工具介绍、元件和组件的介绍
Jmeter功能概要 JDK常用文件目录介绍 Bin目录:存放可执行文件和配置文件 Docs目录:是Jmeter的API文档,用于开发扩展组件 printable_docs目录:用户帮助手册 lib目录:存放JMeter依赖的jar包和用户扩展所依赖的Jar包…...
【Python 语法】Python 正则表达式(regular expressions, regex)
1. 基本语法1.1 字符匹配1.2 元字符1.3 特殊字符1.4 分组和捕获1.5 断言2. 常用函数2.1 `re.match()`2.2 `re.search()`2.3 `re.findall()`2.4 `re.sub()`2.5 `re.split()`3. 进阶用法3.1 捕获组3.2 非捕获组3.3 预查Python 中的**正则表达式(regular expressions, regex)**是…...
在 Python 里,None 可能是调用者主动传入的值,所以不能用 None 来判断参数是否被提供。
在 Python 里,None 可能是调用者主动传入的值,所以不能用 None 来判断参数是否被提供。 使用 object() 生成一个特殊的 唯一标记变量,用作默认参数的占位符,就可以明确区分调用者是否真的传递了这个参数。 📌 为什么 …...
DeepSeek 引领AI 大模型时代,服务器产业如何破局进化?
2025 年 1 月,DeepSeek - R1 以逼近 OpenAI o1 的性能表现,在业界引起轰动。其采用的混合专家架构(MoE)与 FP8 低精度训练技术,将单次训练成本大幅压缩至 557 万美元,比行业平均水平降低 80%。这一成果不仅…...
安卓burp抓包,bypass ssl pinning
好久好久没有发东西了。主要是懒。。。 这几天在搞apk渗透,遇到了burp无法抓包问题,觉得可以写下来。 问题描述 1. 一台安卓手机,装了面具,可以拿到root 2. 电脑上有burp,设置代理 3.手机和电脑连同一个网段&…...
服务器中部署大模型DeepSeek-R1 | 本地部署DeepSeek-R1大模型 | deepseek-r1部署详细教程
0. 部署前的准备 首先我们需要足够算力的机器,这里我在vultr中租了有一张A16显卡一共16GB显存的服务器作为演示。部署的模型参数为14b的。如果需要部署满血版本671b的,需要更大的算力支持,这里由于是个人资金有限,就演示14b的部署…...
rust学习笔记2-rust的包管理工具Cargo使用
首先先解决一个配置文件,目前rust版本升级后,config已经改成 config.toml 内容也做了如下调整 [source.crates-io] replace-with tuna[source.tuna] registry "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git" 1.Rust 编程…...
DDD - 可能会用到的分布式事务
一、分布式事务的概念: 分布式事务是指跨越多个独立的资源或服务(例如多个数据库、微服务、消息队列等)执行的事务操作,其目标是确保整个事务在多个系统中保持原子性和一致性,即要么所有操作全部成功提交,…...
DeepSeek + Vue实战开发
利用DeepSeek V3模型、siliconflow大模型一站式云服务平台以及vue3.0实现一个在线人工智能客服对话系统。 因为deepseek官网的api密钥使用起来比较缓慢,所以可以使用第三方的,具体操作请自行查阅资料。 siliconflow官网 SiliconFlow, Accelerate AGI …...
【数据结构】(8) 二叉树
一、树形结构 1、什么是树形结构 根节点没有前驱,其它节点只有一个前驱(双亲/父结点)。所有节点可以有 0 ~ 多个后继,即分支(孩子结点)。每个结点作为子树的根节点,这些子树互不相交。 2、关于…...
拉链表介绍
拉链表(Slowly Changing Dimension, Type 2) 是一种在数据仓库中用于跟踪维度数据历史变化的存储技术。它通过记录数据的生命周期(开始时间和结束时间)来保留历史状态,同时避免全量存储冗余数据。以下是详细解释及实际…...
Web 后端 请求与响应
一 请求响应 1. 请求(Request) 客户端向服务器发送的HTTP请求,通常包含以下内容: 请求行:HTTP方法(GET/POST等)、请求的URL、协议版本。 请求头(Headers):…...
CEF132 编译指南 Linux 篇 - CEF 编译实战:构建 CEF(六)
1. 引言 经过前几篇的精心准备,我们已经完成了所有必要的环境配置和源码下载。现在,我们将进入激动人心的 CEF 编译阶段。本篇将详细指导你在 Linux 系统上编译 CEF 6834 分支(对应 Chromium 132 版本),包括创建项目文…...
