news 2026/9/15 11:55:21

NVIDIA Cosmos 1.0 版本发布全解析:13 个世界基础模型、NeMo 后训练与安全体系

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
NVIDIA Cosmos 1.0 版本发布全解析:13 个世界基础模型、NeMo 后训练与安全体系

NVIDIA Cosmos 1.0 版本发布全解析:13 个世界基础模型、NeMo 后训练与安全体系

【免费下载链接】cosmosNVIDIA Cosmos is an open platform of world models, datasets, and tools that enables developers to build Physical AI for robots, autonomous vehicles, smart infrastructure, and more.项目地址: https://gitcode.com/GitHub_Trending/cosmos7/cosmos

本篇文章以 Cosmos 1.0 的官方发布说明(release_notes/v1p0.md)为核心骨架,系统梳理 2025 年 1 月发布的 Cosmos 1.0 全量模型清单、版本演进里程碑,并深入每一族模型的推理入口、参数配置与安全机制。读者在读完本文后,将能够:快速对照 13 个模型在仓库中的定位与用途、掌握扩散与自回归两类世界基础模型(WFM)的单条/批量推理命令与显存优化策略、理解基于 NeMo 框架的通用后训练(General Post-Training)全流程,并了解 Cosmos Guardrail 预检/后检两级安全体系的工作原理。

一、版本时间线:Cosmos 1.0 的三个关键里程碑

release_notes/v1p0.md记录了 Cosmos 1.0 生命周期内的三次重要发布,每一次都对应仓库能力的实质性扩展:

发布日期核心更新影响范围
2025-01-06Cosmos 1.0 初始发布,同步发布 Cosmos 论文,一次性放出 13 个模型及对应的推理脚本模型生态 + 推理
2025-01-09通过 NeMo 框架支持General Post-Training(通用后训练)训练/微调
2025-01-27稳定性(Stability)与安全性(Safety)改进全流程质量

值得注意的是,三次更新之间存在清晰的递进关系:初始发布解决"有哪些模型、怎么跑推理",第二次更新解决"如何基于自有数据微调出适配场景的模型",第三次更新则聚焦"如何让生成过程更稳定、更安全"。下文将按此逻辑逐一展开。

二、13 个模型的完整清单与分类

初始发布一次性放出了 13 个模型,覆盖世界生成的两条技术路线(扩散与自回归)、视觉 Tokenizer、Prompt 增强与安全护栏五大类别。原文档中的"Try it out"入口均指向仓库内的推理文档,下表已转换为仓库根目录相对路径:

#模型名称模型描述推理入口
1Cosmos-1.0-Diffusion-7B-Text2World文本到视觉世界生成Diffusion 推理文档
2Cosmos-1.0-Diffusion-14B-Text2World文本到视觉世界生成Diffusion 推理文档
3Cosmos-1.0-Diffusion-7B-Video2World视频+文本的未来视觉世界生成Diffusion 推理文档
4Cosmos-1.0-Diffusion-14B-Video2World视频+文本的未来视觉世界生成Diffusion 推理文档
5Cosmos-1.0-Autoregressive-4B未来视觉世界生成Autoregressive 推理文档
6Cosmos-1.0-Autoregressive-12B未来视觉世界生成Autoregressive 推理文档
7Cosmos-1.0-Autoregressive-5B-Video2World视频+文本的未来视觉世界生成Autoregressive 推理文档
8Cosmos-1.0-Autoregressive-13B-Video2World视频+文本的未来视觉世界生成Autoregressive 推理文档
9Cosmos-1.0-Tokenizer-CV8x8x8连续视频 Tokenizer,8x8x8 压缩比Diffusion 推理文档
10Cosmos-1.0-Tokenizer-DV8x16x16离散视频 Tokenizer,16x8x8 压缩比Autoregressive 推理文档
11Cosmos-1.0-PromptUpsampler-12B-Text2WorldText2World 的 Prompt 增强器Diffusion 推理文档
12Cosmos-1.0-Diffusion-7B-Decoder-DV8x16x16ToCV8x8x8用于增强自回归 WFM 输出的扩散解码器Autoregressive 推理文档
13Cosmos-1.0-Guardrail包含预检(pre-Guard)与后检(post-Guard)的安全护栏内嵌于模型推理脚本

