Prhub

#48211 [Model][CI/Build] Cosmos3: enable registry tests and register Cosmos3-Super

原始 PR 作者 guoriyue 合并时间 2026-07-10 16:35 文件变更 3 提交数 1 评论 3 代码增减 +8 / -2

执行摘要

启用 Cosmos3 注册测试并注册 Super 变体

PR #43356 合并时因 checkpoints 未发布而设置了 is_available_online=False,但后续 nvidia/Cosmos3-Nano 已上线,该标记导致注册驱动测试(初始化、多模态处理、张量 schema)仍跳过该架构。

建议合入。该 PR 清除了未及时清理的暂存标记,完善了 Cosmos3 测试覆盖和文档,逻辑清晰且风险极低。

讨论亮点

无实质讨论。PR 由 DarkLight1337 批准,无 review 评论。

实现拆解

  1. 移除 is_available_online=False:在 tests/models/registry.py 中删除该标记,使 Cosmos3 能参与 CI 注册测试。
  2. 注册 nvidia/Cosmos3-Super:在 extras 中增加 super 变体,其模型结构与 Nano 一致但更深(64 层 vs 36 层)。
  3. 显式跳过 VLM 生成测试:由于 Transformers 无 cosmos3_omni 映射,HF 参考 runner 无法加载 checkpoint,因此在 tests/models/multimodal/generation/test_common.py 中添加 pytest.mark.skip 标记。
  4. 更新文档:在 docs/models/supported_models.md 的 Cosmos3 行中加入 nvidia/Cosmos3-Super
文件 模块 状态 重要度
tests/models/registry.py 注册表 modified 4.43
tests/models/multimodal/generation/test_common.py 测试配置 modified 4.32
docs/models/supported_models.md 文档 modified 1.93

关键源码片段

tests/models/registry.py test-coverage

移除了 `is_available_online=False` 并注册了 Cosmos3-Super 作为 extras,是启用 CI 测试的关键变更。

# tests/models/registry.py 中 Cosmos3 注册条目变更
# 变更前:is_available_online=False 导致所有注册驱动测试被跳过
"Cosmos3ForConditionalGeneration": _HfExamplesInfo(
    "nvidia/Cosmos3-Nano",
    max_model_len=4096,
    min_transformers_version="4.57",
    is_available_online=False, # 旧:标记移除前
),
# 变更后:移除标记并注册 Super 变体
"Cosmos3ForConditionalGeneration": _HfExamplesInfo(
    "nvidia/Cosmos3-Nano",
    extras={"super": "nvidia/Cosmos3-Super"}, # 新:注册更深版本的 Super
    max_model_len=4096,
    min_transformers_version="4.57",
),
tests/models/multimodal/generation/test_common.py test-coverage

显式跳过 VLM 生成测试,避免因 Transformers 不支持 `cosmos3_omni` 而导致 CI 失败。

# tests/models/multimodal/generation/test_common.py 中 cosmos3 配置变更
"cosmos3": VLMTestInfo(
    models=["nvidia/Cosmos3-Nano"],
    # ... 其他配置保持不变 ...
    marks=[ # 新增:显式跳过生成测试
        pytest.mark.skip(
            reason="Transformers has no cosmos3_omni mapping, so the HF "
            "reference runner cannot load the checkpoint."
        )
    ],
),

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

低风险。变更仅涉及测试配置和文档,无核心逻辑改动。移除 is_available_online=False 后,CI 会真实加载 Cosmos3 checkpoint,若实际权重有差异可能导致测试失败,但 PR 作者已手动验证真实模型输出正确。Super 变体仅参与 processor 测试,不会初始化完整模型。

影响范围小,仅限于测试和文档。Cosmos3 注册测试(初始化、多模态处理)将不再是 skip 状态,而是实际执行。开发者可在 CI 中获得 Cosmos3 架构的测试覆盖;文档列出 Super 变体有助于用户知晓支持情况。

缺少测试覆盖

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论