让Unitree G1人形机器人学会“摘苹果放盘子“:GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000任务全景解析

发布时间:2026/10/25 12:02:37
让Unitree G1人形机器人学会“摘苹果放盘子“:GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000任务全景解析
  • 人工智能
  • 具身智能
  • 机器人
  • 多模态
  • 微调

【免费下载链接】GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000

项目地址:https://ai.gitcode.com/hf_mirrors/nvidia/GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000
点击查看免费下载

GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000是 NVIDIA 基于 Isaac GR00T N1.7(3B)视觉-语言-动作(VLA)基础模型微调出的一个机器人策略检查点,专门用于让Unitree G1 人形机器人完成"摘苹果、放盘子"(apple pick-and-place)任务。本文用通俗的方式带你全景解析:它是什么、数据从哪来、怎么训练的、仓库里有什么、如何集成使用。

一、快速上手:30 秒看懂这个模型 🤖

项目说明
基础模型nvidia/GR00T-N1.7-3B(约 3B 参数)
机器人本体Unitree G1 人形机器人(含腰部高度与导航指令)
目标任务摘苹果 → 放到盘子上(pick-and-place)
训练数据402 条真机遥操作演示,约 9 万帧
训练计划40,000 步余弦学习率调度(cosine40k)
本检查点位置第15,000步(约第 0.375 个 epoch)
权重格式Safetensors,3 个分片 + 索引

名字里三段信息一目了然:AppleToPlate= 任务名,cosine40k= 4 万步余弦学习率计划,checkpoint-15000= 在第 15,000 步保存的中间检查点(训练并未压缩到 15,000 步提前结束,详见 README.md)。

二、模型架构拆解:如何做到"看懂、听懂、会动" 👀🧠

GR00T N1.7 是一个典型的VLA(Vision-Language-Action)模型,可以理解为机器人装了"眼睛 + 大脑 + 小脑":

模块承担的工作关键技术
视觉编码器看懂摄像头画面(RGB 图像)SigLip2 预训练视觉 Transformer,支持原生宽高比、无需填充
语言编码器听懂指令(如"把苹果放到盘子里")T5 文本编码器
视觉-语言主干把"看"和"听"融合成场景理解Cosmos-Reason2-2B(基于 Qwen3-VL 架构)
本体感知 MLP感知机器人自身姿态(关节角、躯干等)按 embodiment ID 索引的多层感知机
动作头预测未来 40 帧的连续动作Flow Matching 动作 Transformer(DiT,32 层、AdaLN 时间步调制)

几个值得新手留意的设计(来自 config.json):

  • action_horizon = 40:模型一次不是预测"下一步",而是预测未来 40 个时间步的动作序列(action chunk),动作更连贯;
  • 推理只需 4 步(num_inference_timesteps: 4):flow matching 让去噪推理比传统扩散模型快得多;
  • bf16 精度 + Flash Attention:兼顾精度与推理速度;
  • 最多支持 32 种机器人本体(max_num_embodiments),状态/动作维度上限 132,为跨机型泛化预留空间。

架构示意图可在 README.md 的 "Model Architecture" 一节中找到。

三、训练数据全解:402 条 G1 遥操作演示 📦

模型学到的"摘苹果"本事,全部来自真机数据,来源与规模如下:

数据项数值
演示条数402 episodes(人工通过 XR 头显遥操作 G1 采集)
原始采样30 Hz 录制
本地验证帧率15 fps
总帧数90,710 帧
有效训练步数84,680 timesteps

数据集在模型中以new_embodiment标签加载,对应的本体 ID 为unitree_g1_full_body_with_waist_height_nav_cmd(ID = 25,见 embodiment_id.json)。模型每一步会接收 4 类输入(详见 experiment_cfg/conf.yaml 的模态定义):

  1. video:ego_view第一视角(egocentric)摄像头图像;
  2. state(本体感知):左右腿(各 6 维)、腰部(3 维)、左右臂(各 7 维)、左右手(各 7 维);
  3. action 监督目标:12 组输出,包括左右臂/手/腰的关节指令、导航指令、机身高度指令、以及左右臂/手/腰的effort(力矩)指令;
  4. language:人工标注的任务描述文本(annotation.human.task_description)。

其中左右臂的动作采用相对表示(relative),其余采用绝对表示(absolute)——这是让策略迁移到不同初始姿态时的常用技巧。每个模态的均值、方差、分位数统计被持久化在 experiment_cfg/dataset_statistics.json 和 statistics.json 中,用于训练/推理时的归一化。

四、训练过程:40,000 步余弦学习率下发生了什么 📉

训练配置保存在 experiment_cfg/config.yaml,核心超参数:

超参数取值说明
max_steps40,000计划总步数
learning_rate1e-4峰值学习率
warmup_ratio0.05前 2,000 步线性升温
lr_scheduler_typecosine2,000–40,000 步余弦衰减至 0
global_batch_size96全局批大小
optimadamw_torchAdamW 优化器
bf16truebfloat16 混合精度

学习率轨迹:从 0 线性升温,前 2,000 步升到峰值1e-4,之后按余弦曲线平滑下降;到第 15,000 步(本检查点)时,学习率约为7.38e-5,正处于衰减段的中期。

损失函数轨迹(摘自 trainer_state.json 的训练日志):

训练步数损失 (loss)学习率梯度范数
101.21064.5e-070.289
2,000(升温结束)0.05759.995e-051.016
8,0000.02889.40e-050.495
10,0000.02398.95e-050.424
15,000(本检查点)0.01827.38e-050.383

可以看到损失从 1.21 一路降到 0.018,且梯度范数保持平稳(无爆炸/消失),说明模型在第 15,000 步已学到相当稳定的动作模式,但仍保留继续下降的空间——这也解释了为什么要保留 40,000 步的完整计划。

此外,训练只微调了diffusion 动作头、投影层与 VLLN(tune_llm: false、tune_visual: false),主干 VLM 参数保持冻结——这是 VLA 微调"动小脑、不动大脑"的经典做法,既省算力又保住通用理解能力。

五、检查点文件导航:仓库里都有什么 🗂️

文件内容与作用
model-00001-of-00003.safetensors 等 3 个分片模型权重(约 5GB/片,合计含 3B 参数)
model.safetensors.index.json权重分片索引(共 1,030 个张量)
config.json模型结构超参数(DiT 层数、动作维度等)
processor_config.json输入处理器配置(各本体模态、delta 索引)
statistics.json / experiment_cfg/dataset_statistics.json归一化统计量(均值/方差/分位数)
embodiment_id.json机器人本体 → ID 映射表
trainer_state.json完整训练日志(loss / LR / 梯度范数)
experiment_cfg/config.yaml完整训练配置(数据、模型、优化器)
optimizer.pt / scheduler.pt / rng_state.pth优化器状态(约 13GB)、学习率调度器、随机数状态——可用于断点续训
README.md模型卡:架构、输入输出、许可、参考论文
EXPLAINABILITY.md、BIAS.md、PRIVACY.md、SAFETY_AND_SECURITY.md模型卡++ 子卡:可解释性、偏差、隐私、安全

💡 提示:由于包含完整优化器状态,该检查点不仅"能推理",还"能续训"——你可以从第 15,000 步接着跑完剩余 25,000 步。

六、如何部署集成:把模型跑起来的路径 🚀

  1. 获取仓库(需要 Git LFS 支持,权重文件通过 LFS 存储): git clone https://gitcode.com/hf_mirrors/nvidia/GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000
  2. 运行环境:Linux + PyTorch,使用兼容的 GR00T N1.7 实现加载 Safetensors 权重;
  3. 硬件支持:NVIDIA Ampere / Hopper / Blackwell / Ada / Lovelace / Jetson 系列 GPU 均可运行(官方在 RTX 6000 Ada 上完成测试);
  4. 输入输出:输入"摄像头帧 + 本体状态 + 语言指令 + embodiment ID",输出为连续动作向量(对应 G1 各电机的控制量),可直接接入机器人控制栈;
  5. 验证指标(见 EXPLAINABILITY.md):任务成功率、轨迹平滑无抖动、不碰撞其他物体、动作自然度。

七、安全、合规与伦理须知 ⚠️

  • 本模型受NVIDIA Open Model Agreement约束(LICENSE),支持全球范围内的商用与非商用;
  • 模型未针对功能安全关键场景测试:部署前需自行添加碰撞检测、夹爪验证、人工监督等护栏;
  • 在光照不佳、遮挡、传感器漂移等超出训练分布的场景下性能可能退化;更换机器人本体或任务变体时建议追加微调与验证(详见 EXPLAINABILITY.md 的缓解措施章节)。

结语

GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000展示了一条清晰的小样本机器人微调路径:只用402 条真机遥操作演示,在 3B 规模的通用 VLA 基础上做"冻大脑、调小脑"式微调,就能让 Unitree G1 人形机器人学会完整的"摘苹果放盘子"技能。仓库同时保留完整训练日志、统计量与优化器状态,对想复现、续训或做二次微调的开发者而言,是一份难得透明的实验档案。

  • 人工智能
  • 具身智能
  • 机器人
  • 多模态
  • 微调

【免费下载链接】GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000

项目地址:https://ai.gitcode.com/hf_mirrors/nvidia/GR00T-N1.7-AppleToPlate-cosine40k-checkpoint-15000
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考