“比Sora还震撼”,AI可以实时生成游戏了!
谷歌DeepMind打造出了首个完全AI驱动的实时游戏引擎——GameNGen。
在单个谷歌TPU上,它以每秒20帧模拟起了经典射击类游戏DOOM(毁灭战士)。
所有游戏画面都是根据玩家操作,与复杂环境进行交互,实时生成。
也就是说你走进一道门之前,门后的内容还不存在。
质量不输事先存储的那种,能“以假乱真”,人类评估者都难以察觉。
各种操作都能丝滑转换:
GameNGen的背后是大家熟悉的扩散模型。
从论文题目就重新定义了游戏引擎:扩散模型是实时游戏引擎。
网友们看到这项研究一时间炸开了锅,推特、Reddit上相关帖子热度持续不减,谁发谁火。
不少人表示它提供了一条全新的技术路径:
我觉得人们还没有意识到这有多疯狂。我是一名开发人员,专门负责将生成式AI集成到游戏引擎中,所以我很清楚我在说什么。
这是构建虚拟事物的基础。未来它或许能够普及到它能够获取数据的任何视频游戏,随后,可能还能为尚未存在的游戏生成数据,创造新游戏。
作者Shlomi Fruchter也开麦了:
这对我来说是一个个人里程碑,也是从手工编写在GPU上运行的显式渲染代码到训练同样在GPU上运行的神经网络的完整回环,感觉圆满了。
那么,GameNGen究竟是如何做到的?
GameNGen训练过程分为两个主要阶段。
首先,训练一个强化学习Agent来玩游戏,并记录过程中所有动作、技能和观察数据。这些记录成为第二阶段的训练数据集。
为生成尽可能贴近人类游戏行为的训练数据,研究人员设计了一个简单的、特定于环境的奖励函数,根据一系列特定的游戏情况来分配分数,条件包括:
玩家被击中、敌人被消灭、捡起物品或武器、生命值变化、弹药变化……
在第二阶段,基于预训练的Stable Diffusion v1.4来预测下一帧,模型以过去的帧序列和动作作为条件输入,并进行了一些关键修改。
具体来说,首先移除了所有文本条件,替换为动作序列。每个动作被编码为一个单一的token,通过交叉注意力机制与模型交互。
历史观察(即之前的帧)被编码到潜在空间,并与当前噪声化的潜在表示在通道维度上拼接。
为了解决自回归生成中的误差累积,即自回归漂移问题,GameNGen引入了噪声增强技术。
在训练时,模型对输入的上下文帧添加不同程度的高斯噪声,并将噪声级别作为额外输入提供给模型。这使得模型能够学习纠正之前采样中的错误,对维持长时间序列的图像质量至关重要。
此外,为了提高图像质量,特别是在细节和HUD(平视显示器)方面,研究者对Stable Diffusion的预训练自编码器的解码器部分进行了微调。这个过程使用MSE损失,针对目标帧像素进行优化。
在推理阶段,GameNGen使用DDIM采样方法,并采用了无分类器引导技术,但仅用于过去观察的条件。研究者发现,对过去动作条件使用引导并不能提高质量。
值得注意的是,模型仅使用4步DDIM采样就能产生高质量的结果,这大大提高了生成速度。
GameNGen在TPU-v5硬件上运行,单个去噪器步骤和自编码器评估各需要10毫秒。
通过使用4步采样和单次自编码器评估,系统能够达到每秒20帧的生成速度,足以实现实时交互式游戏体验。
实验中,在短时轨迹上,人类评估者几乎无法区分模拟画面与实际游戏画面。
研究人员使用了两种主要的图像质量评估方法:基于感知的图像相似度度量方法LPIPS和衡量图像质量的常用指标PSNR。
在teacher-forcing设置中,模型单帧预测质量PSNR为29.43,LPIPS为0.249。PSNR的值与20-30质量设置下的有损JPEG压缩相似。
换句话说,GameNGen在模拟图像时能够在一定程度上保持较高的视觉质量,尽管可能存在一些压缩带来的细节损失。
视频质量方面,对于长度为16 帧(0.8 秒)和32帧(1.6 秒)的模拟,FVD分别为114.02、186.23。
在人类评估方面,研究人员为10 名人类评估者提供了130个随机短片段(1.6秒和3.2 秒的长度),并将模拟与真实游戏并排展示。
在1.6秒和3.2秒的片段中,人类仅有58%、60%的概率能正确区分真实游戏和模拟。
除了被效果惊艳到,不少研究者还表示这项研究没有那么简单,它是一种基于扩散模型的最新突破。
动作条件化的世界模型已更进一步!神经网络模拟在扩展实际交互数据方面具有巨大潜力,特别是在物理模拟器表现不佳的领域。
不过,在一片好评声中,也有网友指出,论文很好,但称其为“游戏引擎”不太妥当:
希望他们能说“渲染引擎”而不是“游戏引擎”。
游戏引擎是一个让一群人创造东西的工具,它将继续存在,特别是与任何集成的超级AI共存。显然,今天的游戏引擎已经过时,但我们已经在构建下一代引擎了。
对于一些人评论这些模型将取代传统游戏引擎,也有网友持不同的观点。
一位a16z的游戏和3D技术领域投资人、前Unity员工给出了他的看法:
讽刺的是,训练这些模型需要从传统游戏引擎输入控制器动作和输出帧作为训练数据。
虽然我认为这些由扩散模型实时生成的帧最终会改变我们体验游戏的方式,但我仍然认为专业开发者需要一个3D场景图来进行触感控制和创造性表达。
开发者可能会使用更传统的3D创作引擎创建游戏的“灰盒”版本,然后一个图像到图像的模型实时提升分辨率(类似于英伟达的DLSS技术)。
未来,消费者将能体验从文本直接创造游戏或虚拟世界的全新方式。但在我看来,专业工作流程中仍然会有3D场景图的一席之地。
你怎么看GameNGen这项研究?它会给未来游戏行业带来何种改变?
项目主页:https://gamengen.github.io/
论文链接:https://arxiv.org/pdf/2408.14837
参考链接:
[1]https://www.reddit.com/r/singularity/comments/1f3055r/google_deepmind_we_present_gamengen_the_first/
[2]https://x.com/_akhaliq/status/1828631472632172911
[3]https://x.com/imxiaohu/status/1828732438056755383
— 完 —
文章来源“量子位”,作者“西风”
【开源免费】n8n是一个可以自定义工作流的AI项目,它提供了200个工作节点来帮助用户实现工作流的编排。
项目地址:https://github.com/n8n-io/n8n
在线使用:https://n8n.io/(付费)
【开源免费】DB-GPT是一个AI原生数据应用开发框架,它提供开发多模型管理(SMMF)、Text2SQL效果优化、RAG框架以及优化、Multi-Agents框架协作、AWEL(智能体工作流编排)等多种技术能力,让围绕数据库构建大模型应用更简单、更方便。
项目地址:https://github.com/eosphoros-ai/DB-GPT?tab=readme-ov-file
【开源免费】VectorVein是一个不需要任何编程基础,任何人都能用的AI工作流编辑工具。你可以将复杂的工作分解成多个步骤,并通过VectorVein固定并让AI依次完成。VectorVein是字节coze的平替产品。
项目地址:https://github.com/AndersonBY/vector-vein?tab=readme-ov-file
在线使用:https://vectorvein.ai/(付费)
【开源免费】DeepBI是一款AI原生的数据分析平台。DeepBI充分利用大语言模型的能力来探索、查询、可视化和共享来自任何数据源的数据。用户可以使用DeepBI洞察数据并做出数据驱动的决策。
项目地址:https://github.com/DeepInsight-AI/DeepBI?tab=readme-ov-file
本地安装:https://www.deepbi.com/
【开源免费】airda(Air Data Agent)是面向数据分析的AI智能体,能够理解数据开发和数据分析需求、根据用户需要让数据可视化。
项目地址:https://github.com/hitsz-ids/airda
【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。
项目地址:https://github.com/Significant-Gravitas/AutoGPT
【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。
项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner