Hy-Nomas:腾讯混元开源的自由交互世界生成模型 · 干货攻略
- 链接: https://x.com/_akhaliq/status/2115563792180588875
- 分类: x-tips
- 来源: X @_akhaliq(Akhalq,AI 资讯搬运型账号)
- 作者: Jay
- 更新: 2026-10-29
- 仓库: https://github.com/Tencent-Hunyuan/Hy-Nomas (Apache-2.0)
- 权重: https://huggingface.co/tencent/Hy-Nomas
- 技术报告: https://arxiv.org/abs/2610.36729
- 官方 Demo: https://hy-nomas.hy.tencent.com/demo
- 原帖指向的 Space: https://huggingface.co/spaces/tencent/hy-nomas
这是什么
@_akhaliq 于 2026-10-28 转推腾讯混元(Tencent Hunyuan)开源的 Hy-Nomas——一个「视频世界模型」(video world model),并给出两个链接:论文(t.co/by82MMznL9 → Hugging Face papers 页面)和在线应用(t.co/clt7ItswBD → huggingface.co/spaces/tencent/hy-nomas)。
它和普通「文生视频」的区别是:不是一次生成一段固定短片,而是让用户在一个持续生成中的世界里多轮交互。每一轮用户都可以用自由文本下指令(换物体、换风格、换场景、描述动作),或者用相机轨迹控制视角;模型用持久 KV cache 携带此前生成的历史,保证跨轮次的一致性。
按官方模型卡(tencent/Hy-Nomas README)的定义,核心组件为:
- Segment-autoregressive DiT:分段的稠密多模态扩散 Transformer,推理配置为 54 个双流 MMDiT block,hidden size 2048,16 头 / 每头 128 维,FFN 4×(中间层 8192),latent 通道 32 进 32 出。
- 文本编码器:取自
Qwen/Qwen2.5-VL-7B-Instruct的语言模型部分,3584 维隐状态经两层 token refiner 投影到 DiT 的 2048 维空间。 - 相机条件:
extrinsics_attn路径,归一化 4×4 外参矩阵按 4 帧一组展平为 64 维输入,在每个双流 block 内通过 cross-attention 注入视频流。 - 视频解码器:微调后的 PixelUMM(36 层、4096 隐维、32 query 头 / 8 KV 头,RGB 按 4×16×16 tubelet 处理),把 DCAE-V
f32t4c32latent 解码成画面。 - Prompt Enhancer(PE):
Nomas-PE,在线 prompt 增强服务,把用户的自由指令翻成结构化生成 prompt(离线推理可直接读预写好的 prompt 文件,不依赖它)。
论文 arXiv:2610.36729(2026-10-27 上线)的核心方法描述是:把结构化视频字幕与动作感知的因果注意力对齐——描述性上下文(谁、在哪、什么风格)跨段持续可查,而动作指令被限制在其指定的时间窗内生效;训练用多阶段课程(先因果生成,再文本交互,再相机控制,再在模型自己生成的历史上训练),最后做扩散蒸馏。
核验来源
本文所有数字、命令、版本均取自以下官方出处(未使用二手推文数字):
- arXiv 技术报告 — https://arxiv.org/abs/2610.36729 (HTML: https://arxiv.org/html/2610.36729 )
- 官方 GitHub 仓库 README — https://raw.githubusercontent.com/Tencent-Hunyuan/Hy-Nomas/main/README.md
- 官方 Hugging Face 模型卡 — https://huggingface.co/tencent/Hy-Nomas/raw/main/README.md
- 官方评测集 Hy-Nomas-Bench — https://huggingface.co/datasets/tencent/Hy-Nomas-Bench
关键官方事实:
- 输出规格:720×1280 @ 24 FPS;DiT 去噪 8 步(Euler ODE 采样);文本/相机 CFG 均为 1.0;随机种子默认 42;相机平移/旋转强度默认 1.0 / 2.5。
- 标准推理需要 8 卡:
configs/experiment/inference.yaml默认sp_size=8(8 路序列并行)+ 分布式 PixelUMM 解码。 - 单卡方案:官方提供
configs/experiment/single_gpu_low_mem_inference.yaml,可在单张 NVIDIA GeForce RTX 4090 上跑,靠 INT8 DiT 权重、INT8 KV cache、FP8 解码器、滑窗历史(默认 18 个 latent frame 预算)、CPU offload、FlexAttention + CUTLASS FP8 实现。 - 环境:官方强烈推荐预打包 Docker 镜像
hynomasoss/hynomasoss:cu130;手动安装需 Linux、Python 3.12+、uv、CUDA 13.0 Toolkit(nvcc)、C++ 编译器,allextra 含 PyTorch 2.10.0 (CUDA 13.0)、FlashAttention 2/3、MagiAttention。 - 评测集规模:Hy-Nomas-Bench 共 280 个 test case、220 条参考相机轨迹,四个 split 覆盖多轮自由文本交互、相机导航、文本+相机混合控制、空间记忆;数据集包含结构化 prompt、交互序列、键盘时间线与参考轨迹,但不含生成视频、抽帧与评分。
- 许可:仓库代码 Apache-2.0;官方对整体发布的表述是「开放权重 + 开源实现」,而非单一许可证完全自包含的包。
上手步骤
路线 A:先玩在线 Demo(零成本)
直接打开官方 Demo:https://hy-nomas.hy.tencent.com/demo 。输入一段世界描述开始生成,之后用文本指令继续改变世界,或用键盘方向键 / WASD 做相机移动。
原帖给的那个 Space(https://huggingface.co/spaces/tencent/hy-nomas )是社区在 HF 上的托管入口,页面本身信息很少;腾讯官方主入口仍是上面那个 hy-nomas.hy.tencent.com/demo。
路线 B:本地跑(Docker,推荐)
git clone https://github.com/Tencent-Hunyuan/Hy-Nomas.git
cd Hy-Nomas
# 官方推荐:预置环境的 Docker 镜像
export HY_NOMAS_IMAGE="hynomasoss/hynomasoss:cu130"
docker pull "$HY_NOMAS_IMAGE"
docker run --rm -it --gpus all --ipc=host --network=host \
-v "$PWD:/workspace/Hy-Nomas" \
-w /workspace/Hy-Nomas \
"$HY_NOMAS_IMAGE" bash
手动安装则需要 Linux、Python 3.12+、uv、兼容的 NVIDIA 驱动、CUDA 13.0 Toolkit(nvcc)、C++ 编译器:
uv sync --extra all
source .venv/bin/activate
(all extra 含 PyTorch 2.10.0 + CUDA 13.0、FlashAttention 2、FlashAttention 3、MagiAttention;官方明确提示 attention kernel 编译耗时较长。)
下载权重
export HY_NOMAS_MODEL_DIR="/path/to/Hy-Nomas-models"
hf download tencent/Hy-Nomas --local-dir "${HY_NOMAS_MODEL_DIR}"
必须保持仓库目录结构(DiT/、VAE/、PE/)。关键资产:
DiT/distilled/diffusion_pytorch_model_ema_0_995.safetensors— 蒸馏 DiT(FP32),8 步推理 / Demo 主力,也是合并 LoRA 的基底。DiT/distilled_int8/diffusion_pytorch_model_ema_0_995_int8.safetensors— INT8 量化版,供单卡低显存配置。DiT/base_ar/diffusion_pytorch_model_fp32.safetensors— 非蒸馏基座,用于 segment forcing 式 LoRA 训练。VAE/PixelUMM_FT/diffusion_pytorch_model.safetensors— 蒸馏 FP32 解码器;VAE/PixelUMM_FT_FP8/diffusion_pytorch_model_fp8.safetensors— FP8 版(单卡配置用)。VAE/DCAE-V/dc-ae-v-1.0-f32t4c32-bf16.pt— 视频自编码器。PE/— Nomas-PE 在线 prompt 增强服务(Demo 必需,离线推理不依赖)。- LoRA 适配器:
DiT/lora_weights/cinematic(画质)、DiT/lora_weights/dual_arm_robotics(基于 RealSource-World 机械臂数据集,增强机器人仿真能力)。
文本编码器 Qwen/Qwen2.5-VL-7B-Instruct 由 HuggingFace 自动下载并复用本地缓存;已有本地副本可加 model.text_encoder.model_name=/path/to/Qwen2.5-VL-7B-Instruct。
标准推理(8 卡)
bash scripts/inference/inference_from_config.sh configs/experiment/inference.yaml \
dit_weight="$HY_NOMAS_MODEL_DIR/DiT/distilled/diffusion_pytorch_model_ema_0_995.safetensors" \
model.vae.checkpoint="$HY_NOMAS_MODEL_DIR/VAE/PixelUMM_FT/diffusion_pytorch_model.safetensors" \
inference.prompt="$HY_NOMAS_MODEL_DIR/examples/prompts.json" \
inference.save_path=./outputs/distill
常用覆盖项:inference.video_size=[480,832](降分辨率)、inference.infer_steps_video=8、inference.solver_type=euler、inference.cfg_scale_video=1.0、inference.camera_cfg_scale=1.0、inference.seed=42;相机控制追加 inference.camera_trajectory=/path/to/camera.npz(该 .npz 内含 c2ws [N,4,4] 与 intrinsics [N,3,3])。
单卡 4090 低显存推理
bash scripts/inference/inference_from_config.sh configs/experiment/single_gpu_low_mem_inference.yaml \
dit_weight="$HY_NOMAS_MODEL_DIR/DiT/distilled_int8/diffusion_pytorch_model_ema_0_995_int8.safetensors" \
model.vae.checkpoint="$HY_NOMAS_MODEL_DIR/VAE/PixelUMM_FT_FP8/diffusion_pytorch_model_fp8.safetensors" \
inference.prompt="$HY_NOMAS_MODEL_DIR/examples/prompts.json" \
inference.save_path=./outputs/single_gpu
Diffusers 路线(最省事的多轮编程接口)
pip install -e "diffusers[hy-nomas] @ git+https://github.com/jiaxiangc/diffusers.git@hy-nomas"
from diffusers import HyNomasModularPipeline
pipe = HyNomasModularPipeline.from_pretrained("tencent/Hy-Nomas-Diffusers")
pipe.load_components(dtype=torch.bfloat16)
pipe.to(device="cuda", dtype=torch.bfloat16)
pipe.transformer.enable_reference_attention(text_backend="flash_varlen", deterministic=True)
videos = pipe(
prompt=[json.dumps(p) for p in prompts], # 每轮一个结构化 prompt
height=704, width=1280, num_frames=240,
segment_latent_lengths=[30, 30], fps=24,
num_inference_steps=4, generator=torch.Generator("cpu").manual_seed(42),
output="videos",
)
离线 prompt JSON 格式
一个 request 可含多个 segments;segments 与 contained_actions 的 start_time / end_time 使用 MM:SS.mmm 格式。第一段用 visual_description_long 描述初始世界,后续段用 description_change 描述演化:
[
{
"test_id": "forest_world",
"Style": "Cinematic fantasy",
"perspective_view": "Third-person view",
"subject_list": [
{"subject_id": "fox", "display_name": "a small orange fox",
"subject_attribute": "Orange fur, white chest, and a fluffy tail."}
],
"segments": [
{
"start_time": "00:00.000", "end_time": "00:05.000",
"visual_description_long": "A small orange fox stands on a stone path in a luminous forest. Blue fireflies drift between the trees.",
"contained_actions": [
{"start_time": "00:00.000", "end_time": "00:05.000",
"action_description": "The fox walks slowly along the path."}
]
},
{
"start_time": "00:05.000", "end_time": "00:10.000",
"description_change": "Glowing blue flowers open beside the path as the fox continues forward.",
"contained_actions": [
{"start_time": "00:05.000", "end_time": "00:10.000",
"action_description": "The fox passes the flowers and looks around."}
]
}
]
}
]
适用边界
- 一致性不是保证。持久 KV cache 只提供「历史可寻址」,不等于稳定的 3D 场景图;物体在复杂相机运动或长序列编辑后仍可能外观漂移、消失或前后不一致。这是世界模型当前的共性局限,不是本仓库的 bug。
- 长序列误差会累积。每个生成段都会成为下一段的证据,小误差会放大成外观漂移、动作不 plausible、场景崩坏。论文用「在模型自己生成的历史上训练」来缓解,但不能根除。
- 显存门槛是真实约束。标准配置需要 8 卡一组;单卡 4090 路线靠 INT8 权重 + INT8 KV cache + FP8 解码 + CPU offload + 18 latent frame 滑窗历史换来的,官方明确提示:CPU offload 需要足够系统内存且带来 CPU–GPU 传输开销,峰值显存仍取决于分辨率与段长。
- INT8 loader 限制:官方注明,INT8 加载路径在推理时不支持再额外挂载独立的 LoRA adapter(LoRA 需先合并进浮点 DiT)。
- Diffusers 管线是社区 fork:
pip install指向github.com/jiaxiangc/diffusers.git@hy-nomas分支,而权重仓库是tencent/Hy-Nomas-Diffusers;它不在官方主仓库的发布承诺内,升级前请自行验证。 - 评测数据的边界:Hy-Nomas-Bench 只发布 280 个 case 的 prompt / 交互序列 / 键盘时间线 / 220 条参考相机轨迹,不含生成视频、参考抽帧和评分,因此不能直接拿它做端到端打分,需要自己跑推理再评估。
- 社区集成不等于官方支持:README 中列出的 SGLang、ComfyUI、WanGP、Reactor Runtime、TPU demo 均为社区贡献,官方只提供指向链接;生产使用请自行核验。
不确定处
- 原帖正文极简,仅给出标题、paper、app 三个链接,没有任何参数、版本或性能数字;本文所有技术细节均来自上述官方仓库与论文,未从原帖推断,也未混入其他推文的数字。
- 论文中的人评「优于现有世界模型」为相对结论,未给出可复现的绝对分数数字;本指南因此没有引用任何具体评测分数。
- HF Space
tencent/hy-nomas的实际运行模型与排队策略,页面未公开说明;不确定它与官方 Demo 是否完全一致。 - 官方 GitHub README 与 HF 模型卡在部分细节表述上略有差异(例如去噪步数写作「4–8 步」与默认 8 步),文中已按各自来源分别标注,未做统一。
本文所有命令、路径与参数均逐条对照官方 README / 模型卡;如官方仓库后续更新,以官方为准。