NitroGen:英伟达联合多所高校开源的通用游戏AI基础模型

原创 发布日期:
71

一、NitroGen是什么

NitroGen是由英伟达联合多所高校开源的通用游戏AI基础模型,核心定位是打造“通杀多类型游戏”的AI智能体,无需针对单款游戏定制训练,仅通过像素级游戏画面输入,就能精准预测并输出游戏手柄动作信号,实现跨游戏的自主游玩。不同于传统游戏AI“一款游戏一套训练方案”的局限,NitroGen以大规模游戏视频-动作数据为支撑,具备极强的跨游戏泛化能力,官方训练数据覆盖40000小时公开游戏视频、1000余款不同类型游戏,既能实现零样本直接上手游玩,也能通过轻量微调快速适配未见过的新游戏,填补了通用游戏AI领域的核心空白。

从技术属性来看,它是一款基于视觉-动作架构的端到端模型,底层依托行为克隆技术训练,适配所有支持手柄操作的商业游戏,且提供完整的开源生态——包含预训练模型权重、游戏交互模拟器、数据处理工具及全流程代码,支持科研与非商业研究场景免费使用,是目前业内规模最大、泛化能力最强的开源通用游戏AI基础模型之一。

NitroGen:英伟达联合多所高校开源的通用游戏AI基础模型

二、功能特色

NitroGen的核心优势集中在“通用适配、高效学习、便捷落地”三大维度,相较于传统游戏AI,其功能特色具备颠覆性,具体可拆解为6大核心亮点,同时通过数据对比直观呈现其优势。

1、跨千款游戏零样本适配,打破“单游定制”局限

这是NitroGen最核心的特色,模型预训练完成后,无需任何针对性微调,就能直接适配1000余款不同类型游戏,无论是2D平台跳跃、3D动作RPG、赛车竞速还是roguelike探索类游戏,均能通过游戏画面自主理解操作逻辑,生成合规手柄动作,解决传统游戏AI换游戏即失灵的痛点。

2、像素输入+手柄输出,端到端无额外特征工程

模型输入仅需原始游戏视频帧(像素级数据),无需提前提取游戏特征、标注游戏规则,输出直接对应Xbox/PS4标准手柄的按键、摇杆动作信号,端到端完成“看画面-做操作”的闭环,大幅降低适配门槛,普通使用者无需掌握复杂游戏开发知识即可落地。

3、轻量微调适配新游,迁移学习效率拉满

面对未见过的新游戏,无需从零训练,仅需少量游戏视频数据(小时级)进行轻量微调,就能快速上手,官方测试显示,其任务成功率相较从零训练的模型最高可提升52%,极大节省训练成本与时间。

4、依托4万小时专家级数据,操作精度贴近人类玩家

训练数据源自公开游戏视频中创作者的“手柄操作叠加层”,官方通过专用分割模型提取这些“专家级”动作标签,且训练前遮挡手柄显示区域避免模型作弊,确保模型学习的是“画面与操作的关联逻辑”,最终输出的操作具备高精度,比如2D平台跳跃中的精准躲避、3D游戏中的连招释放,贴近人类技术流玩家水准。

5、通用模拟器封装,统一所有游戏交互接口

内置Universal Simulator通用模拟器,通过Gymnasium API对任意商业游戏进行封装,无论游戏底层引擎是Unity、Unreal还是自研架构,均能转化为统一的交互接口,支持模型批量训练与评测,同时简化新游戏接入流程,仅需配置游戏可执行文件路径即可对接模型。

6、开源全栈生态,开箱即用且可二次开发

开源内容包含完整预训练模型(ng.pt)、训练脚本、推理服务、游戏代理运行工具,支持Windows系统运行游戏、Linux系统部署推理服务,使用者可直接开箱即用,也能基于现有架构进行二次开发,适配特定研究场景需求。

表1 NitroGen与传统游戏AI核心差异对比

对比维度 NitroGen 传统游戏AI
适配游戏数量 1000+款(零样本) 1-2款(定制训练)
输入输出形式 像素帧输入,手柄动作输出(端到端) 需提取游戏特征,输出定制化指令
新游适配方式 轻量微调(小时级),成功率提升52% 从零训练(天/周级),成本高
交互接口 通用API统一封装,无需适配引擎 针对单游定制接口,适配复杂
开源程度 全栈开源(模型+代码+数据集) 多为闭源或部分开源,生态不完善

