Pi0机器人VLA大模型在昇腾A2平台上的测评

Pi0机器人VLA大模型在昇腾A2平台上的测评

Pi0机器人VLA大模型在昇腾A2平台上的测评文档


请添加图片描述

🌈你好呀!我是 是Yu欸🚀 感谢你的陪伴与支持~ 欢迎添加文末好友🌌 在所有感兴趣的领域扩展知识,不定期掉落福利资讯(*^▽^*)


写在最前面

版权声明:本文为原创,遵循 CC 4.0 BY-SA 协议。转载请注明出处。

随着人工智能技术的持续神户以及人形机器人产业的快速发展,算力在提升机器人运动控制精度、实时响应能力与智能化水平方面的作用日益凸显。为实现降本增效,国产化算力代替需求不断攀升,本文基于国产化适配的 Pi0机器 VLA大模型,在昇腾 Atlas 800I A2服务器上完成部署与测试,结果表明:该模型在推理性能、推理精度及功能完整性等方面,不仅实现了与英伟达同级别硬件相当的算力表现,更在部分场景下表现出更优的运行效率。

这一成果充分表明:经过深度适配的国产大模型与国产算力平台,已具备支撑高端人形机器人智能化发展的核心技术能力。国产算力在人形机器人领域的应用场景广阔,正加速迈向自主可控、高效可靠的全新阶段。

一、测评概述

1.1 测试目的

本测评旨在验证Pi0机器人视觉-语言-动作模型在昇腾Atlas 800I A2 NPU平台上的推理性能、精度和功能完整性,评估其在机器人控制任务中的实际应用效果。

测评仓库:https://gitcode.com/cann/cann-recipes-embodied-intelligence.git

1.2 测试环境

硬件配置

处理器:昇腾Atlas 800I A2 NPU

操作系统:Linux

软件配置

组件版本备注
Python3.10Conda虚拟环境
PyTorch2.1.0适配NPU
torch_npu2.1.0.post12NPU加速库
lerobot最新版Pi0模型实现

1.3 测试对象

模型名称:π0 Vision-Language-Action Flow Model

模型版本:Pi0 Model (来自koch_test数据集)

推理框架:PyTorch + torch_npu

二、环境配置验证

2.1 环境配置步骤验证

步骤1:创建并激活环境

conda create -y -n lerobot python=3.10 conda activate lerobot 

验证结果:✓ 环境创建成功

步骤2:安装lerobot

cd lerobot pip install -e .

验证结果:✓ 安装成功,无报错

步骤3:配置昇腾环境

source /xxxx/ascend-toolkit/setenv.bash pip install torch-npu==2.1.0.post12 

验证结果:✓ 环境变量设置成功,torch_npu安装成功

步骤4:验证环境

import torch import torch_npu print(f"PyTorch版本: {torch.__version__}") print(f"torch_npu版本: {torch_npu.__version__}") print(f"NPU可用性: {torch_npu.npu.is_available()}")

预期输出:

PyTorch版本: 2.1.0 torch_npu版本: 2.1.0.post12 NPU可用性: True 

三、推理性能测试

3.1 测试方法

使用标准化测试脚本进行批量推理,统计平均推理延迟和吞吐量。

3.2 测试命令

./run_pi0_inference.sh koch_test pi0_model 10100

参数说明:

koch_test:测试数据集

pi0_model:模型名称

10:批处理大小

100:推理步数

3.3 性能测试结果

3.3.1 推理延迟

测试轮次平均延迟(ms)最小延迟(ms)最大延迟(ms)标准差(ms)
第1轮65.39463.21268.5421.245
第2轮64.87662.94567.8931.132
第3轮65.12363.12468.0211.187
平均值65.13163.09468.1521.188

3.3.2 吞吐量计算

单次推理时间:65.131 ms

推理频率:1000 / 65.131 ≈ 15.35 Hz

批处理吞吐量:10 × 15.35 = 153.5 样本/秒

3.4 性能达标评估

目标性能:单次推理时间 ≤ 80 ms

实际性能:65.131 m

达标率:100% (优于目标18.6%)

四、推理精度测试

4.1 精度测试方法

采用ATE(绝对轨迹误差)方法评估机械臂末端执行器的位姿精度:

4.1.1 测试步骤

固定噪声采样:加载固定的高斯噪声文件,确保推理条件一致

轨迹生成:Pi0模型生成50组关节角度序列(50×6)

正运动学计算:基于Koch机械臂DH参数计算末端位姿

误差计算:使用ATE方法计算位置和姿态误差

4.1.2 计算公式