从架构角度看,这 13 个模型构成了一条完整的世界生成流水线:离散 Tokenizer(DV8x16x16)负责把视频压缩为离散 token 供自回归模型预测 → 自回归 WFM 逐帧预测未来 → 扩散解码器(DV8x16x16ToCV8x8x8)把离散 token 增强为更高质量的视频 → 连续 Tokenizer(CV8x8x8)作为扩散模型的编解码接口;而 Prompt Upsampler 与 Guardrail 分别负责输入侧的提示词增强与输入输出两侧的安全把关。

三、扩散世界基础模型(Diffusion WFM):Text2World 与 Video2World

3.1 模型定位与推理入口

Cosmos 1.0 的扩散系列包含Text2World(7B/14B)Video2World(7B/14B)两类共 4 个模型,从源码结构看,其核心实现位于 cosmos1/models/diffusion 目录:

  • Text2World:仅凭文本 prompt 生成一段全新的视觉世界视频,推理脚本为 text2world.py;
  • Video2World:基于输入图片/视频 + 文本,预测并生成后续的未来视觉世界,推理脚本为 video2world.py;
  • 底层网络实现位于 general_dit.py 与 general_dit_video_conditioned.py,模型配置可参考 cosmos-1-diffusion-text2world.py 与 cosmos-1-diffusion-video2world.py。

3.2 检查点下载

下载脚本 download_diffusion.py 支持--model_sizes(7B/14B)与--model_types(Text2World/Video2World)两个维度组合下载,并会自动附带 Guardrail、CV8x8x8 Tokenizer 等必备模型:

PYTHONPATH=$(pwd) python cosmos1/scripts/download_diffusion.py --model_sizes 7B 14B --model_types Text2World Video2World

从脚本源码可见,Video2World 还会额外触发 convert_pixtral_ckpt.py 将 Pixtral-12B 权重转换为本仓库所需的格式,用于 Video2World 的 Prompt Upsampler 任务。

3.3 单条与批量推理

单条生成时,Text2World 必须提供--prompt;Video2World 必须提供--input_image_or_video_path。批量生成则统一使用 JSONL 文件(--batch_input_path),Text2World 每行格式为{"prompt": "..."},Video2World 每行格式为{"visual_input": "path/to/video.mp4"};若禁用 Prompt Upsampler(--disable_prompt_upsampler),则 Video2World 的 JSONL 每行需同时包含promptvisual_input两个字段。仓库在 assets/v1p0/batch_inputs 下提供了text2world.jsonlvideo2world_ps.jsonlvideo2world_wo_ps.jsonl三个可直接复用的示例文件。

7B Text2World 单条推理示例:

PYTHONPATH=$(pwd) python cosmos1/models/diffusion/inference/text2world.py \ --checkpoint_dir checkpoints \ --diffusion_transformer_dir Cosmos-1.0-Diffusion-7B-Text2World \ --prompt "A sleek, humanoid robot stands in a vast warehouse filled with neatly stacked cardboard boxes on industrial shelves." \ --offload_prompt_upsampler \ --video_save_name Cosmos-1.0-Diffusion-7B-Text2World

7B Video2World 单条推理示例(输入单帧图片):

PYTHONPATH=$(pwd) python cosmos1/models/diffusion/inference/video2world.py \ --checkpoint_dir checkpoints \ --diffusion_transformer_dir Cosmos-1.0-Diffusion-7B-Video2World \ --input_image_or_video_path cosmos1/models/diffusion/assets/v1p0/video2world_input0.jpg \ --num_input_frames 1 \ --video_save_name Cosmos-1.0-Diffusion-7B-Video2World \ --offload_prompt_upsampler

3.4 核心参数与显存优化

扩散模型共用的核心参数如下(默认值均来自推理脚本):

参数说明默认值
--checkpoint_dir模型权重根目录checkpoints
--tokenizer_dir连续 Tokenizer 权重目录Cosmos-1.0-Tokenizer-CV8x8x8
--prompt/--batch_input_path单条 prompt / 批量 JSONL 路径None
--negative_prompt用于提升质量的负向提示词内置长文本
--num_steps扩散采样步数35
--guidanceCFG 引导强度7.0
--num_video_frames生成帧数121
--height/--width/--fps输出分辨率与帧率704 / 1280 / 24
--seed随机种子1
--disable_prompt_upsampler关闭 Prompt 自动增强False

说明:当前版本模型仅支持 121 帧;宽高比支持 1:1(960x960)、4:3(960x704)、3:4(704x960)、16:9(1280x704)、9:16(704x1280)等组合,帧率可在 12~40 fps 间调整。

显存方面,--offload_diffusion_transformer--offload_tokenizer--offload_text_encoder_model--offload_prompt_upsampler--offload_guardrail_models五个 offload 开关可逐级把模型从显存卸载到内存。以 7B Text2World 为例,逐级卸载后峰值显存从约 74 GB 依次下降到 57.1 GB → 38.5 GB → 38.3 GB → 24.4 GB(14B 对应约 >80 GB → 70.5 GB → 51.9 GB → 51.7 GB → 39.0 GB),因此 24 GB 显存的 RTX 3090/4090 建议全量 offload。在单张 H100 上,7B Text2World 端到端推理约 380 秒,14B(offload Prompt Upsampler 与 Guardrail)约 590 秒。

四、自回归世界基础模型(Autoregressive WFM):Base 与 Video2World

4.1 模型定位与推理入口

自回归系列包含Base(4B/12B)Video2World(5B/13B)两类共 4 个模型,核心实现位于 cosmos1/models/autoregressive:

  • Base:从图片/视频输入生成未来的视觉世界,推理脚本为 base.py,支持--input_type=videoimage
  • Video2World:基于图片/视频 + 文本 prompt 联合生成,推理脚本为 video2world.py,支持--input_type=text_and_videotext_and_image

自回归模型支持视频扩展(video extension)至 33 帧:从单帧图片可生成剩余 32 帧,从 9 帧视频输入可生成剩余 24 帧。其文本编码依赖 t5_text_encoder.py,token 生成后的解码存在两条路径:默认使用扩散解码器(Cosmos-1.0-Diffusion-7B-Decoder-DV8x16x16ToCV8x8x8)将离散 token 解码为高质量视频,也可通过--disable_diffusion_decoder切换为离散 Tokenizer 直接解码。

4.2 检查点下载与推理

下载脚本 download_autoregressive.py:

PYTHONPATH=$(pwd) python cosmos1/scripts/download_autoregressive.py --model_sizes 4B 5B 12B 13B

脚本会自动附带 Guardrail、DV8x16x16 Tokenizer、CV8x8x8 Tokenizer 以及 Diffusion Decoder 权重。示例输入文件(input.mp4input.jpg)与批量 JSONL(batch_inputs)均已在仓库中提供。

12B Base 单条推理(视频输入):

CUDA_VISIBLE_DEVICES=0 PYTHONPATH=$(pwd) python cosmos1/models/autoregressive/inference/base.py \ --input_type=video \ --input_image_or_video_path=cosmos1/models/autoregressive/assets/v1p0/input.mp4 \ --video_save_name=Cosmos-1.0-Autoregressive-12B \ --ar_model_dir=Cosmos-1.0-Autoregressive-12B \ --top_p=0.9 \ --temperature=1.0

13B Video2World 单条推理:

CUDA_VISIBLE_DEVICES=0 PYTHONPATH=$(pwd) python cosmos1/models/autoregressive/inference/video2world.py \ --input_type=text_and_video \ --input_image_or_video_path=cosmos1/models/autoregressive/assets/v1p0/input.mp4 \ --prompt="A video recorded from a moving vehicle's perspective, capturing roads, buildings, landscapes, and changing weather and lighting conditions." \ --video_save_name=Cosmos-1.0-Autoregressive-13B-Video2World \ --ar_model_dir=Cosmos-1.0-Autoregressive-13B-Video2World \ --top_p=0.8 \ --temperature=1.0

