ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

世界模型与FlashWorld:从“在梦中学习“到秒级3D场景生成

世界模型与FlashWorld:从“在梦中学习“到秒级3D场景生成 1. 世界模型1.1 什么是世界模型世界模型是一种交互式预测模型在动作的条件下模拟时空环境。与大语言模型LLM预测句子中的下一个词不同世界模型预测的是下一个状态——即当前状态在接收到控制输入后的即时未来。用更简洁的表述LLM学习语言的结构世界模型学习因果的结构。这个定义中最关键的词是动作。标准视频模型基于概率预测下一帧P ( x t 1 ∣ x t ) P(x_{t1} | x_t)P(xt1​∣xt​)而世界模型基于干预预测下一个状态P ( s t 1 ∣ s t , a t ) P(s_{t1} | s_t, a_t)P(st1​∣st​,at​)。那个a t a_tat​t时刻的动作是区分世界模型与视频生成模型的分界线。视频模型像一个你只能旁观的梦世界模型则像清醒梦lucid dream——你可以在其中采取行动并观察后果。想象接球时发生了什么。你的眼睛接收一个场景投球者的手臂、飞行中的球、风、刺眼的阳光。从这些感官数据的洪流中你的大脑构建了一个关于正在发生什么的压缩模型关键是还有即将发生什么的模型。它预测球在未来几百毫秒内的轨迹然后向你的手发送一个运动指令。你接住了球。整个循环——观察、预测、行动——在不到一秒的时间内完成不涉及任何语言或思考。世界模型在计算上做的正是同样的事情。1.2 为什么语言和代码不够2026年3月科技博客Not Boring的作者Packy McCormick与General Intuition CEO Pim De Witte联合发表了一篇约两万英文字的长文World Models: Computing the Uncomputable其中有一个生动的思想实验试着仅用文字描述拍手这个动作——双手在空间中的位置、以皮秒为单位的变化、接触点、声音、手掌如何挤压对方、两掌之间的空气发生了什么。你做不到。语言是对现实一种极度有损的压缩。代码呢代码是一种非常精确的语言但要编写一个能描述曼联比赛中数千名球迷行为的模拟程序在传统计算中至少是一个O ( N 2 ) O(N^2)O(N2)的问题。每个人、每面旗帜、每把椅子、每个球都必须被显式计算而且它们之间的交互也需要计算。世界模型绕过了这个问题。它将那些动态的、在计算上难以大规模模拟的情况压缩成神经网络中的一次固定成本操作。整个体育场作为一次固定成本的前向传播被模拟出来。场景的复杂度不会让引擎在推理时指数级地慢下来因为世界的模式已经在训练阶段被吸收进了权重。赫尔曼·黑塞在1946年获诺贝尔文学奖的小说《玻璃球游戏》中描绘了一个致力于纯粹思想的知识乌托邦卡斯塔利亚。主角约瑟夫·克内希特最终选择离开这个完美的符号世界走向混乱的、具身的、不可预测的现实。McCormick在文中写道“大语言模型就是我们的卡斯塔利亚人。它们是符号的精湛操弄者但完全运作在表征的领域。它们能描述拍手但不能拍手。”1.3 动作终极压缩形式世界模型背后的一个关键洞察是动作是终极压缩形式。考虑当你决定向左迈步避开水坑时发生了什么。你的大脑处理了视觉场景人行道、水坑、周围的人、路缘、驶来的公交车预测了即时未来评估了选项然后选择了一个。一个外部观察者看不到你脑袋里面的东西不知道你到底在想什么。他们不需要知道。他们看到所有那些近乎瞬时计算的输出向左迈步。对计算机而言动作是绕过模拟成本的作弊码。如果人类大脑比最好的LLM效率高得多那么我们可以通过观察人类如何回应环境中无数变量来几乎免费获得所有那些计算。每一个动作携带了足够的信息来预测接下来会发生什么直到下一个动作更新画面。在传统模拟引擎中每一种可能的行为都必须被编码。如果你想让一千个球迷对进球做出逼真反应你需要为每种类型的反应写规则。计算成本随着Agent数量和交互复杂度扩展。在世界模型中成本固定为一次神经网络传播。随机的、混乱的、人类的现实已经被烘烤进了学习到的权重中。1.4 世界模型简史四个浪潮世界模型的历史可以追溯到1990年。于尔根·施密德胡伯LSTM之父发表了《让世界可微分》提出构建一个循环神经网络赋予它两个任务学习预测模拟世界中接下来会发生什么以及用这个模拟世界来训练一个Agent在其中行动。第二年Richard Sutton在《Dyna》中主张学习、规划和反应应该统一在一个单一架构中。但在1990年全世界的计算能力大约是今天的百万亿分之一。这两篇论文在当时几乎就是科幻。第一浪潮2018-2019“这真的能行吗”2018年3月David Ha和Schmidhuber发表了题为《世界模型》的论文问了一个问题Agent能在自己的梦中学习吗他们构建了一个有三个组件的系统视觉模型V将原始像素压缩成紧凑表示记忆模型M学习预测接下来会发生什么控制器C决定做什么。他们让Agent完全在世界模型幻想出的梦境中练习然后将学到的策略迁移回实际环境。它成功了。同期SimPLe算法在Atari 100k基准上证明仅用10万步真实环境步骤大约两小时的游戏时间就能学会玩26个Atari游戏。第二浪潮2020-2022“世界模型能达到人类水平吗”Danijar Hafner在Google DeepMind开发的DreamerV2成为第一个在55个游戏的Atari基准上达到人类水平的世界模型Agent完全在想象中训练在单块GPU上。同年MuZero在《Nature》上发表。它采用了几乎完全相反的哲学方法——从未生成任何可观察的东西完全在自己发明的抽象潜在表征中规划。MuZero纯粹通过观察和结果从零开始学习了包括规则、游戏动态和价值函数在内的一切在Go、国际象棋和将棋上匹配了AlphaZero同时还泛化到了57个Atari游戏。MuZero的成功意味着该领域出现了两个对立的思想流派生成式世界模型产生可观察的未来和潜在世界模型在抽象空间中预测。2022年Yann LeCun发表了《通向自主机器智能的路径》提出了JEPA联合嵌入预测架构反对完全生成像素主张预测未来状态的抽象表征刻意丢弃不可预测的视觉细节。同年IRIS将世界建模重新定义为在图像token学习词汇上的语言建模把LLM的扩展特性直接带入了世界建模。IRIS是第一个在与人类相同的可用游戏数据量下、通过想象学习方法超过人类的模型。第三浪潮2023-2024“世界模型能真正实现交互吗”GAIA-12023年在Wayve开发将序列建模方法扩展到90亿参数并在真实世界驾驶视频上训练确认了LLM中观察到的扩展定律也适用于视觉世界模型。DIAMOND2024年使用扩散模型直接预测未来帧视觉保真度有了实质性提升而这种丰富度直接转化为更好的Agent表现。DIAMOND在反恐精英游戏数据上训练从大约87小时的素材、在单块GPU上产生了一个完全交互的、可玩的神经游戏引擎。Google DeepMind的Genie2024年是一个110亿参数的模型在未标注的2D平台游戏互联网视频上训练完全从零学习了一个动作空间。第四浪潮2025-2026“模型能在真实世界中行动吗”Comma.ai完全在学习到的世界模型内部训练了一个驾驶策略并将其部署在openpilot中——这可以说是第一个由世界模型训练的Agent驱动的消费产品。Meta的V-JEPA 2在超过一百万小时的视频上通过自监督掩码预测进行预训练仅在62小时机器人数据上微调就在新环境中零样本部署在真实的Franka机械臂上执行取放任务。GAIA-22025年3月将扩散方法推向了多摄像头自动驾驶模拟可以再现真实驾驶的全部复杂性。1.5 当前格局三条技术路线的竞争当前世界模型领域存在三条主要技术路线它们从不同方向逼近同一个目标——产生能泛化并在各种环境中做事的Agent。潜在世界模型Latent World Models以Yann LeCun的JEPA为代表。不预测像素而是在抽象的压缩空间中做预测刻意丢弃不可预测的视觉细节。优势是计算效率高、规划速度快。劣势是更难评估你不能看着输出直观判断它是否合理、迭代速度慢、存在表征坍缩问题。AMI Labs拿着10.3亿美元赌这条路线。生成式世界模型Generative World Models产生人类可观察的、交互式的未来。优势是可解释性强、泛化能力好理论上捕获了所有视觉信息。劣势是计算成本高。General Intuition、Wayve、Decart、Runway都在这条路线上。Google DeepMind的Genie 3也属于此类。VLA视觉-语言-动作模型以Physical Intelligence为代表。取一个理解场景的VLM加上一个动作头将人类语言指令翻译成机器人指令。优势是可以复用LLM的巨大基础设施和数据。劣势是物理动作不能干净地映射到token分布外泛化较差。Physical Intelligence以56亿美元估值融资6亿美元Skild也在这条路线上。这三条路线并非完全对立。正如McCormick所写“我个人不认为VLA和世界模型真的在竞争。它们试图从不同方向达到在物理世界中行动。VLA是语言优先的世界模型是视频-动作优先的。两者可能会趋同。”1.6 FlashWorld在世界模型版图中的位置在这个宏大的图景中FlashWorld扮演着一个特殊而关键的角色高效的3D资产生成器。世界模型需要大量的3D交互数据来训练。GWMGaussian World Models论文展示了如何将3D高斯表示深度嵌入到动力学学习的循环中但它需要大量的3D场景数据。FlashWorld可以在几秒钟内从文本或图像生成多样化的3D场景为世界模型提供近乎无限的训练环境。这种组合指向了一个更宏大的愿景Real-to-Sim-to-Real闭环。机器人拍摄真实环境图片FlashWorld将其扩展为完整的3D场景世界模型在重建的场景中学习动力学并训练策略最终将策略部署回真实世界。2. FlashWorld技术深度解析2.1 问题定义3D生成的不可能三角在FlashWorld出现之前3D场景生成领域长期面临一个根本性的矛盾。现有方法大致分为两条路线多视角MV导向的扩散方法和3D导向的直接生成方法。前者能够生成画质极高的多视角图像但各视角之间缺乏几何一致性因为它们本质上是独立生成的二维图像后者直接输出3D高斯表示3D Gaussian Splatting, 3DGS天然保证了几何一致性但生成的画面往往模糊、细节不足。更关键的问题在于速度。以CAT3D为代表的高质量方法需要77分钟才能完成一次生成Director3D需要7分钟即便是相对快速的Prometheus也需要15秒。这样的速度在实际应用中几乎不可接受——无论是游戏资产的批量生产、机器人仿真环境的快速构建还是AR/VR内容的实时创作都需要秒级的响应。FlashWorld同时解决了这三个维度的问题速度A100上7秒H100上4秒、画质T3Bench IQA评分4.12远超Director3D的3.24、以及3D一致性。对应的代码在Github上。图1FlashWorld整体架构。左侧为双模态预训练阶段右侧为跨模态后训练阶段。2.2 核心方法双模态预训练 跨模态蒸馏FlashWorld的方法论可以用一句话概括先让同一个模型同时学会两种生成模式再让高质量的模式教一致性好的模式。双模态预训练Dual-mode Pre-training在预训练阶段FlashWorld构建了一个基于DiTDiffusion Transformer的统一骨干网络同时支持两种工作模式MV导向模式接收带噪声的多视角图像潜在表示通过DiT Blocks进行去噪直接输出去噪后的多视角潜在表示再由VAE解码器还原为像素级图像。优化目标是多视角重建损失L M V \mathcal{L}_{MV}LMV​关注每个视角图像的视觉质量。3D导向模式同样接收带噪声的输入但在DiT Blocks输出之后额外经过一个3DGS解码器将特征转换为3D高斯参数位置、颜色、不透明度、尺度和旋转然后通过可微分渲染器从新视角渲染出图像。优化目标是3D一致性损失L 3 D \mathcal{L}_{3D}L3D​确保从任意视角渲染的结果在几何上是自洽的。图2FlashWorld双模态预训练架构。左侧为MV导向模式右侧为3D导向模式。关键设计在于这两种模式共享同一个DiT骨干网络的权重。模型在预训练阶段就同时学到了如何生成高质量图像和如何保持3D一致性两种能力。跨模态后训练Cross-mode Post-training预训练完成后3D导向模式的视觉质量仍然不如MV导向模式。FlashWorld引入了跨模态蒸馏技术来弥合这一差距冻结MV导向模式作为教师让3D导向模式作为学生进行学习。蒸馏的核心机制基于DMDDistribution Matching Distillation损失。图3不同3D场景生成方法的对比。FlashWorld在速度和质量上均取得显著优势。直观理解教师告诉学生从这个视角看图像应该长什么样学生在保持自身3D一致性的前提下学习生成与教师同等质量的渲染结果。此外后训练阶段还引入了OODOut-of-DistributionCo-training策略混入大量单张图片和文本Prompt配合随机采样的相机轨迹极大提升了模型在开放世界场景下的泛化能力。图4Flashworld 去噪流程。模型仅在4个关键步骤进行去噪即可生成高质量的3D场景。3. 代码实现深度解析FlashWorld的开源代码仓库结构清晰核心文件包括app.py推理系统与Web服务、cli.py命令行批量生成、models/模型定义、utils.py工具函数、quant.pyFP8量化加速。以下逐一拆解关键实现。3.1 GenerationSystem推理流水线的核心app.py中的GenerationSystem类是整个推理流程的入口。它的初始化过程揭示了FlashWorld的模型组成classGenerationSystem(nn.Module):def__init__(self,ckpt_pathNone,devicecuda:0,...):self.latent_dim48# 潜在空间通道数self.temporal_downsample_factor4self.spatial_downsample_factor16# 480x704 - 30x44self.feat_dim1024# 3D特征维度self.denoising_steps[0,250,500,750]# 仅4步去噪model_idWan-AI/Wan2.2-TI2V-5B-Diffusers# VAE编码器将图像压缩到潜在空间self.vaeAutoencoderKLWan.from_pretrained(model_id,subfoldervae)# 文本编码器UMT5处理文本提示self.text_encoderUMT5EncoderModel.from_pretrained(model_id,subfoldertext_encoder)# DiT骨干基于Wan2.2的5B参数Transformerself.transformerWanTransformer3DModel.from_pretrained(model_id,subfoldertransformer)# 3DGS重建解码器将特征转换为高斯参数self.recon_decoderWANDecoderPixelAligned3DGSReconstructionModel(self.vae,self.feat_dim,...)几个值得注意的设计细节。FlashWorld基于万象Wan2.2的5B参数视频扩散模型构建这是一个已经在大规模视频数据上预训练过的模型。latent_dim48表示潜在空间的通道数spatial_downsample_factor16意味着480x704的输入图像在潜在空间中被压缩为30x44的特征图。denoising_steps [0, 250, 500, 750]定义了仅4步的去噪调度——传统扩散模型通常需要20-50步去噪FlashWorld通过跨模态蒸馏将步数压缩到4步这是其速度优势的关键来源之一。3.2 反馈机制迭代精化的秘密FlashWorld的推理过程并非简单的单次前向传播而是包含一个精巧的反馈循环。在generate方法中foriinrange(len(self.denoising_steps)):t_idstorch.full((noisy_latents.shape[0],),self.denoising_steps[i],deviceself.device)tself.timesteps[t_ids]ifself.use_feedback:# 将上一步的预测结果作为额外条件输入_condition_latentstorch.cat([condition_latents,prev_feats,prev_latents_pred],dim1)ifilen(self.denoising_steps)-1:outself.forward_generator(noisy_latents,raymaps,_condition_latents,t,text_embeds,cameras,cameras,image_height,image_width,need_3d_modeTrue)latents_predout[3d]# 使用3D模式的预测ifself.use_feedback:prev_latents_predlatents_pred prev_featsout[feat]# 在预测结果上重新加噪进入下一步noisy_latentsself.scheduler.scale_noise(latents_pred,self.timesteps[...self.denoising_steps[i1]...],torch.randn_like(noise))else:# 最后一步直接输出3DGS参数跳过渲染和重编码...这段代码展示了FlashWorld的核心推理逻辑在每一步去噪中模型不仅输出当前步的预测结果还将上一步的预测潜在表示prev_latents_pred和特征prev_feats作为额外条件输入到下一步。这种反馈机制使得后续步骤能够在前一步的基础上进行精化而不是从零开始预测。…详情请参照古月居
返回列表