mcpField
N
nvidia-cosmos-video

nvidia-cosmos-video

github.com/calesthio创意与媒体219101 次安装15 周前更新
代码仓库

关于 nvidia-cosmos-video

面向使用 NVIDIA Cosmos 生成或模拟视频世界状态的开发者与研究人员,帮助按任务选择模型家族、制品和运行环境。内容区分生成、预测、结构控制与推理等用途,并强调各模型和运行时的接口不能互换。

主要功能

  1. 01按任务选择 Cosmos 模型家族
  2. 02区分生成、预测与结构控制
  3. 03比较开源检查点与 NIM 运行方式
  4. 04说明各运行时的请求契约

适用场景

  1. 01从文本或图像生成视频
  2. 02根据初始视频预测后续状态
  3. 03保留视频结构并改变外观或环境
  4. 04为自托管 NIM 准备并验证请求

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/calesthio/generative-media-skills --skill nvidia-cosmos-video

安装后在 Claude Code 中输入/nvidia-cosmos-video确认已加载。

附带文件EVAL.md

详细介绍

NVIDIA Cosmos 视频

将 Cosmos 用作世界生成和世界模拟系统,而不是物理真实性的证明。应结合任务、产物和运行时进行选择。名称、架构、许可证、参数数量和硬件声明因具体表面而异。

本指南已于 2026-07-10 根据 NVIDIA 一手代码仓库、模型卡、NIM 文档、许可证和技术报告进行核实。请在下载、部署、后训练或提供服务之前,立即重新核查每个链接的模型卡、发行说明、支持矩阵和附带的许可证。

按系列和任务选择

系列/产物功能输入和输出状态/边界
Cosmos 3 Generator(Cosmos3-Nano、Cosmos3-Super)通用全模态世界生成;文本/图像转视频,以及在受支持的开放运行时中支持视频、声音和动作模式完整的开放模型检查点卡说明支持文本/图像/视频/音频/动作输入,以及图像/视频/音频/动作输出最新的开放系列,于 2026-05-31 发布。媒体生成请使用 Generator;独立的 Reasoner 生成文本推理,而非视频
Cosmos3-Super-Image2Video专用图像转视频检查点一张图像 + 文本 → 视频不要假设 Nano/Super 与此专用模型可以互换
Cosmos-Predict2.5 2B/14B未来世界预测,统一支持 Text2World/Image2World/Video2World;包含专用 AV/机器人变体文本,可选首帧图像/视频;某些变体会使用动作或多视角输入当前 Predict2.5 代码仓库;2B 和 14B 预训练/后训练基础模型、蒸馏模型和领域检查点的能力各不相同
Cosmos-Transfer2.5-2B带结构控制的世界到世界转换源 RGB 视频 + 提示词 + 边缘/深度/分割/视觉模糊控制 → 转换后的视频当前控制模型;用于 Sim2Real/Real2Real 结构保留,不适用于不受约束的文本转视频
Predict2 / Predict1 / Transfer1较早的系列文本/图像/视频/控制约定各不相同Predict2 代码仓库已归档,并明确建议迁移到 Predict2.5。Predict1 仍可通过 NIM 使用。未发现公开的统一 EOL 日期;应称为较早/旧版,而不要称为不受支持,除非具体产物明确如此说明
Cosmos Reason、Embed、Tokenizer、Curator、Evaluator推理、嵌入、压缩/数据/评估不是视频生成端点不要仅因它们带有 Cosmos 名称,就将生成请求路由到这些产品
Cosmos 3 的尺寸标签不可互换
  • Hugging Face 模型卡将完整的全模态检查点计为 16B Nano 和 64B Super。
  • cosmos3-generator NIM 将生成路径打包为 8B nano 和 32B super,通过 NIM_MODEL_SIZE=nano|super 选择。
  • 记录确切的产物和表面。不要用一个计数“修正”另一个,也不要假设它们的内存需求相同。