注意:官方已在示例命令中针对每个模型调优过top_ptemperature组合(如 4B 用 0.8/1.0、12B 用 0.9/1.0、5B 用 0.7/1.0、13B 用 0.8/1.0),建议直接沿用示例值;输入分辨率统一要求 1024x640,不符会被自动缩放裁剪。

4.3 显存与稳定性说明

自回归模型同样支持 offload:--offload_guardrail_models--offload_diffusion_decoder--offload_ar_model--offload_tokenizer(Video2World 另加--offload_text_encoder_model)。以 4B Base 为例,峰值显存从无 offload 的 31.3 GB 逐步降至 18.7 GB;12B 从 47.5 GB 降至 27.4 GB。单张 H100 上 4B 约 62 秒、12B 约 119 秒完成端到端推理(不含模型初始化)。

官方在 100 个物理 AI 主题测试视频上评估了 4 模型 × 2 输入类型共 8 种组合的失败率(严重畸变,如突然出现大物体或视频退化为纯色),可作为选型参考:4B 图片输入失败率 15%、视频输入 1%;5B-Video2World 分别为 7% 与 2%;12B 为 2% 与 1%;13B-Video2World 为 3% 与 0%。静态帧、轻微物体畸变不计入失败。

五、配套模型:Tokenizer、Prompt Upsampler 与 Diffusion Decoder

5.1 连续与离散视频 Tokenizer

Cosmos 1.0 发布了两款用于 WFM 的视频 Tokenizer(此前 0.1 版本已发布 10 款,见 release_notes/v0p1.md):

  • Cosmos-1.0-Tokenizer-CV8x8x8:连续视频 Tokenizer,8x8x8 总压缩比,作为扩散模型的编解码接口(编码器输出 16 通道连续 latent);
  • Cosmos-1.0-Tokenizer-DV8x16x16:离散视频 Tokenizer,16x8x8 总压缩比(时间 16 倍、空间 8x8 倍),将视频量化为离散 token 供自回归模型预测。

Tokenizer 的 JIT 推理入口位于 cosmos1/models/tokenizer/inference,具体网络定义见 continuous_video.py 与 discrete_video.py。

5.2 Prompt Upsampler:输入侧的"扩写器"

Cosmos-1.0-PromptUpsampler-12B-Text2World是 Text2World 的提示词增强器,基于微调后的 Mistral 模型,将简短 prompt 自动扩写为更详细、上下文更丰富的描述,从而提升生成视频质量。Video2World 场景则使用 Pixtral-12B 视觉语言模型,直接从输入图片/视频生成详细描述(此模式下用户提供的文本 prompt 不会被考虑)。两者均可通过--disable_prompt_upsampler关闭,官方建议手动编写约 120 词的 prompt 以获得最优质量。实现细节参见 text2world_prompt_upsampler_inference.py 与 video2world_prompt_upsampler_inference.py。

5.3 Diffusion Decoder:自回归输出的"增强器"

Cosmos-1.0-Diffusion-7B-Decoder-DV8x16x16ToCV8x8x8承担离散 latent 到连续 latent 的转换增强:它接收自回归模型产出的离散 token,先映射到连续表征,再通过扩散解码恢复出细节更丰富、质量更高的视频帧,是自回归 WFM 默认解码路径的关键一环。对应实现位于 cosmos1/models/autoregressive/diffusion_decoder。

六、Cosmos Guardrail:两级安全体系

Cosmos-1.0-Guardrail内嵌于所有推理脚本中且不可关闭,其设计为"预检 + 后检"两级结构(详见 guardrail 文档):

  • pre-Guard(输入侧):作用于文本输入(原始 prompt 与增强后的 prompt)。Blocklist 基于关键词列表检测有害词,Aegis 基于 LLM 判断并拦截有害提示;
  • post-Guard(输出侧):作用于模型生成的视频帧。Video Content Safety Filter 是一个判别安全/不安全帧的分类器,Face Blur Filter 则负责检测人脸并自动打码——因此生成人脸的请求会被护栏自动模糊处理。

各模块实现分散于 aegis、blocklist、video_content_safety_filter 与 face_blur_filter 子目录。

七、基于 NeMo 的通用后训练(01/09 更新)