三、技术细节

NitroGen的核心技术架构围绕“三大核心组件+一套训练范式”搭建,技术细节清晰易懂,无复杂冗余设计,从底层架构到训练流程均可追溯,具体拆解为核心组件、模型架构、训练流程三部分。

(一)三大核心组件

NitroGen的完整能力依托三大组件协同实现,三者缺一不可,共同构成通用游戏AI的全流程支撑体系。

  1. 多游戏基础智能体(核心模型):这是NitroGen的核心执行单元,本质是统一的视觉-动作模型,负责接收游戏视频帧观测数据,输出标准手柄动作信号。支持零样本跨游戏游玩,同时作为基础模型承接新游戏的微调任务,模型参数规模默认5亿,兼顾性能与部署效率,可在普通显卡上运行推理。

  2. 通用模拟器(交互封装层):核心作用是打通模型与商业游戏的交互通道,通过Gymnasium API标准化所有游戏的输入输出接口。一方面将游戏的画面输出转化为模型可识别的像素帧,另一方面将模型输出的手柄动作转化为游戏可接收的操作指令,同时支持游戏进程管理、画面录制、任务成功率统计,解决不同游戏交互逻辑不统一的问题。

  3. 互联网规模游戏视频-动作数据集(训练基石):这是模型具备通用能力的核心前提,也是业内目前最大的开源游戏数据集之一。数据集核心参数:总时长40000小时,覆盖1000+款游戏;数据来源为带“手柄操作叠加层”的公开游戏视频;数据处理流程为“视频采集→手柄区域检测→动作提取→遮挡手柄→数据筛选”,确保数据质量;数据分布上,动作RPG占比34.9%、平台跳跃类占18.4%、动作冒险类占9.2%,其余覆盖竞速、解谜、roguelike等类型,846款游戏数据时长超1小时,15款游戏超1000小时,保证数据多样性。

(二)核心模型架构

NitroGen的模型架构基于英伟达此前为机器人设计的GR00T N1.5架构优化而来,仅需少量改动即可适配游戏场景,核心采用“视觉编码器+流匹配Transformer”的组合,实现像素到动作的精准映射。

  1. 视觉编码器:默认采用SigLIP模型,核心作用是对输入的游戏像素帧进行特征提取,将高维度像素数据转化为低维度视觉特征向量,保留游戏画面中的关键信息(如角色位置、敌人动向、场景障碍),为后续动作预测提供支撑,兼顾特征提取效率与精度。

  2. 流匹配Transformer(Flow Matching Transformer):这是模型的核心决策单元,采用扩散Transformer(DiT)架构,核心逻辑是通过流匹配技术学习“视觉特征到手柄动作”的映射关系。相较于传统动作预测模型,流匹配Transformer能更好地处理游戏场景中的动态变化(如突发敌人、随机障碍),输出的动作更平滑、精准,同时具备更强的泛化能力,适配不同游戏的操作逻辑差异。

  3. 动作输出层:输出标准化手柄动作,支持Xbox和PS4两种主流手柄类型,涵盖所有核心操作维度——按键按下/松开、左摇杆/右摇杆方向与幅度,动作输出频率与游戏帧率同步,确保操作的实时性,满足游戏对操作响应的要求。

(三)核心训练范式:大规模行为克隆

NitroGen采用行为克隆技术进行端到端训练,这是其能快速学习人类玩家操作逻辑的核心,训练流程无复杂环节,核心分为3步。

  1. 数据预处理:对收集的游戏视频进行帧采样(每段视频采样25帧),通过SIFT与XFeat特征匹配定位手柄区域,提取动作标签后遮挡手柄区域,避免模型依赖手柄显示“作弊”,仅保留游戏画面与动作的对应关系。

  2. 端到端训练:将预处理后的“游戏画面-动作”数据输入模型,视觉编码器提取画面特征,流匹配Transformer学习特征与动作的映射,训练目标是让模型输出的动作尽可能贴近人类玩家的专家动作,实现行为克隆。

  3. 多游戏评测优化:训练过程中依托多游戏基准评测环境,覆盖30个不同复杂度任务、10款商业游戏,从战斗、导航、解谜、跳跃等维度验证模型性能,持续优化模型参数,确保泛化能力。

NitroGen:英伟达联合多所高校开源的通用游戏AI基础模型

四、应用场景