选择生产路径
需求推荐路径原因
新的通用文本/图像生成视频Cosmos 3 Generator,开发阶段使用 Nano;只有在有质量证据并获批容量后,才考虑 Super当前的通用系列;NIM 为 nano/super 提供相同的 T2V/I2V 请求格式
根据初始视频预测未来状态Predict2.5 Video2World其契约明确支持视频条件输入和滑动窗口续接
在改变域、天气、材质或外观时保留几何结构Transfer2.5Edge/depth/seg/blur 控件可直接表达结构
七摄像头 AV 或机器人多视角对应的 Predict2.5/Transfer2.5 专用检查点仅凭提示词,通用单视角检查点无法生成经过校准的多视角数据
动作条件下的推演对应的 Predict2.5 机器人/动作版本,或兼容 Cosmos 3 的具身模型动作维度、归一化方式、摄像头视角和检查点必须与具身模型完全匹配
生成同步声音使用带有声音模块的 Cosmos 3 开放式 Framework/Diffusers/vLLM-Omni 路径当前 Cosmos3 Generator NIM /v1/infer 契约记录的仅为视频 T2V/I2V;不要向其发送开放式运行时的声音字段
文本分析、定位、规划Cosmos3-Reasoner 或 Cosmos-Reason2独立的 VLM/NIM;不能替代 Generator

区分运行时契约

开放检查点和代码仓库
  • 最适合研究、确定性地固定版本、本地数据控制、后训练和专用变体。
  • Hugging Face 模型可能受限:接受其许可证并分享账户/联系信息是下载流程的一部分。首次推理时可能会自动下载检查点,除非提供了经批准的不可变缓存。
  • 固定 40 个字符的 Hugging Face 提交版本或不可变本地快照、代码仓库提交版本/标签、依赖锁定文件和容器摘要。生产记录中绝不要使用可变的 main 或 latest。
  • 预取后,使用不可变快照路径和 local_files_only=True;在支持的情况下设置 HF_HUB_OFFLINE=1。未经独立代码审查并精确固定提交版本,不要启用 trust_remote_code。
自托管 NVIDIA NIM
  • NIM 是容器化的同步 HTTP 服务,使用 POST /v1/infer;它会返回包含 base64 MP4(b64_video)的 JSON。文档说明 NIM 输出 MP4 使用 VP9 编码。
  • 每个模型系列都有各自的容器。当前发行说明列出 cosmos-predict1-7b-*、cosmos-transfer2.5-2b、cosmos-predict2.5-2b 和 cosmos3-generator。
  • 除非使用 NIM_MODEL_PROFILE 或 NIM_TAGS_SELECTOR 固定配置文件,否则 NIM 会根据硬件选择经过优化的配置文件。记录 /v1/metadata、可用时的 /v1/version、镜像标签和摘要、活动配置文件、检查点引用、精度及防护栏配置。
  • 容器启动时可能会从 NGC 下载模型工件。经单独批准后预热并验证缓存;若所选容器支持受控离线启动,则使用 NIM_DISABLE_MODEL_DOWNLOAD=1。
  • NIM 软件/容器的使用受 /opt/nim/LICENSE 中嵌入的确切协议约束,此外还受检查点和组件声明约束。Developer Program 的 NIM 使用权限仅限原型设计/研究/开发/测试;生产许可/支持需另行签订 NVIDIA AI Enterprise 或提供商合同。
NVIDIA 托管式 Preview API / API Catalog
  • build.nvidia.com 的可用性、端点 URL、身份验证、配额、价格、保留期限、处理区域和 SLA 均取决于账户和日期。仅使用登录后目录生成的端点/架构及当前条款;不要根据模型名称自行拼接 URL。
  • Cosmos3 Nano 目录卡片说明,托管式 Preview 输出包含安全护栏和 SynthID。不要将此声明套用到本地开源检查点。
  • 公开文档未确定统一稳定的托管价格、保留期限、区域或幂等键。上传机密或受监管数据前,务必取得明确批准并确认企业条款/DPA。

精确的 NIM 请求契约

以下示例均针对环回地址上正在运行且已获批准的自托管 NIM。这些示例不会安装软件、下载权重或启动容器。

Cosmos3 Generator NIM

模式由系统推断;不存在 mode 字段。未知字段会导致 HTTP 422。

  • T2V:prompt 必须非空,且不得包含 image。
  • I2V:image 可以是原始 base64、data URI 或允许使用的公开 URL;prompt 为可选项。支持 JPEG/PNG/WebP;请求字段最多 20,000,000 个字符。
  • resolution:256、480 或 720,可选后缀为 _16_9、_1_1、_9_16、_4_3、_3_4。
  • num_output_frames:25–397,按 4k+1 帧数节奏递增;各档位上限分别为 256 时 397、480 时 297、720 时 197。默认值为 189。
  • fps:1–60,建议为 10–30;编码器会保留小数 FPS,但模型会将其四舍五入到最接近的整数。
  • guidance_scale:1–7,默认值为 6。steps:1–100,默认值为 35。设置一个非负 seed。

示例 — 一次已获批准的 7.875 秒 T2V 请求:

{
  "prompt": "Fixed waist-height camera in a clean robot-cell aisle. A yellow mobile robot rolls forward two meters, slows beside shelf B4, and stops; its wheels rotate consistently, the shelf and floor markings remain fixed, and no people enter frame.",
  "negative_prompt": "object morphing, sliding wheels, changing shelf geometry, camera shake, text overlays, logos",
  "resolution": "720_16_9",
  "num_output_frames": 189,
  "fps": 24.0,
  "steps": 35,
  "guidance_scale": 6.0,
  "seed": 18427
}

原因:189 / 24 = 7.875 秒,帧数符合 4k+1,且 prompt 描述了可见的初始状态、一次状态转换、摄像机约束和不变条件。可能出现的问题包括车轮打滑、物体变形和停止位置不准确;应测量这些问题,而不是将结果描述为“具备物理感知能力”。

Predict2.5-2B NIM
  • 必须提供 prompt;从 image 或 video 中选择一个添加,不可同时提供。两者均未提供时为 Text2World;提供 image 时为 Image2World;提供 MP4 视频时为 Video2World。
  • resolution 键:256、480、512、720,以及相同的五种宽高比后缀。示例:480_16_9 为 768×432;720_16_9 为 1280×704。
  • num_output_frames 默认值为 93。更大的值会使用自回归滑动窗口循环。Predict2.5 的 NIM 架构未提供 FPS 字段;请检查返回的 MP4,而不要推断时长。
  • guidance_scale 为 1–20,默认值为 7;steps 为 1–50,默认值为 35;seed 范围为 0–4294967295。

示例 — Image2World 运动测试:

{
  "prompt": "The same white robot arm closes its gripper around the red block and raises it vertically by ten centimeters. The workbench, camera, gripper design, and all other blocks remain unchanged.",
  "negative_prompt": "extra blocks, changing gripper, camera movement, object morphing, flicker",
  "image": "data:image/png;base64,APPROVED_BASE64_IMAGE",
  "resolution": "480_16_9",
  "num_output_frames": 93,
  "steps": 35,
  "guidance_scale": 7.0,
  "seed": 92014
}

开源 2B 模型卡另行说明了 5 秒、16-FPS 的 720p/480p 检查点变体,以及特定的 1280×704 或 832×480 条件媒体。不要用该检查点契约覆盖当前 NIM 架构。

Transfer2.5-2B NIM
  • 必需项:MP4 源 video、prompt,以及 edge、depth、vis(视觉模糊)或 seg 中至少一项。
  • 源视频长度:93–480 帧。resolution(256|480|512|720)为内部处理分辨率;输出分辨率与输入相同。
  • 控制项可以提供 base64/URL 格式的 control、可选蒙版和 0–1 的 control_weight。若要自动提取控制图,请完全省略 control——null 或 "" 都会报错。
  • 多个权重的总和超过 1 时,会按比例归一化。请使用源自同一来源、空间和时间尺寸相同且对齐的控制图。
  • guidance 为 0–7,默认值为 3;num_steps 默认值为 35;num_conditional_frames 为 1 或 2。

示例 — 受控的 Sim2Real 变化:

{
  "video": "data:video/mp4;base64,APPROVED_SOURCE_VIDEO",
  "prompt": "Photorealistic industrial inspection cell under cool overhead LEDs. Preserve the robot, conveyor, camera path, timing, contacts, and all object positions; replace only synthetic materials and lighting with realistic metal, rubber, and painted concrete.",
  "negative_prompt": "changed geometry, new objects, missing conveyor, altered camera path, inconsistent contacts, text overlays",
  "seed": 7312,
  "guidance": 3,
  "num_steps": 35,
  "resolution": "480",
  "num_conditional_frames": 1,
  "edge": {"control_weight": 0.6},
  "depth": {"control_weight": 0.4}
}

