ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

openpi 机器人控制:5 分钟跑通预训练 VLA 策略

openpi 机器人控制:5 分钟跑通预训练 VLA 策略 openpi 机器人控制5 分钟跑通预训练 VLA 策略【免费下载链接】openpi项目地址: https://gitcode.com/GitHub_Trending/op/openpi一台 Franka 机械臂放在桌上你敲下pick up the fork它真的去拿叉子了——摄像头角度没摆正也没关系。这不是仿真画面而是 openpiPhysical Intelligence 团队开源的机器人控制工具包里一个开箱即用的 π₀.₅-DROID 检查点在做推理。一句话定位openpi 是 Physical Intelligence 发布的开源机器人模型与工具包包含 π₀基于 flow matching 的视觉-语言-动作模型、π₀-FAST自回归 VLA和 π₀.₅开放世界泛化更强三类模型。它的底模 checkpoint 在 1 万 小时机器人操作数据上预训练完成你不需要从零采数据、训模型在上面微调或直接推理即可。和同类项目相比它把预训练基座 checkpoint 微调工具链 推理服务整套开源了还提供了无真机测试路径。能力清单 预训练 checkpoint 零样本桌面操作 DROID 推理示例用自己的数据微调基座模型 训练入口脚本没有真机也能跑通推理 simple clientWebSocket 远程策略服务 推理服务脚本JAX / PyTorch 双实现 PyTorch 模型openpi 五分钟上手不接机器人先跑起来不需要机器人、不需要数据集一台显存 8GB 以上的 NVIDIA GPU 就够。先装环境仓库用 uv 管理依赖安装前请确认已装好 uvgit clone --recurse-submodules https://gitcode.com/GitHub_Trending/op/openpi cd openpi GIT_LFS_SKIP_SMUDGE1 uv sync GIT_LFS_SKIP_SMUDGE1 uv pip install -e .再做两件事开两个终端一个起策略服务一个发随机观测给它。checkpoint 首次运行会自动从云端下载到~/.cache/openpi你不用手动管理模型文件# 终端 1启动策略服务默认 8000 端口 uv run scripts/serve_policy.py --env DROID# 终端 2用随机观测跑推理打印推理速率 uv run examples/simple_client/main.py --env DROID客户端稳定打印出推理速率说明从观测到动作 chunk 的整条链路已经通了。想看真机效果再照着 DROID 示例 把客户端换成机械臂即可。核心机制动作生成flow matching 一次性吐出一段轨迹问题机器人动作是连续的关节角序列。把它离散成 tokenπ₀-FAST 的做法有信息损失逐步生成又太慢控制环等不起。解决π₀ 用 flow matching 生成动作——训练时给目标动作序列加噪声让模型学一个去噪方向速度场推理时从纯噪声出发迭代去噪默认 10 步就还原出整段动作。观测3 路相机图像 语言指令只前向一次并写入 KV cache后面 10 步采样全部复用这份缓存避免重复计算前缀。核心逻辑在 Pi0 模型 的sample_actions里。可以把它理解为导航软件先根据当前路况算好一段路线动作 chunk车照着跑几秒再请求下一段。效果一次推理拿到一整段动作机器人开环执行不用每一步都等模型DROID 文档给出的实测口径是每 chunk 0.5–1 秒延迟属正常水平。openpi 远程推理模型和机器人分开放问题机器人侧算力通常很弱DROID 的控制笔记本没有强力 GPU而且机器人软件栈和模型依赖互相打架装在一起容易依赖地狱。解决模型跑在另一台 4090 上用 serve_policy.py 起服务机器人侧只装一个轻依赖的 openpi-client 包通过 WebSocket 收发。图像在客户端先 resize 到 224 再转 uint8 发出省带宽状态值不用自己归一化服务端处理。客户端代码大致长这样from openpi_client import image_tools, websocket_client_policy client websocket_client_policy.WebsocketClientPolicy(hostlocalhost, port8000) observation { observation/image: image_tools.convert_to_uint8( image_tools.resize_with_pad(img, 224, 224)), observation/wrist_image: image_tools.convert_to_uint8( image_tools.resize_with_pad(wrist_img, 224, 224)), observation/state: state, prompt: task_instruction, } action_chunk client.infer(observation)[actions]完整部署细节见 远程推理文档。openpi 数据微调先算归一化统计量问题你自己采集的数据状态/动作的数值范围可能和预训练数据差很多。README 的排错表专门提到某些维度如果 q01/q99/std 很小归一化后数值会爆炸训练 loss 直接发散。解决训练前先跑uv run scripts/compute_norm_stats.py --config-name 你的配置名计算数据集的归一化统计量如果你的机器人在预训练数据分布内还可以复用预训练时的统计量见 norm_stats 文档。之后微调就是三步数据转成 LeRobot 格式可参考 LIBERO 转换脚本 改成你自己的数据→ 算统计量 →uv run scripts/train.py 配置名开训checkpoint 存到checkpoints目录。效果与数据以下数字均来自仓库 README 与示例文档不是营销口径LIBERO 基准π₀.₅ 在 LIBERO 上微调 30k 步后平均成功率 96.85Spatial 98.8 / Object 98.2 / Goal 98.0 / LIBERO-10 92.4数据出自 LIBERO 示例。显存门槛推理 8GBRTX 4090 即可、LoRA 微调 22.5GB、全参微调 70GBA100/H100 级别。零样本泛化π₀-FAST-DROID 能在 DROID 平台的新场景里零样本完成各类简单桌面操作抓取、放置团队称 DROID checkpoint 泛化面比较宽。延迟口径远程推理每 chunk 0.5–1 秒延迟属正常官方建议机器人侧用有线网络。边界与局限只在 Ubuntu 22.04 上测试过其他系统官方暂不支持。JAX 训练目前不支持多机PyTorch 版还缺 π₀-FAST、LoRA、FSDP、混合精度和 EMA 这几项功能。团队自己在 README 里写了大实话模型是为他们自家机器人开发的在你平台上成不成欢迎试了再说。复杂操作任务不只是简单桌面抓取会失败。远程推理吃网络跨机房、无线环境下延迟会直接影响控制频率。能做的做不到的桌面抓取放置类任务零样本/微调后运行未验证平台上的精密操作8GB 显存推理、22.5GB LoRA 微调多机训练JAX 路径4090 单机跑完整微调闭环毫秒级端到端实时控制行动指引没有真机先用 Docker 一键跑 LIBERO 仿真基准验证你的 GPU 和装环境没问题LIBERO 示例。想在大规模数据上预训练泛化策略照 DROID 训练指南 走它是 pi0-FAST-DROID 的训练管线复刻。准备接真机前把 远程推理文档 和 归一化统计量文档 读完这两件事是现场最容易卡住的环节。克隆下来跑通 simple client你就拥有了一个能听懂指令的桌面机械臂如果机器人平台不一样先准备数据再谈微调。【免费下载链接】openpi项目地址: https://gitcode.com/GitHub_Trending/op/openpi创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表