2025-01-09 的发布为 Cosmos 1.0 引入了通过 NVIDIA NeMo 框架进行的General Post-Training,这是继纯推理之后仓库能力的一次关键跃迁。根据 POST_TRAINING.md,Cosmos 预训练 WFM 面向物理 AI(Physical AI)任务规划了六类后训练范式:

后训练任务说明Diffusion WFMAutoregressive WFM
General post-training面向自定义数据集微调,使模型生成目标分布的视频(如特定相机参数或工厂等特定域)已支持已支持
Instruction control基于文本指令预测机器人操作视频(如叠衣服、抓取物体)即将推出即将推出
Action control基于动作向量预测下一视觉帧即将推出即将推出
Camera control加入相机位姿条件,从单图生成 3D 一致的视频模拟即将推出即将推出
Multi-view generation面向自动驾驶,从文本 prompt 生成同步多视角视频即将推出即将推出
Multi-view + 轨迹控制结合车辆轨迹输入精确模拟驾驶环境即将推出即将推出

当前发布仅开放 General Post-Training 的脚本,其余任务(除指令控制需指令-视频配对数据集外)只需对网络结构做小幅修改,将在后续版本提供。

7.1 扩散 WFM 的后训练流程

扩散模型的后训练需要8 张 H100-80GB 或 A100-80GB GPU,采用 FSDP(全分片数据并行)+ 张量并行的组合策略,14B 模型还启用激活检查点(activation checkpointing)。完整流程文档见 diffusion NeMo 后训练指南:

第一步:准备数据集。提供一批 MP4 格式(建议 720p)聚焦同一主体的视频作为参考素材,可下载官方示例数据:

huggingface-cli download nvidia/Cosmos-NeMo-Assets --repo-type dataset --local-dir cosmos1/models/diffusion/assets/ --include "*.mp4*"

第二步:数据预处理。prepare_dataset.py 会从每段视频中选取 N 个 121 帧片段,首帧独立压缩后其余帧做 8 倍时间压缩,并为每个片段生成[i].info.json(元数据)、[i].t5_text_embeddings.pth(T5 文本嵌入)、[i].t5_text_mask.pth[i].video_latent.pth(视频 latent)以及仅在 Video2World 训练时使用的[i].conditioning_latent.pth(输入视频前 9 帧的条件 latent):

python cosmos1/models/diffusion/nemo/post_training/prepare_dataset.py \ --dataset_path $RAW_DATA \ --output_path $CACHED_DATA \ --prompt "A video of sks teal robot." \ --num_chunks 500

如需按自定义指令(如机器人操作指令)微调,则使用 prepare_instruction_dataset.py,其指令文件以language_instruction_0键承载文本指令。

第三步:启动后训练(以 7B Text2World 为例):

NVTE_FUSED_ATTN=0 \ CUDA_DEVICE_MAX_CONNECTIONS=1 \ PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True \ torchrun --nproc_per_node=8 cosmos1/models/diffusion/nemo/post_training/general.py \ --yes \ --factory cosmos_diffusion_7b_text2world_finetune \ data.path=$CACHED_DATA \ trainer.max_steps=1000 \ optim.config.lr=1e-6

关键配置项:--factory选择配方(如cosmos_diffusion_14b_text2world_finetune)、data.path指向预处理数据、resume.restore_config.path指定预训练 NeMo 分布式检查点、optim.config.lr默认 1e-6、trainer.max_steps默认 1000。

7.2 自回归 WFM 的后训练流程

自回归模型的后训练采用张量并行,4B/5B 建议 2/4 张 GPU、12B/13B 建议 8 张 GPU(H100/A100 80GB)。完整流程见 autoregressive NeMo 后训练指南。

  • Base(4B/12B):使用 prepare_dataset.py 生成 Megatron Core 的IndexedDataset.bin+.idx文件),随后运行 general.py:
    torchrun --nproc-per-node $NUM_DEVICES cosmos1/models/autoregressive/nemo/post_training/general.py \ --data_path $OUTPUT_PREFIX \ --split_string 4,1,1 \ --log_dir ./logs \ --max_steps 10 --save_every_n_steps 5 \ --tensor_model_parallel_size $NUM_DEVICES \ --model_path nvidia/Cosmos-1.0-Autoregressive-4B
  • Video2World(5B/13B):使用 video2world_prepare_dataset.py 预计算文本与视频嵌入(产出<train/test/val>_<prompt/video>_<idx>.ptmetadata.json),再运行 video2world_finetuning.py 微调。