应用场景 核心用途 落地基础要求
通用具身智能科研 探索视觉-动作通用控制能力,迁移至真实场景 掌握基础AI训练知识,具备显卡算力(推理需10G以上显存)
游戏AI泛化研究 跨游戏泛化、迁移学习等方向研究 熟悉Python编程,了解模型微调流程
游戏辅助AI开发 游戏内测、AI队友/对手搭建 具备游戏可执行文件,掌握模拟器对接方法
游戏操作逻辑研究 分析游戏操作映射规律,优化游戏设计 熟悉游戏分类,具备数据统计分析能力

五、使用方法

NitroGen的使用流程分为“环境准备-安装部署-模型下载-推理运行-游戏对接”五大步骤,全程操作简洁,贴合普通使用者需求,同时明确系统与硬件要求,避免踩坑。

(一)前置要求

  1. 系统要求:游戏运行仅支持Windows系统(官方测试环境为Windows 11,Windows 10兼容);模型推理服务支持Windows、Linux双系统,Linux系统更推荐用于纯推理部署。

  2. 软件要求:Python版本≥3.12;需提前安装Git(用于克隆仓库)、pip(用于安装依赖);额外依赖由项目requirements.txt自动管理,无需手动安装。

  3. 硬件要求:推理阶段需显卡显存≥10GB(推荐RTX 3090及以上);微调阶段需显存≥24GB;CPU与内存无严格要求,满足日常开发即可(推荐8核16G及以上)。

  4. 其他要求:需自备目标游戏的可执行文件(.exe格式),仓库不提供任何游戏资源;非商业研究用途,需遵守英伟达许可证要求。

(二)详细安装部署步骤

  1. 克隆仓库并安装核心依赖:打开命令行工具(Windows用CMD或PowerShell),执行以下命令,完成仓库克隆与本地安装,安装过程中会自动下载所需依赖,耐心等待即可。

# 克隆NitroGen仓库
git clone https://github.com/MineDojo/NitroGen.git
# 进入仓库目录
cd NitroGen
# 本地安装(-e表示可编辑模式,支持二次开发)
pip install -e .
  1. 下载预训练模型权重:NitroGen的预训练模型权重托管在HuggingFace,需通过hf命令下载,核心权重文件为ng.pt,执行以下命令即可(若hf命令未安装,先执行pip install huggingface-hub)。

# 下载预训练模型至当前目录
hf download nvidia/NitroGen ng.pt
  1. 验证安装是否成功:执行以下命令,若无报错提示,说明安装成功;若报错,优先检查Python版本与依赖是否安装完整。

# 验证核心模块是否可导入
python -c "from nitrogen import NitroGenAgent; print('安装成功')"

(三)核心使用流程

NitroGen的核心使用分为“启动推理服务器”和“运行游戏代理”两步,需保证两步命令在不同命令行窗口同时运行,且模型权重文件ng.pt路径正确。

  1. 启动模型推理服务器:推理服务器是模型的核心计算单元,负责接收游戏画面并输出手柄动作,执行以下命令,替换<path_to_ng.pt>为实际的ng.pt文件路径(如当前目录直接写ng.pt)。

# 启动推理服务器,默认端口为8080
python scripts/serve.py <path_to_ng.pt>
  1. 运行游戏代理并对接游戏:游戏代理负责打通推理服务器与目标游戏,通过通用模拟器启动游戏并传输数据,执行以下命令,替换

    .exe为目标游戏的可执行文件完整路径。
# 运行游戏代理,对接指定游戏
python scripts/play.py --process '<game_executable_name>.exe'
  1. 额外功能:游戏过程中,代理会自动录制游戏画面与操作数据,保存至本地output文件夹,可用于后续模型微调或效果分析;若需切换手柄类型(默认Xbox),可添加参数--controller ps4,命令如下。

# 切换为PS4手柄类型运行
python scripts/play.py --process '<game_executable_name>.exe' --controller ps4

(四)新游戏微调方法(可选)

若需适配预训练未覆盖的新游戏,可通过少量数据微调,核心步骤如下(无需重新训练整个模型):

  1. 准备新游戏数据:收集1-10小时带手柄操作叠加层的新游戏视频,保存至本地data文件夹。

  2. 数据预处理:执行官方脚本,自动提取动作标签并遮挡手柄区域。

python scripts/preprocess.py --input_dir ./data --output_dir ./finetune_data
  1. 轻量微调:加载预训练模型,用预处理后的数据微调,微调时长根据数据量而定(1小时数据约微调30分钟)。

