代码开源,但没有research blog了。https://github.com/NVIDIA/Isaac-GR00T/tree/n1.7-release

GR00T N1.7的新增功能

GR00T N1.7基于N1.6构建,具有新的VLM骨干网和代码级改进。

N1.6的主要变化

新的VLM骨干网:Cosmos-Reason2-2B(Qwen3 VL架构),取代了N1.6中使用的Eagle骨干网。支持灵活的分辨率,并以其原生纵横比对图像进行编码,无需填充。

简化的数据处理管道(processing_gr00t_n1d7.py)。

为ONNX和TensorRT添加了完整的管道导出,并提高了频率。

解读代码层面的变化:

最核心的代码变化可以概括成 4 件事:

  1. 主干 VLM 换了:N1.6 的模型配置里主干是 nvidia/Eagle-Block2A-2B-v2backbone_model_type="eagle";N1.7 改成了 nvidia/Cosmos-Reason2-2Bbackbone_model_type="qwen",README 也明确写了这是 “Cosmos-Reason2-2B / Qwen3-VL architecture” 替代 Eagle。

  2. processor / data pipeline 重写了一版processing_gr00t_n1d6.py 绑定 Eagle 的 AutoProcessorprocess_vision_info(...),而 processing_gr00t_n1d7.py 改为直接走 Qwen3VLProcessor

  3. 部署从“只优化 DiT”升级到“整条 pipeline 可导出/可 TRT:N1.6 的部署文档是导出单个 dit_model.onnx,再 build 单个 TRT engine;N1.7 则新增统一的 build_trt_pipeline.py,能导出 LLM、VL self-attention、state encoder、action encoder、DiT、action decoder 整条链路。

  4. repo 目标场景和示例也变了:N1.7 的 README 和变更文件树明显更偏向 DROID / SO100 / SimplerEnv / full deployment pipeline,变更集中也出现了 examples/SO100examples/PointNavexamples/mask-guided-background-suppressiondownload_droid_sample.py 等内容。

        

        模型主干:从 Eagle 切到 Cosmos/Qwen3-VL

这部分是最本质的。 N1.6 的 Gr00tN1d6Config 写的是:

  • model_name = "nvidia/Eagle-Block2A-2B-v2"

  • backbone_model_type = "eagle"

  • tune_top_llm_layers = 4

  • select_layer = 16

N1.7 的 Gr00tN1d7Config 则变成:

  • model_name = "nvidia/Cosmos-Reason2-2B"

  • backbone_model_type = "qwen"

  • tune_top_llm_layers = 0

  • select_layer = 12

README 也同步说明:N1.7 的新 backbone 是 Cosmos-Reason2-2B / Qwen3-VL,替换了 N1.6 的 Eagle。也就是说,这不是只换权重,而是连 backbone 类型、processor 和部分训练/推理假设都一起换了

        动作头 / 模型配置:预算重新分配了,不是简单沿用 N1.6

从 config 看,N1.7 并不是把 N1.6 原样搬过来:

  • action horizon:N1.6 默认 16,N1.7 提到 40

  • max_state_dim / max_action_dim:N1.6 是 29 / 29,N1.7 变成 132 / 132

  • DiT 层数:N1.6 默认 32 层,N1.7 默认 16

  • state_history_length:N1.7 新增,默认 1

  • use_percentiles / use_mean_std / exclude_state 等归一化与状态消融参数,在 N1.7 config 里更显式

  • state_dropout_prob:N1.6 默认 0.0,N1.7 config 默认 0.8(README 也专门解释了这个参数)

这说明 N1.7 不是“更大的 N1.6”,而是把建模重心重新分配过:backbone 侧更换、动作头默认层数变少,但 horizon / state-action capacity 变大。这个变化对你自定义的 finetune config 影响会很直接,尤其是你如果在外部脚本里写死了 action_horizon=16max_state_dim=29max_action_dim=29

        action head 实现:N1.7 增加了 VL self-attention,去掉了 N1.6 的一些 state-noise 处理

在模型实现层面,N1.6 的 Gr00tN1d6ActionHead 里有:

  • mask_token(当 state dropout > 0 时使用)

  • state_additive_noise_scale

  • process_backbone_output() 里只是做 vlln

  • state_encoder 直接吃 max_state_dim

而 N1.7 的 Gr00tN1d7ActionHead

  • 没有 N1.6 那种 mask_token + additive noise 逻辑

  • 新增 vl_self_attention

  • process_backbone_output()vlln,再走 vl_self_attention

  • state_encoder 吃的是 max_state_dim * state_history_length

  • forward 里显式处理 state_history_length,先 reshape 再编码

所以从“代码接口”角度讲,N1.7 的 action head 更像是把视觉语言特征后处理多步 state 上下文纳入了标准路径;而 N1.6 更接近一个“Eagle backbone + DiT action head + 可选 state noise”的实现。

        数据处理 / processor:这是升级时最容易踩坑的地方

processing_gr00t_n1d6.pyprocessing_gr00t_n1d7.py 的差异非常实在:

N1.6:

  • build_processor() 里直接断言模型名就是 Eagle

  • 从本地 vendored Eagle 路径加载 AutoProcessor

  • collator 里需要 self.processor.process_vision_info(...)

  • 默认 shortest_image_edge = 512

  • embodiment tag 还是老一套,如 gr1oxe_droidoxe_googleoxe_widowxunitree_g1

N1.7:

  • build_processor() 改成直接构造 Qwen3VLProcessor

  • 默认模型名改成 nvidia/Cosmos-Reason2-2B

  • collator 直接把 text + images 喂给 processor

  • 默认图像处理参数改成 image_crop_size=(230,230)image_target_size=(256,256)shortest_image_edge=None

  • embodiment tag 也改成更细的命名,如 oxe_droid_relative_eef_relative_jointxdof_relative_eef_relative_jointreal_g1_relative_eef_relative_jointsunitree_g1_full_body_with_waist_height_nav_cmd

这意味着如果你有外部代码依赖:

  • Eagle 的 conversation/chat-template 格式,

  • 老 tag 名,

  • 老的图像尺寸假设,

  • 或旧的数据归一化参数, 那从 n1.6 升到 n1.7 大概率需要改适配层

        部署 / TensorRT:N1.7 是一次明显的工程化升级

N1.6 的部署文档很清楚: 流程是 导出 export_onnx_n1d6.py → 得到单个 dit_model.onnxbuild_tensorrt_engine.py → 用 standalone_inference_script.py --inference-mode tensorrt。文档还特别说明:TensorRT 优化的只是 Action Head (DiT),backbone 在各模式下基本相同。

N1.7 的部署文档则完全升级成统一 pipeline:

  • 新增 build_trt_pipeline.py

  • 支持 export,build,verify,benchmark 四步串起来跑

  • 导出对象不再只是 DiT,而是 LLM、VL Self-Attention、State Encoder、Action Encoder、DiT、Action Decoder

  • standalone_inference_script.py 里也出现了 trt_full_pipeline 模式,不只是 tensorrt

换句话说,N1.6 是“DiT 加速版推理”N1.7 才更像“全链路部署框架”。如果你关心真正落地部署,而不是只做研究训练,这一块是 n1.7 最大的仓库级收益之一。

        仓库组织:N1.7 更像“产品化 EA repo

N1.7 README 明确写了这是 Early Access,同时代码树里能看到更完整的工程配套: spark/ 平台、verify_n1d7_trt.py、更完整的 tests、更多 example、下载脚本、以及 README 中单列的 deployment / support / contributions 边界。README 还写了平台矩阵:dGPU 用 Python 3.10,Thor / DGX Spark 用 Python 3.12。

另外,N1.7 的 README 里直接把 demo_data/droid_sample 作为 base model 的 zero-shot 示例;而 N1.6 的 quick start 更偏 GR1 / gr1.PickNPlace。这说明仓库默认演示路径也换了:N1.7 更突出 DROID / post-train benchmark / deployment

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