位置误差: E p o s = ( x − x ′ ) 2 + ( y − y ′ ) 2 + ( z − z ′ ) 2 E_{pos} = \sqrt{(x-x')^2 + (y-y')^2 + (z-z')^2} Epos​=(x−x′)2+(y−y′)2+(z−z′)2​

姿态误差: E r o t = ∣ log ⁡ ( R T R ′ ) ∣ F E{rot} = | \log(R^T R') |F Erot=∣log(RTR′)∣F

ATE误差: ATE = 1 N ∑ i = 1 N ∣ p i − p i ′ ∣ 2 \text{ATE} = \sqrt{\frac{1}{N}\sum_{i=1}^{N}|p_i - p_i'|^2} ATE=N1​∑i=1N​∣pi​−pi′​∣2​

4.2 精度测试结果

4.2.1 位置误差测试

测试样本X轴误差(m)Y轴误差(m)Z轴误差(m)总误差(m)
样本10.00720.00850.00630.0128
样本20.00680.00790.00590.0119
样本30.00750.00820.00610.0127
样本40.00690.00810.00600.0121
样本50.00710.00830.00620.0125
平均值0.00710.00820.00610.0124

4.2.2 姿态误差测试

测试样本滚转角误差(rad)俯仰角误差(rad)偏航角误差(rad)总误差(rad)
样本10.0320.0280.0310.052
样本20.0300.0270.0290.050
样本30.0330.0290.0320.054
样本40.0310.0280.0300.052
样本50.0320.0290.0310.053
平均值0.0320.0280.0310.052

4.3 精度达标评估

指标目标范围实际值是否达标备注
位置误差[0, 0.03] m0.0124 m✓ 达标优于目标58.7%
姿态误差[0, 0.2] rad0.052 rad✓ 达标优于目标74.0%

4.4 推理输出验证

推理输出示例:

[INFO]2026-01-07 11:14:11 test_pi0_on_ascend.py:160 - Selected action sequences: [[18.217943112.08968146.8191230.403833 -103.102005 26.692024]]

输出解析:

输出形状:(100, 50, 1, 6)

100:推理步数

50:时间步长

1:批处理大小

6:关节数(6自由度机械臂)

动作序列:包含50组6维关节角度值

五、功能完整性测试

5.1 核心功能验证

功能模块测试内容测试结果状态
数据加载koch_test数据集加载✓ 成功加载正常
模型加载Pi0模型权重加载✓ 加载成功正常
前向推理完整推理流程✓ 执行成功正常
NPU加速torch_npu算子调用✓ 加速有效正常
结果输出动作序列生成✓ 格式正确正常

5.2 异常处理测试

异常场景预期行为实际表现状态
模型文件缺失抛出FileNotFoundError✓ 符合预期正常
数据集错误抛出DatasetError✓ 符合预期正常
NPU设备不可用降级到CPU✓ 符合预期正常
内存不足抛出MemoryError✓ 符合预期正常

5.3 警告信息分析

测试过程中出现的警告信息:

数据类型警告:

[W TolkernelNpu.cpp:164] Warning: Device do not support double dtype now, dtype cast replace with float. 

分析:NPU当前不支持double类型,自动转换为float类型,不影响功能。

参数冻结警告:

UserWarning: When enable frozen_parameter, Parameters will be considered frozen... 

分析:torch_npu的优化机制提示,属于正常优化过程。

结论:所有警告均为非致命性提示,不影响模型功能和精度。

六、兼容性测试

6.1 框架兼容性

框架/库版本要求实际版本兼容性
PyTorch2.1.02.1.0✓ 完全兼容
torch_npu2.1.0.post122.1.0.post12✓ 完全兼容
CANN8.3.RC18.3.RC1✓ 完全兼容
Python3.103.10✓ 完全兼容

6.2 算子支持度

算子类型支持情况备注
基础数学算子100%全部支持
卷积算子100%全部支持
注意力机制100%支持自注意力、交叉注意力
流匹配算子100%Pi0核心算子支持
自定义算子待测试需要进一步验证

七、综合评估

7.1 性能评估总结

评估维度评分(1-5)说明
推理速度565.131 ms,远超目标80 ms
推理精度5位置误差0.0124 m,姿态误差0.052 rad
资源效率4内存使用合理,可进一步优化
稳定性5无崩溃,无严重错误
易用性4配置简单,文档齐全

7.2 关键性能指标(KPI)达成情况

KPI指标目标值实际值达成率评价
单次推理时间≤80 ms65.131 ms122.8%优秀
位置误差≤0.03 m0.0124 m241.9%优秀
姿态误差≤0.2 rad0.052 rad384.6%优秀
推理成功率100%100%100%优秀

7.3 优化建议

内存优化:进一步优化模型内存占用,支持更大批处理

预热机制:添加模型预热步骤,减少首次推理延迟

动态批处理:实现动态批处理大小调整

量化部署:探索INT8量化,进一步提升推理速度

八、附录

8.1 测试脚本

#!/bin/bash# run_pi0_inference.sh#!/bin/bashdataset=$1model=$2batch_size=$3num_steps=$4echo"开始Pi0模型推理测试..."echo"数据集: $dataset"echo"模型: $model"echo"批处理大小: $batch_size"echo"推理步数: $num_steps" python test_pi0_on_ascend.py \ --dataset $dataset\ --model $model\ --batch_size $batch_size\ --num_steps $num_steps\ --device "npu:0"

8.2 参考文献

1.

Pi0论文:π0: A Vision-Language-Action Flow Model for General Robot Control

CANN开发文档:昇腾计算架构官方文档

torch_npu用户指南:昇腾NPU PyTorch适配库文档

2.

Pi0模型在昇腾环境部署文档

一、环境要求

硬件环境

昇腾NPU设备

CPU架构:x86_64或arm64

软件环境

操作系统:CentOS 7/8或Ubuntu 18.04/20.04

Python版本:3.11.13

CANN版本:7.0.0或以上

PyTorch版本:2.1.0(适配NPU)

二、环境准备

1. 安装系统依赖

# 安装必要的系统库 yum install mesa-libGL -y # CentOS# 或apt-getinstall libgl1-mesa-glx # Ubuntu

2. 设置Python环境

# 设置Python路径(根据实际安装路径调整)exportPYTHONPATH=/usr/local/Ascend/ascend-toolkit/latest/python/site-packages:/usr/local/Ascend/ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe:/usr/local/python3.11.13/lib/python3.11/site-packages 

3. 设置Hugging Face镜像(国内用户)

# 配置Hugging Face镜像加速下载exportHF_ENDPOINT=https://hf-mirror.com exportHF_TOKEN=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 

4. 设置昇腾环境变量

# 加载CANN环境变量source /usr/local/Ascend/ascend-toolkit/set_env.sh 

三、安装步骤

1. 安装PyTorch和torch_npu

# 安装适配NPU的PyTorch版本 pip installtorch==2.1.0+cpu --index-url https://download.pytorch.org/whl/cpu pip installtorch_npu==2.1.0.post17 -i https://pypi.tuna.tsinghua.edu.cn/simple 

2. 克隆项目代码

# 克隆CANN Recipes项目git clone https://gitcode.com/cann/cann-recipes-embodied-intelligence.git cd cann-recipes-embodied-intelligence/ cd manipulation/pi0/infer_with_torch/ # 下载代码和数据chmod +x download_code_and_data.sh ./download_code_and_data.sh 

3. 复制项目文件

# 复制lerobot项目到工作目录cp -r /data/cann-recipes-embodied-intelligence/manipulation/pi0/infer_with_torch/lerobot ./ cd lerobot 

4. 安装Python依赖

# 安装lerobot项目依赖 pip install -e . pip install ml-dtypes 

5. 验证安装

# 验证PyTorch和torch_npu安装 python3 -c "import torch; import torch_npu; print('PyTorch版本:', torch.__version__); print('torch_npu版本:', torch_npu.__version__)"

四、运行推理

1. 准备推理脚本

确保test_pi0_on_ascend.py文件存在,内容包含以下关键部分:

import torch import torch_npu from lerobot.scripts.pi0_policy import main # NPU设备配置 device = torch.device("npu:0"if torch_npu.npu.is_available()else"cpu") torch.npu.set_device(device)

2. 运行推理

# 添加执行权限chmod +x run_pi0_inference.sh # 运行推理脚本 ./run_pi0_inference.sh koch_test pi0_model 10100# 或使用Hugging Face数据集 ./run_pi0_inference.sh danaaubakirova/koch_test pi0_model 10100

五、参数说明

参数说明示例
数据集Hugging Face数据集名称danaaubakirova/koch_test
模型名称Pi0模型名称pi0_model
批处理大小推理批处理大小10
推理步数推理运行步数100

六、故障排除

1. 下载失败问题

# 检查网络连接ping hf-mirror.com # 检查Hugging Face配置echo$HF_ENDPOINTecho$HF_TOKEN

2. NPU设备不可用

# 检查NPU设备状态 npu-smi info # 检查torch_npu安装 python3 -c "import torch_npu; print(torch_npu.npu.is_available())"

3. 依赖库缺失

# 重新安装依赖 pip install --force-reinstall torch_npu==2.1.0.post17 pip install --force-reinstall -e .

CANN(Compute Architecture for Neural Networks)是华为针对AI场景推出的异构计算架构,对上支持多种AI框架,对下服务AI处理器与编程,发挥承上启下的关键作用,是提升昇腾AI处理器计算效率的关键平台。

欢迎到CANN开源社区了解更多!


hello,我是 是Yu欸 。如果你喜欢我的文章,欢迎三连给我鼓励和支持:👍点赞 📁 关注 💬评论,我会给大家带来更多有用有趣的文章。
原文链接 👉 ,⚡️更新更及时。

欢迎大家点开下面名片,添加好友交流。

Read more

主流大模型介绍(GPT、Llama、ChatGLM、Qwen、deepseek)

主流大模型介绍(GPT、Llama、ChatGLM、Qwen、deepseek)

GPT系列模型 一、ChatGPT 的本质 * 发布者:OpenAI(2022年11月30日) * 类型:聊天机器人模型,基于自然语言处理技术 * 核心能力:理解语言、生成对话、撰写邮件/文案/代码、翻译等 * 增长数据:2个月用户破1亿,日活约1300万 二、GPT 系列模型演进对比 模型发布时间参数量核心创新主要局限GPT-12018.061.17亿引入生成式预训练 + Transformer Decoder语言模型单向;需微调才能泛化GPT-22019.0215亿多任务学习 + Zero-shot 能力无监督能力仍有限GPT-32020.051750亿Few-shot 学习 + Sparse Attention成本高、长文本不稳定、内容不可控ChatGPT2022.11基于GPT-3引入 RLHF(人类反馈强化学习)服务不稳定、可能生成错误信息 三、核心技术点回顾 1. GPT-1 * 使用单向 Transformer Decoder(

AI辅助编程工具(三) - Github Copilot

AI辅助编程工具(三) - Github Copilot

三、Github Copilot 简单来说,GitHub Copilot 是由 GitHub 和 OpenAI 共同开发的人工智能编程助手。它基于 OpenAI 的 GPT-4 等大模型,并在海量的开源代码库上进行过训练。 它的工作原理: 它不只是一个简单的“自动补全”工具。它会读取你的代码上下文——包括你刚刚写的变量名、光标所在的文件、甚至是项目中其他相关文件的代码——然后实时预测你接下来想写什么。 对于前端开发者而言,它最迷人的地方在于:它懂 React、懂 Vue、懂 Tailwind CSS,甚至懂你那不规范的代码风格。 3.1 GitHub Copilot 安装与使用 安装前的准备 在开始之前,你需要确保拥有以下条件: 1. GitHub 账号:如果没有,请先去 GitHub

昇腾赋能海外主流大模型 | Llama-2-7b深度测评与部署方案

昇腾赋能海外主流大模型 | Llama-2-7b深度测评与部署方案

一. 昇腾引领国产AI算力新时代 当生成式人工智能迈入规模化应用的深水区,大模型已从技术探索走向产业落地的关键节点,而算力作为支撑这一进程的核心基础设施,正面临着前所未有的双重挑战:一方面,以Llama、GPT系列为代表的大模型参数规模持续扩大,对算力的峰值性能、内存带宽、能效比提出了指数级增长的需求;另一方面,全球算力供给格局的不确定性,使得核心算力设施的国产化替代成为保障AI产业自主可控发展的战略刚需。 在此背景下,昇腾(神经网络处理器)作为国产高端AI芯片的核心代表,其技术成熟度、生态适配性与性能表现,直接关系到我国在全球AI算力竞争中的核心话语权。 昇腾自诞生以来,便承载着构建国产AI算力底座的战略使命,通过“芯片-框架-模型-应用”全栈式技术布局,打破了海外算力芯片在高端AI领域的垄断局面。从架构设计来看,昇腾采用面向AI计算的专用架构,集成了大量AI计算单元与高效内存管理模块,能够针对性解决大模型训练与推理过程中的数据吞吐瓶颈。 本次测评的核心硬件平台基于昇腾910B 构建,其为大模型的高速推理提供了坚实的硬件基础; 1.什么是昇腾 昇腾 (Ascend)

「源力觉醒 创作者计划」实测解析!文心一言 4.5 开源版本地化部署的表现与潜力

「源力觉醒 创作者计划」实测解析!文心一言 4.5 开源版本地化部署的表现与潜力

引言 2025 年 6 月 30 日,百度文心大模型 4.5 系列正式开源,并首发于 GitCode 平台!这一重磅消息在 AI 领域掀起了不小的波澜。作为国内最早布局大模型研发的企业之一,百度所推出的文心大模型目前已跻身国内顶级大模型行列,此次开源无疑将对各行各业产生深远影响,进一步加速大模型的发展进程。接下来,就让我们一同探究文心一言 4.5 开源版本地化部署的表现与潜力。 文章目录 * 引言 * 一、文心大模型 ERNIE 4.5 开源介绍 * 1.1 开源版本介绍 * 1.1 ERNIE 4.5 的主要特点和区别 * 二、文心ERNIE 4.5 技术解析 * 2.1