这会要求 NIM 从源视频中提取边缘/深度信息。对于安全关键型合成数据,建议使用明确且经过哈希校验的控制图,并测量对齐情况。视觉上合理的输出并非带标签的真实样本。

面向世界状态而非氛围的提示词

文档建议:Predict2.5 本地模型卡建议为 5 秒片段使用少于 300 个词,并具体描述场景、物体、运动和背景;Cosmos3 NIM 建议使用一两句简洁的话。

生产环境启发:

  1. 首先声明传感器/摄像机视角:固定、行车记录仪、腕戴摄像机、第三人称、镜头/高度,以及允许的运动。
  2. 描述初始世界状态:统计物体数量;说明稳定的颜色/材质/位置/身份;指出接触关系。
  3. 描述一个按时间顺序发生的转变,包括距离、方向、速度趋势和停止/结束条件。
  4. 声明不变量:哪些内容不能移动、变形、出现、消失、重新标注或改变视角。
  5. 在几何结构和动态之后再描述渲染/风格变化。对于 Transfer,应让控制项承载结构,让文本描述目标领域。
  6. 使用负向提示词描述可观察的失败类型,而非规避策略或罗列大量含糊的质量形容词。
  7. 固定修订版本、运行时、精度、提示词、控制项和种子,每次只更改一个参数。种子有助于比较,但无法保证不同内核、量化方式、GPU 或修订版本之间逐位一致。
  8. 对于滑动窗口输出,检查每个接缝并测量每个块的漂移。更多帧会扩大误差范围;它们不会凭空延长物理记忆。

本地检查点与修订版本控制

在获取任何模型或首次启动容器之前,创建并批准部署清单:

{
  "surface": "self-hosted-nim",
  "container": "nvcr.io/nim/nvidia/cosmos3-generator@sha256:APPROVED_DIGEST",
  "license_sha256": "HASH_OF_/opt/nim/LICENSE",
  "model_size": "nano",
  "precision": "fp8",
  "nim_model_profile": "APPROVED_PROFILE_ID",
  "metadata_sha256": "HASH_OF_CANONICAL_/v1/metadata",
  "guardrail_manifest_sha256": "APPROVED_HASH",
  "driver_cuda_gpu": "RECORDED_HOST_FACTS",
  "network_policy": "offline-after-cache-warm",
  "input_manifest_sha256": "APPROVED_INPUT_HASH",
  "output_root": "/approved/immutable/run-root"
}
  • 为每个检查点分片/控制项/输入文件计算哈希,并保留提供方文件名、字节数、来源 URL、许可证和获取时间。加载前验证 safetensors/索引一致性或框架特定的检查点结构。
  • 将 BYOC 检查点以只读方式挂载。对于 Cosmos3 NIM,NIM_FT_CHECKPOINT 必须是容器内的绝对路径,并包含 transformer/、vae/、scheduler/ 和 model_index.json;NIM 会检测大小/精度并拒绝不匹配的配置。通过 /v1/metadata 确认当前检查点。
  • Transfer2.5 NIM 接受独立的 NIM_EDGE_CHECKPOINT、NIM_VIS_CHECKPOINT、NIM_DEPTH_CHECKPOINT 和 NIM_SEG_CHECKPOINT。记录哪些是自定义的,哪些是随附的。FP8 首次启动可能需要数小时进行校准/构建 TensorRT 引擎;缓存属于构建产物,/v1/health/ready 是就绪状态信号。
  • 后训练使用不同的检查点格式:恢复训练使用分布式 DCP,推理/初始训练使用合并后的 .pt。切勿将 DCP 目录当作合并后的推理文件加载。记录基础修订版本、数据清单/许可证、代码提交、配置、优化器状态、步数和父检查点。
  • 将基于 pickle 的 .pt 视为具有可执行风险的输入。仅在隔离环境中加载可信且经过哈希校验的检查点。在受支持的范围内,优先使用 safetensors。