常用配置项包括--data_path--model_path--index_mapping_dir--log_dir--split_string(默认 4,1,1)、--tensor_model_parallel_size(默认 2)、--max_steps(默认 100)、--save_every_n_steps(默认 10)、--global_batch_size(默认 2)、--micro_batch_size(默认 1)、--lr(默认 5e-5)、--max_epochs(默认 10)。

八、稳定性与安全性改进(01/27 更新)

最后一次发布重点围绕Stability(稳定性)与 Safety(安全性)进行改进。结合仓库现状可从两方面理解其落地形态:

  • 稳定性:扩散与自回归两条流水线均提供了逐级 offload 的显存策略与经调优的采样参数(num_steps=35guidance=7.0、各模型专属的top_p/temperature),这些配置在 text2world.py、video2world.py、base.py 等脚本中均有体现,官方在示例命令中固化了调优值以保证开箱即用的生成质量;
  • 安全性:由 guardrail 体系承载——pre-Guard(Blocklist + Aegis)拦截有害文本输入,post-Guard(Video Content Safety Filter + Face Blur Filter)过滤不安全帧并模糊人脸,且该体系不可被关闭,是 Cosmos 1.0 全模型推理的统一安全底线。

九、总结:Cosmos 1.0 的完整技术版图

从 release_notes/v1p0.md 出发可以看到,Cosmos 1.0 不是单一模型的发布,而是一套面向物理 AI 的世界基础模型平台:扩散与自回归双路线共 8 个生成模型覆盖 Text2World/Video2World 两大任务形态,连续/离散两款 Tokenizer 提供统一视觉编解码接口,Prompt Upsampler 与 Diffusion Decoder 分别优化输入与输出质量,Guardrail 贯穿全程保障安全,NeMo 后训练链路则打通了"预训练 → 领域微调 → 部署推理"的完整闭环。开发者可按需组合:需要一次性生成整段世界视频选扩散系列,需要从输入帧逐步外推选自回归系列,需要面向自有场景微调则从 POST_TRAINING.md 与两个 NeMo 后训练指南入手。

【免费下载链接】cosmosNVIDIA Cosmos is an open platform of world models, datasets, and tools that enables developers to build Physical AI for robots, autonomous vehicles, smart infrastructure, and more.项目地址: https://gitcode.com/GitHub_Trending/cosmos7/cosmos

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/15 11:52:47

AI时代程序员如何破局:从可替代焦虑到超级个体

说实话&#xff0c;这段时间我身边几乎每个做开发的朋友都在聊同一个问题&#xff1a;AI都这么猛了&#xff0c;连代码都能自己写了&#xff0c;咱们程序员还有没有未来&#xff1f;有的开始偷偷刷算法题准备跑路&#xff0c;有的在考虑转行做产品经理&#xff0c;还有的直接躺…

作者头像 李华
网站建设 2026/9/15 11:52:03

流媒体弱网优化:纯NACK重传机制设计与实战

开篇&#xff1a;被弱网按在地上摩擦之后&#xff0c;我开始折腾NACK做流媒体服务三年多&#xff0c;我最怕的不是流量洪峰&#xff0c;也不是编码参数调错&#xff0c;而是用户那边网络明明显示"满格"&#xff0c;实际却在疯狂丢包。尤其是做自建流媒体服务时&#…

作者头像 李华
网站建设 2026/9/15 11:49:59

FrankenPHP 安全模型:Go 与 PHP 之间的信任边界解析

FrankenPHP 安全模型&#xff1a;Go 与 PHP 之间的信任边界解析 【免费下载链接】frankenphp &#x1f9df; The modern PHP app server 项目地址: https://gitcode.com/GitHub_Trending/fr/frankenphp 本篇技术指南系统梳理 FrankenPHP 的信任模型&#xff08;trust mo…

作者头像 李华