python scripts/finetune.py --base_model ng.pt --data_dir ./finetune_data --output_model finetuned_ng.pt
  1. 用微调后模型运行:替换推理服务器的模型路径为微调后的finetuned_ng.pt即可。

六、常见问题解答

Q:安装时提示“Python版本过低”,如何解决?

A:NitroGen强制要求Python≥3.12,需先卸载当前低版本Python,从Python官网下载3.12及以上版本安装,安装时勾选“Add Python to PATH”,避免环境变量问题;安装完成后重启命令行,再执行安装命令。

Q:下载模型时提示“权限不足”或“下载失败”,怎么处理?

A:权限不足:Windows系统右键命令行,以管理员身份运行;Linux系统在命令前加sudo。下载失败:大概率是网络问题,可通过科学上网工具优化网络,或手动从HuggingFace官网(nvidia/NitroGen)下载ng.pt,手动放置到仓库根目录。

Q:启动推理服务器时提示“显存不足”,如何解决?

A:推理最低要求10GB显存,若显存不足,可添加--fp16参数启用半精度推理,大幅降低显存占用(约节省50%),命令调整为:python scripts/serve.py ng.pt --fp16;若仍不足,需更换更高显存显卡。

Q:运行play.py后,游戏启动但无任何操作,模型无响应?

A:首先检查推理服务器是否正常运行(命令行无报错,显示“Server running on port 8080”);其次确认游戏是否支持手柄操作(NitroGen仅适配手柄操控游戏,键鼠专属游戏无法适配);最后检查命令中游戏可执行文件路径是否正确,路径需用引号包裹,且后缀为.exe。

Q:游戏运行过程中,模型操作卡顿、精准度低,怎么优化?

A:卡顿问题:关闭游戏多余画质特效,降低游戏分辨率,确保游戏帧率稳定(推荐60帧),避免画面数据传输过载;精准度低:若为预训练覆盖游戏,可重启推理服务器;若为新游戏,需补充少量数据进行轻量微调,提升适配度。

Q:Linux系统能否运行游戏?为什么提示“不支持”?

A:NitroGen的游戏运行模块仅支持Windows系统,因商业游戏大多无Linux版本,且手柄交互适配依赖Windows系统接口;Linux系统仅支持部署推理服务器,可搭配Windows虚拟机运行游戏,实现跨系统协同。

Q:是否支持键鼠操作的游戏?能否自定义操作输出?

A:目前暂不支持纯键鼠操作游戏,仅适配手柄操作游戏;暂不支持自定义操作输出,仅输出标准Xbox/PS4手柄动作,若需适配键鼠,需基于源码二次开发,修改动作输出层逻辑。

Q:使用过程中提示“违反许可证要求”,是什么原因?

A:NitroGen遵循英伟达许可证,仅允许非商业研究用途,禁止用于商业游戏运营、付费服务等场景;若用于商业用途,需联系英伟达获取商业授权,否则会触发许可证校验报错。

七、相关链接

  1. 核心开源仓库(GitHub):https://github.com/MineDojo/NitroGen

  2. 预训练模型仓库(HuggingFace):https://huggingface.co/nvidia/NitroGen

  3. 官方项目主页:https://nitrogen.minedojo.org/

八、总结

NitroGen作为一款开源的通用游戏AI基础模型,以40000小时跨1000款游戏的视频-动作数据集为支撑,依托视觉编码器+流匹配Transformer的核心架构,实现了“像素输入转手柄动作”的端到端能力,核心亮点在于零样本跨游戏适配与轻量微调迁移,打破了传统游戏AI单游定制的局限,同时通过通用模拟器统一了所有商业游戏的交互接口,大幅降低落地门槛,其开源生态包含完整的模型、代码、数据集与工具链,支持非商业研究与科研场景免费使用,既为游戏AI领域提供了标准化的泛化研究基准,也为通用具身智能探索提供了低成本的模拟训练平台,是一款兼顾实用性与研究价值的开源工具,无论是科研人员开展相关方向研究,还是游戏开发者搭建辅助AI,都能基于NitroGen快速落地,无需从零搭建基础架构,极大提升相关工作的效率与效果,同时也为游戏AI从专用化走向通用化奠定了坚实基础,是当前开源通用游戏AI领域的标杆性项目。

打赏
THE END
作者头像
97ai
我不是在训练模型,而是在与未来的自己对话。