硬件和精度因产品表面而异

  • Cosmos3 开源 Diffusers/模型卡: Linux;经测试的精度为 BF16;经测试的硬件包括 H100 和 GB200。卡片未公布通用的本地 VRAM 最低要求。不要承诺支持消费级 GPU。
  • Cosmos3 Generator NIM: Hopper 或更新架构(CC ≥9.0)。Nano 每台设备需要 ≥79 GiB。Super FP8 在一台设备上需要 ≥121 GiB,或在两台设备上每台需要 ≥79 GiB;Super BF16 在一台设备上需要 ≥150 GiB、两台设备上每台需要 ≥92 GiB,或四台设备上每台需要 ≥65 GiB。NVFP4 需要 Blackwell(CC ≥10.0);不要将 NIM 的量化声明套用到开源 Diffusers。
  • Predict2.5 开源 2B Video2World: 模型卡报告约 32.54 GB VRAM,适用于 Linux,经测试的精度为 BF16。开源仓库支持 Ampere 或更新架构。优化版 Predict2.5 NIM 则要求 CC ≥8.9;请使用其当前的 GPU/配置文件矩阵。
  • Transfer2.5 开源 2B: 约 65.4 GB VRAM,适用于 Linux,经测试的精度为 BF16;即使在数据中心 GPU 上,720p/16-FPS/93 帧基准测试也需要数分钟。其 AV 多视角模型至少需要八块 80-GB GPU。Transfer NIM 要求 Hopper 或更新架构,并且根据其当前先决条件,需要大量主机 RAM 和磁盘空间。
  • 批准前,请测量可用 VRAM、主机 RAM、磁盘/缓存余量、GPU 拓扑/P2P、驱动/CUDA 兼容性、预计冷启动构建时间、运行耗时,以及能耗/云成本。参数量对比不能代替容量规划。

先试运行的 NIM 客户端

这个完整的 Python 示例仅面向环回 Cosmos3 Generator NIM。默认模式会打印规范的审批信封,且不会进行任何网络调用或写入。执行需要精确的部署身份、请求摘要、输出路径和运行时间上限。它会进行一次同步 POST,且绝不会重试结果不明确的请求。

import base64, hashlib, json, os, pathlib, urllib.parse, urllib.request

MODE = os.getenv("COSMOS_MODE", "dry-run")
output = pathlib.Path(os.getenv("COSMOS_OUTPUT", "./cosmos3-t2v.mp4")).resolve()
body = {
    "prompt": "Fixed waist-height camera in a clean robot-cell aisle. A yellow mobile robot rolls forward two meters, slows beside shelf B4, and stops; shelf and floor markings remain fixed.",
    "negative_prompt": "object morphing, sliding wheels, changing geometry, camera shake, text overlays",
    "resolution": "720_16_9", "num_output_frames": 189, "fps": 24.0,
    "steps": 35, "guidance_scale": 6.0, "seed": 18427,
}
deployment = {
    "surface": "self-hosted-nim", "model": "cosmos3-generator",
    "container_digest": os.getenv("COSMOS_CONTAINER_DIGEST", "<required>"),
    "model_size": "nano", "precision": "fp8",
    "profile_id": os.getenv("COSMOS_PROFILE_ID", "<required>"),
    "metadata_sha256": os.getenv("COSMOS_METADATA_SHA256", "<required>"),
    "guardrail_manifest_sha256": os.getenv("COSMOS_GUARDRAIL_SHA256", "<required>"),
}
envelope = {"deployment": deployment, "endpoint": "http://127.0.0.1:8000/v1/infer",
            "request": body, "output": str(output), "allowed_generation_calls": 1}
wire = json.dumps(body, sort_keys=True, separators=(",", ":")).encode()
approval_wire = json.dumps(envelope, sort_keys=True, separators=(",", ":")).encode()
digest = hashlib.sha256(approval_wire).hexdigest()
print(json.dumps({"mode": MODE, "approval_sha256": digest, "expected_duration_seconds": 7.875,
                  "approval_envelope": envelope}, indent=2))
if MODE == "dry-run":
    raise SystemExit(0)
if MODE != "execute" or os.getenv("COSMOS_APPROVED_SHA256") != digest:
    raise SystemExit("Exact approval digest is required")
if any(v == "<required>" for v in deployment.values()):
    raise SystemExit("Pin container, profile, metadata, and guardrail identities")
timeout = int(os.getenv("COSMOS_MAX_WALL_SECONDS", "0"))
if timeout < 60:
    raise SystemExit("Set the approved wall-time ceiling")
if output.exists():
    raise SystemExit("Output exists; refusing overwrite")

state_dir = pathlib.Path(os.getenv("COSMOS_STATE_DIR", ".cosmos-state")).resolve()
state_dir.mkdir(parents=True, exist_ok=True)
state = state_dir / f"{digest}.json"
try:
    fd = os.open(state, os.O_WRONLY | os.O_CREAT | os.O_EXCL, 0o600)
except FileExistsError:
    raise SystemExit("Digest already claimed; refusing duplicate inference")
with os.fdopen(fd, "w", encoding="utf-8") as f:
    json.dump({"state": "PREPARED", "approval_sha256": digest}, f); f.flush(); os.fsync(f.fileno())

def replace_state(value):
    temp = state.with_suffix(f".tmp-{os.getpid()}")
    with open(temp, "x", encoding="utf-8") as f:
        json.dump(value, f); f.flush(); os.fsync(f.fileno())
    os.replace(temp, state)

req = urllib.request.Request(envelope["endpoint"], data=wire, method="POST",
    headers={"Content-Type": "application/json", "Accept": "application/json"})
try:
    with urllib.request.urlopen(req, timeout=timeout) as response:
        raw = response.read(512 * 1024 * 1024 + 1)
        if len(raw) > 512 * 1024 * 1024:
            raise RuntimeError("response exceeds 512 MiB")
        result = json.loads(raw)
        if result.get("error"):
            raise RuntimeError("NIM returned an error")
        video = base64.b64decode(result["b64_video"], validate=True)
        if len(video) < 16 or b"ftyp" not in video[:64]:
            raise RuntimeError("response is not an MP4")
except Exception as exc:
    replace_state({"state": "UNKNOWN", "approval_sha256": digest,
                   "error_type": type(exc).__name__})
    raise SystemExit("Outcome UNKNOWN; inspect NIM logs/metrics before any rerun") from exc

output.parent.mkdir(parents=True, exist_ok=True)
temp_output = output.with_suffix(output.suffix + f".tmp-{os.getpid()}")
with open(temp_output, "xb") as f:
    f.write(video); f.flush(); os.fsync(f.fileno())
os.replace(temp_output, output)
replace_state({"state": "RECEIVED", "approval_sha256": digest,
               "output": str(output), "sha256": hashlib.sha256(video).hexdigest(), "bytes": len(video)})
print(json.dumps({"output": str(output), "sha256": hashlib.sha256(video).hexdigest()}))

进入执行模式前,请确认 GET /v1/health/ready,获取 /v1/metadata 和 /v1/version,并对其规范响应进行哈希。此示例有意不提供托管身份验证路径,也不包含重试循环。

生命周期与产物保管

  1. 预先检查权利、许可证、安全性、不可变部署、输入/控制项哈希、输出目标、GPU/时间/云成本上限,以及明确允许的调用次数。模型或精度发生变化时,必须重新审批。
  2. 推理前写入运行台账。同步客户端超时表示未知,并不能证明失败。重新运行前,请检查 NIM 日志、GPU 指标、请求关联信息和输出暂存区。
  3. 流式接收或严格限制 base64 响应大小;解码时启用验证。写入新的临时文件,执行 fsync,然后原子重命名。绝不要覆盖已验收的结果。
  4. 使用 ffprobe,并执行完整解码:ffmpeg -v error -i output.mp4 -f null -。验证容器/编解码器、实际帧数、时长、FPS、尺寸、像素格式、时间戳和音频流。对于 Cosmos3 生成的声音,要求使用 48-kHz 立体声 AAC,并检查同步情况和内容。
  5. 检查各帧区间是否符合提示词/状态要求,并审查物体数量/持久性、接触情况、轨迹、摄像机稳定性、形变、标签/文本、人脸和不安全内容,以及 I2V 首帧保真度。对于 Transfer,计算边缘/深度/分割对齐情况;对于多视角,测量时间一致性和跨摄像机一致性。
  6. 保留源输出、提示词/负面提示词、控制项、种子、修订版本、容器/配置文件/精度、护栏检查结果、GPU/软件信息、输出哈希、质检报告,以及披露/来源记录。不要把经过编辑的片段称为模型原始结果。
  7. 将每条生成的轨迹/世界状态都视为假设。未经独立仿真、真实数据验证、冗余设计和领域安全分析,绝不要将其直接用于机器人、车辆、安全控制器或攸关生命的决策。

