尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

NVIDIA Cosmos 从零到上手:完整指南,用文本或视频生成你的第一个物理世界视频

NVIDIA Cosmos 从零到上手:完整指南,用文本或视频生成你的第一个物理世界视频 NVIDIA Cosmos 从零到上手完整指南用文本或视频生成你的第一个物理世界视频【免费下载链接】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 理解真实物理世界需要海量高质量的视频数据而这些数据靠人工拍摄几乎不可能规模化获得。NVIDIA Cosmos 正是为解决这个问题而生的物理世界生成平台——它是一套开源的世界模型体系包含预训练模型、数据集与配套工具可以让开发者直接用一段文字描述或基于一张图片、一段视频生成高质量的物理世界模拟视频。在本教程中我会以一个新手的视角带你完整走一遍环境搭建 → 模型下载 → 生成第一个视频 → 进阶优化的全流程。读完这篇文章你将亲手跑出属于你自己的物理世界视频。我们开始吧。 第一幕认识 Cosmos——它能做什么为什么值得一试它解决的是什么痛点传统上为机器人训练搬箱子动作、为自动驾驶验证遇到红灯停车的逻辑都需要在真实世界或手工搭建的仿真环境里反复采集数据成本高、周期长、场景覆盖有限。Cosmos 的思路很直接让模型直接想象出物理世界。给它一句仓库里站着一个机器人的文字它生成一段 121 帧、带合理物理运动的视频给它一张公路实拍图它能续写出接下来几秒车辆继续行驶的画面。这类模型被称为世界基础模型World Foundation ModelWFM它们生成的不是简单动画而是符合物理规律如重力、遮挡、光照变化的视觉模拟。你能收获什么模型家族速览Cosmos 提供了两类生成模型覆盖不同的输入方式模型家族模型名称输入适用场景扩散模型 Text2WorldCosmos-1.0-Diffusion-7B/14B-Text2World文本从零生成全新场景扩散模型 Video2WorldCosmos-1.0-Diffusion-7B/14B-Video2World视频/图片 文本在现有画面基础上续写世界自回归模型Cosmos-1.0-Autoregressive-4B/12B视频 可选文本预测未来画面自回归模型Cosmos-1.0-Autoregressive-5B/13B-Video2World视频 文本视频引导的未来世界生成此外Cosmos 还内置了视频分词器Video Tokenizer和安全护栏Guardrail前者负责把视频压缩成模型能处理的连续/离散 token后者在推理时自动进行人脸模糊与内容安全过滤——注意安全功能是强制开启、不可禁用的。它是怎么工作的一次理解与重建一句话概括生成流程先由视频分词器把视频压缩到潜空间Latent Space扩散或自回归模型在潜空间里按物理规律推演未来帧最后再通过分词器的解码器把潜变量还原成像素视频。下面这张架构图直观展示了视频分词器的编码-潜空间-解码过程看不懂这张图也没关系——你现在只需要知道它能做什么等跑通第一个视频后再回来研究它是怎么做的也不迟。 第二幕环境准备——三步搭好开发环境在写第一行命令之前先花五分钟对照清单检查环境。把这一步做扎实后面能少踩 80% 的坑。步骤 1自查硬件与系统清单检查项最低要求说明操作系统Ubuntu 20.04 / 22.04 / 24.04目前官方仅验证支持 UbuntuGPUNVIDIA GPU建议显存 ≥ 24GB24GB 需开启全部卸载策略见第四幕Docker已安装 NVIDIA Container Toolkit容器内才能访问 GPU存储空间≥ 50GB 可用主要用于下载模型权重Hugging Face 账号需创建访问令牌模型托管在 Hugging Face用下面这条命令快速确认 Docker 能否访问 GPU容器外执行docker run --rm --gpus all nvidia/cuda:12.0.0-base-ubuntu22.04 nvidia-smi能看到 GPU 信息表格说明 NVIDIA Container Toolkit 配置成功。如果报错请先参考官方文档安装 NVIDIA Container Toolkit再继续。步骤 2克隆仓库并构建 Docker 镜像克隆项目仓库git clone https://gitcode.com/GitHub_Trending/cosmos7/cosmos cd cosmos然后构建 Docker 镜像并启动容器docker build -t cosmos . docker run -d --name cosmos_container --gpus all --ipchost -it -v $(pwd):/workspace cosmos docker attach cosmos_container逐条解释一下这三条命令做了什么docker build -t cosmos .根据项目根目录的 Dockerfile 构建镜像镜像名取为cosmosdocker run -d ...以后台模式启动容器--gpus all把全部 GPU 挂进容器-v $(pwd):/workspace把当前目录挂载为容器内的工作区/workspacedocker attach cosmos_container进入容器交互终端后续所有命令都在容器内执行。 容器内的工作区/workspace与宿主机当前目录是同一份文件你在容器里生成的视频宿主机上也能直接看到。步骤 3获取 Hugging Face 访问权限模型权重托管在 Hugging Face需要两步授权在 Hugging Face 官网的 Settings → Access Tokens 页面创建访问令牌权限选Read默认是 Fine-grained在终端登录huggingface-cli login按提示粘贴刚才的令牌即可。如果你之后要使用Video2World还需要额外访问 Mistral AI 的Pixtral-12B模型页面点击 Agree and access repository 同意其许可协议——Video2World 的提示上采样器依赖这个模型未授权会直接下载失败。步骤 4下载模型权重官方提供了一条命令批量下载 7B 与 14B 的 Text2World、Video2World 扩散模型含分词器、提示上采样器与安全护栏PYTHONPATH$(pwd) python cosmos1/scripts/download_diffusion.py \ --model_sizes 7B 14B \ --model_types Text2World Video2World下载完成后checkpoints/目录会呈现类似这样的结构checkpoints/ ├── Cosmos-1.0-Diffusion-7B-Text2World/ ├── Cosmos-1.0-Diffusion-14B-Text2World/ ├── Cosmos-1.0-Diffusion-7B-Video2World/ ├── Cosmos-1.0-Diffusion-14B-Video2World/ ├── Cosmos-1.0-Tokenizer-CV8x8x8/ ├── Cosmos-1.0-Prompt-Upsampler-12B-Text2World/ ├── Pixtral-12B/ └── Cosmos-1.0-Guardrail/到这里你的弹药库已经就绪。接下来就是最激动人心的一步让模型为你生成第一段视频。 第三幕第一次跑通——用文本生成你的第一个物理世界视频最简命令一行跑出你的第一段视频在容器内执行下面这条命令官方 README 同款示例提示词你可以直接复制PROMPTA sleek, humanoid robot stands in a vast warehouse filled with neatly stacked cardboard boxes on industrial shelves. \ The robots metallic body gleams under the bright, even lighting, highlighting its futuristic design and intricate joints. \ A glowing blue light emanates from its chest, adding a touch of advanced technology. The background is dominated by rows of boxes, \ suggesting a highly organized storage system. The floor is lined with wooden pallets, enhancing the industrial setting. \ The camera remains static, capturing the robots poised stance amidst the orderly environment, with a shallow depth of \ field that keeps the focus on the robot while subtly blurring the background for a cinematic effect. PYTHONPATH$(pwd) python cosmos1/models/diffusion/inference/text2world.py \ --checkpoint_dir checkpoints \ --diffusion_transformer_dir Cosmos-1.0-Diffusion-7B-Text2World \ --prompt $PROMPT \ --offload_prompt_upsampler \ --video_save_name my-first-cosmos-video命令参数逐个拆解--checkpoint_dir checkpoints模型权重根目录对应上一步下载的位置--diffusion_transformer_dir Cosmos-1.0-Diffusion-7B-Text2World指定使用哪个扩散模型换成Cosmos-1.0-Diffusion-14B-Text2World即可用 14B 模型--prompt $PROMPT你的文本提示词即想看到什么画面--offload_prompt_upsampler提示上采样器用完即从显存卸载省出显存--video_save_name my-first-cosmos-video输出视频的文件名。预期效果与输出文件7B 模型单条视频大约需要380 秒左右14B 约 590 秒请耐心等待。运行日志中你会看到模型加载、文本编码、扩散采样等阶段的进度信息。生成完成后默认输出到outputs/目录outputs/my-first-cosmos-video.mp4最终视频默认121 帧、1280×704 分辨率、24fpsoutputs/my-first-cosmos-video.txt实际用于生成的提示词文本。打开视频你会看到仓库中那个闪着蓝光的机器人——恭喜你的第一个物理世界视频诞生了用图片或视频续写世界Video2WorldText2World 是从无到有而 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 video2world-demo \ --offload_prompt_upsampler参数说明--input_image_or_video_path输入图片或视频的路径--num_input_frames作为条件的前置帧数可选1单张图片或9多帧视频——传入图片时必须是 1。你可以把路径换成自己的图片或视频试试让图片动起来的乐趣。视频生成机制是固定 121 帧分辨率与帧率可通过参数调整详见第四幕。批量生成一次处理多条提示词单个跑通了批量也很简单。准备好一个 JSONL 文件每行一条 JSON 记录{prompt: A tugger train glides smoothly through the factory floor.} {prompt: A sleek, humanoid robot stands in a vast warehouse.}然后指定--batch_input_path与--video_save_folderPYTHONPATH$(pwd) python cosmos1/models/diffusion/inference/text2world.py \ --checkpoint_dir checkpoints \ --diffusion_transformer_dir Cosmos-1.0-Diffusion-7B-Text2World \ --batch_input_path cosmos1/models/diffusion/assets/v1p0/batch_inputs/text2world.jsonl \ --video_save_folder outputs/batch-demo \ --offload_prompt_upsamplerVideo2World 的批量文件则每行包含visual_input字段见 video2world_ps.jsonl。批量模式下输出按序号命名0.mp4、1.mp4……每个视频旁还会生成对应的.txt提示词文件方便复盘。️ 第四幕进阶优化与问题排查跑通之后你大概率会想能不能更快、更省显存、效果更好这一幕解决的就是这些问题。显存不够怎么办卸载策略对照表Cosmos 的推理脚本提供了 5 个卸载开关--offload_tokenizer、--offload_diffusion_transformer、--offload_text_encoder_model、--offload_prompt_upsampler、--offload_guardrail_models作用都是某个模块推理完就释放显存。根据 GPU 显存大小推荐组合如下GPU 类型推荐卸载策略预期显存占用RTX 3090/409024GB5 个开关全部开启约 24GBA10040GB卸载提示上采样器 安全护栏约 57GBH10080GB仅卸载提示上采样器约 74GB24GB 显存的完整示例PYTHONPATH$(pwd) python cosmos1/models/diffusion/inference/text2world.py \ --checkpoint_dir checkpoints \ --diffusion_transformer_dir Cosmos-1.0-Diffusion-7B-Text2World \ --prompt $PROMPT \ --offload_tokenizer \ --offload_diffusion_transformer \ --offload_text_encoder_model \ --offload_prompt_upsampler \ --offload_guardrail_models常用参数调优速查表参数默认值作用调优建议--num_steps35扩散采样步数步数越多质量越高、耗时越长--guidance7提示词引导强度过高易过曝过低易偏离提示--height/--width704 / 1280输出分辨率按目标宽高比调整--fps24输出帧率12–40 之间可调--seed1随机种子固定种子可复现同一结果--disable_prompt_upsampler关闭禁用提示上采样想保持原始提示词时开启提示上采样器默认开启它会把简短提示自动扩写成更详细、画面质量更高的描述如果你希望严格保持自己的创作意图就加上--disable_prompt_upsampler。提示词优化技巧一个高质量提示词能让生成质量肉眼可见地提升详细描述单一场景只写一个场景避免镜头切换如机器人站在仓库中央而不是机器人走来走去然后切到外面街道控制长度120 词左右为宜过长反而可能稀释重点少做相机控制当前版本对复杂运镜指令支持有限camera remains static静态机位这类简单描述更稳妥善用形容词补上材质metallic、glass、光照bright、dim、氛围cinematic等细节。自回归模型与扩散模型怎么选除了扩散模型Cosmos 还提供了自回归模型见 cosmos1/scripts/download_autoregressive.py。两者核心区别维度扩散模型Diffusion自回归模型Autoregressive生成方式逐步去噪从噪声还原画面逐 token 预测未来帧输入形式文本 / 图片 / 视频视频未来世界预测代表模型7B / 14B Text2World、Video2World4B / 12B、5B / 13B Video2World典型用途从零生成、场景续写预测视频的下一步新手建议先从扩散 7B 模型入手流程简单、对显存友好跑通后再横向对比 14B 与自回归家族。下面这张性能对比图展示了 Cosmos 分词器在延迟指标上相较主流方案的改进也可以作为你评估平台能力的参考首次运行遇到报错的 5 种解法报错现象可能原因解决办法Authentication token does not matchHugging Face 未登录或令牌失效重新执行huggingface-cli login下载 Pixtral-12B 时 401/403未同意该模型仓库协议去模型页面点击 Agree and access repositoryCUDA out of memory显存不足参照上方卸载策略表开满 5 个 offload 开关Failed to initialize NVML/ 找不到 GPUNVIDIA Container Toolkit 未安装安装后重新构建并运行容器日志提示Guardrail blocked提示词触发安全过滤或生成人脸调整提示词内容人脸会被自动模糊属正常行为更进一步的玩法后训练与多 GPU 推理跑通推理只是起点。如果你想针对自己的业务场景优化模型官方提供了两条进阶路径后训练Post-training借助 NeMo 框架对预训练模型做领域定制文档见 cosmos1/models/POST_TRAINING.md扩散与自回归模型分别有对应的 post_training 目录多 GPU 推理对于 14B 模型或大批量生成支持多卡并行加速配置方式见 cosmos1/models/diffusion/nemo/inference/README.md。 总结与行动清单到这里你已经完整走过了认识 → 准备 → 实践 → 进阶四个阶段。回顾一下最关键的三个里程碑是环境装好、模型下载完成、第一条命令跑出视频。只要这三个节点达成Cosmos 的大门就彻底为你敞开了。现在请按这份清单继续你的旅程用 7B Text2World 模型跑通第一条视频感受默认参数效果换一张自己的图片试一次 Video2World体验让照片动起来打开--batch_input_path批量生成提高效率尝试修改--num_steps、--guidance、--seed观察画面变化显存紧张时对照卸载策略表开启 offload 开关进阶方向阅读后训练文档定制属于自己的世界模型生成一个能动的物理世界曾经是仿真团队和 CG 团队的专属技能而现在一条命令就够了。剩下的就交给你的想象力——去写下第一句属于你的世界描述吧【免费下载链接】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),仅供参考
返回列表