许可证、权利、安全与隐私

  • Predict2.5/Transfer2.5: 仓库代码采用 Apache-2.0 许可证;模型权重采用 NVIDIA Open Model License。该模型许可证允许商业用途和衍生模型,不主张 NVIDIA 拥有输出内容的所有权;要求在受其约束的分发、服务和训练用途中保留指定声明/“Built on NVIDIA Cosmos”;纳入了可信 AI 条款;如果绕过其中包含的防护机制,且未设置实质相似、适合相应用例的防护机制,则相关权利将终止。请阅读随附的确切修订版本。
  • Cosmos 3 开源发布: 代码和模型材料采用 OpenMDW-1.1 许可证。分发模型材料时,必须保留许可证及适用的来源/版权声明;该许可证不对输出内容的使用施加任何义务。第三方权利的清理和同意由用户负责。不得类比套用 NVIDIA Open Model License 中的署名/防护机制条款。
  • NIM: 遵守 /opt/nim/LICENSE 和所有组件声明。当前目录卡片所述的模型许可证可能与开源检查点的许可证不同。请存档与确切容器/检查点关联的许可证;切勿根据摘要页面选择许可证。
  • 保留已启用的防护机制。Cosmos 防护阶段包括提示词/阻止列表检查、视频安全过滤和人脸模糊处理。托管的 Cosmos3 Preview 还声称使用 SynthID。Cosmos3 本地仓库提供了禁用防护机制的方式,但技术上可行并不代表已获批准;未经法律/安全审查,且在工件许可证要求时未记录实质相似的保障措施,不得禁用或削弱防护机制。
  • 为每位人物、每段声音、健康/个人数据、商标、受版权保护的素材、模拟器数据集、控制映射和后训练记录取得权利和同意。NVIDIA 模型卡警告,生成的媒体可能既不会模糊人物,也无法保持其身材比例。
  • 禁止非法监控/生物识别、未经同意的私密影像、CSAM、欺骗、骚扰、滥用、欺诈及不安全的实际部署。披露合成媒体及模型的局限;保留 SynthID/水印/来源信息,不得移除。
  • 自托管并不能自动证明没有数据外传:必须检查并通过网络控制首次启动、Hugging Face/NGC 下载、遥测、防护机制、日志接收端和远程控制。已审查的公开模型合同未充分说明托管版 Preview 的隐私、数据保留、训练用途、删除和区域信息;处理敏感数据前,须取得书面条款。

已知未知项与冲突处理政策

  • 未发现适用于所有 Cosmos 系列的公开通用 EOL 时间表。Predict2 已归档;这一事实不能确定 Predict1 或 Predict2.5 的日期。
  • 托管版 Preview 的可用性、端点路由、速率限制、定价、数据保留和区域可能因账户和发布阶段而异。
  • Cosmos3 开源检查点的 VRAM 要求与 Cosmos3 NIM 的 VRAM 矩阵并不相同;16B/64B 完整模型的显存需求不能与 NIM 的 8B/32B Generator 标签混为一谈。
  • 最新 NIM 文档列出了 Cosmos3 Generator GA 和 Predict2.5 NIM,即使较早的介绍/博客文本未提及这些内容或称其“即将推出”。应以确切的当前发行说明、支持矩阵和运行中的 /v1/metadata 为准。
  • NIM 与开源仓库的架构不同。拒绝未知的 NIM 字段,不要将 Framework/vLLM 参数复制到 /v1/infer。
  • 基准测试结果取决于模型、检查点、提示词集、GPU、精度、防护机制和运行时。应将 NVIDIA 的对比视为第一方测量结果,而非普遍排名。
  • 如果模型卡、仓库、NIM 页面和随附许可证之间存在冲突:请停止操作并保留证据;优先依据确切工件随附的许可证/架构及当前发行说明;在分发或用于生产前,向 NVIDIA 取得澄清。

主要来源

评论

支持 Markdown