Unity ML-Agents 工具包完整安装指南:从 Unity 2022.3 到 Python 训练环境的逐步搭建
2026/9/21 0:01:58 网站建设 项目流程
  • 人工智能
  • 强化学习
  • 深度学习
  • 机器学习
  • 游戏开发
  • AI 应用

【免费下载链接】ml-agents

The Unity Machine Learning Agents Toolkit (ML-Agents) is an open-source project that enables games and simulations to serve as environments for training intelligent agents using deep reinforcement learning and imitation learning.

项目地址:https://gitcode.com/gh_mirrors/ml/ml-agents
点击查看免费下载

ML-Agents(Unity Machine Learning Agents Toolkit)是一个开源项目,它让游戏与仿真环境可以作为深度强化学习与模仿学习智能体的训练场。本指南以仓库内 安装文档 为骨架,完整讲解如何在你自己的机器上从零搭建 ML-Agents 开发环境:安装 Unity 与 Python、克隆仓库、安装com.unity.ml-agentsUnity 包与mlagentsPython 包,并验证mlagents-learn命令行工具可用。读完本文,你将具备运行官方示例环境、训练 Agent 并把训练好的模型部署回 Unity 场景的完整环境基础。

ML-Agents 工具包由哪些组件构成

ML-Agents 工具包并非单个程序,而是一套跨 Unity 与 Python 的协作组件。理解各组件职责,是正确安装的前提:

  • Unity 包(com.unity.ml-agents:Unity C# SDK,集成到你的 Unity 场景中,负责 Agent 的观测采集、动作执行以及与 Python 侧的通信。仓库中对应目录为 com.unity.ml-agents。
  • Python 包mlagents:包含在 Unity 场景中训练行为所需的机器学习算法(PPO、SAC 等训练器)。训练 Agent 时必须安装该包,对应源码位于 ml-agents/mlagents。
  • Python 包mlagents_envs:与 Unity 场景交互的 Python API,是连接 Unity 场景与 Python 机器学习算法的底层数据通信层。mlagents依赖mlagents_envs,因此安装mlagents时会自动带上它,对应源码位于 ml-agents-envs/mlagents_envs。
  • 示例环境(Project目录):包含展示工具包各项功能的示例场景(如 3DBall、FoodCollector、Hallway 等),便于你快速上手。示例环境的玩法说明见 Learning-Environment-Examples。

说明:本文所述安装流程以仓库当前代码为准。仓库内 Python 包基于PyTorch实现(见下文 setup.py 依赖),与早期基于 TensorFlow 的历史文档描述不同,请以本指南为准。

安装前置条件

在安装 ML-Agents 之前,需要先准备好两个基础软件:

  1. Unity 2022.3 或更高版本:官方强烈建议通过 Unity Hub 安装,以便在同一台机器上管理多个 Unity 版本。
  2. Python 3.10.12 或更高版本:从 Python 官网下载安装。Windows 用户请务必选择x86-64版本,不要安装仅标注为 x86 的版本。如果你的 Python 环境缺少pip3,可参照 Python 官方指引补装。

需要特别注意的是版本匹配问题。仓库中 ml-agents/setup.py 声明python_requires=">=3.10.1,<=3.10.12",这意味着 Python 版本被严格限定在 3.10.x 区间;同时 Unity 侧包版本(当前仓库为com.unity.ml-agents4.1.0,见 com.unity.ml-agents/package.json)与 Python 侧mlagents包版本需要配套,安装前请核对发布版本对应关系。

克隆 ML-Agents 仓库(可选但推荐)

安装 Unity 包和 Python 包本身并不强制要求克隆仓库,但如果不克隆,你将无法访问官方示例环境和训练配置文件,且官方入门教程都默认你已克隆。执行:

git clone --branch release_8 <ml-agents 仓库地址>

使用--branch release_8参数会检出最新的稳定发布分支;如果省略该参数,默认克隆的是master分支,其中可能包含尚未稳定的开发内容。

进阶:为开发而进行的本地安装。如果你计划修改或扩展 ML-Agents 工具包,则必须克隆仓库;若计划向项目上游提交贡献,请克隆master分支(即去掉上面的--branch release_8)。贡献相关的规范详见 CONTRIBUTING。

安装com.unity.ml-agentsUnity 包

ML-Agents 的 Unity C# SDK 本身是一个标准 Unity 包,有两种安装方式。

方式一:通过 Package Manager 在线安装

在 Unity 编辑器中打开Window → Package Manager,从注册表中搜索com.unity.ml-agents并安装。如果找不到该包,请记得在Advanced下拉菜单中启用Preview Packages选项——ML-Agents 包可能以预览包形式发布。若启用后仍不可见,则改用下面的本地安装方式。

方式二:从本地磁盘安装(推荐配合示例环境使用)

如果你已克隆仓库(或已将包目录复制到本地),可以按以下步骤从磁盘添加本地包:

  1. 打开菜单Window → Package Manager
  2. 在包管理器窗口点击+按钮;
  3. 选择Add package from disk...
  4. 浏览到com.unity.ml-agents文件夹;
  5. 选择其中的package.json文件。

Unity 会将 ML-Agents 包加入项目。仓库内的示例项目正是采用这种方式引入包的——见 Project/Packages/manifest.json 中的"com.unity.ml-agents": "file:../../com.unity.ml-agents"引用,以及随附的测试包com.unity.ml-agents.tests

安装完成后,如果你想跟着文档中的示例动手实践,可以直接在 Unity 中打开仓库的Project文件夹(其中包含 3DBall 等示例环境),立即开始体验。

安装mlagentsPython 包

mlagents的安装会连带安装一系列它所依赖的 Python 包。如果机器上已经存在这些依赖的旧版本,很可能出现安装冲突。因此,官方支持且推荐的方式是**使用 Python 虚拟环境(Virtual Environment)**来隔离每个项目的依赖,虚拟环境在 macOS、Windows、Linux 上均受支持,详见仓库中的 Using-Virtual-Environment 指南。

创建并激活虚拟环境后,执行:

pip3 install mlagents

官方强烈建议从 PyPI 安装mlagents,而不是从克隆的仓库安装。安装成功后,你可以运行mlagents-learn --help来验证——如果能看到命令行参数列表,说明安装正确,mlagents-learn已可用。

mlagentsPython 包到底装了些什么

通过pip3 install mlagents安装时,ml-agents/setup.py 中install_requires声明的依赖会被一并安装,主要包括:

依赖版本约束作用
mlagents_envsmlagents同版本Unity 场景通信的底层 Python API
torch>=2.1.1,<=2.8.0深度强化学习训练所用的深度学习框架(当前版本基于 PyTorch)
grpcio>=1.11.0,<=1.53.2与 Unity 通信的 gRPC 层
protobuf>=3.6,<3.21通信协议序列化
numpy>=1.23.5,<1.24.0数值计算
huggingface_hub>=0.14模型上传/下载到 Hugging Face
onnx1.15.0ONNX 模型转换(如用于 Sentis 推理)
tensorboardpyyamlh5pyPillow见 setup.py训练日志、配置解析、演示文件与图像处理

此外,setup.py 的 entry_points 注册了多个命令行工具:mlagents-learn(训练入口,对应mlagents.trainers.learn:main)、mlagents-run-experiment(批量实验)、mlagents-push-to-hfmlagents-load-from-hf(Hugging Face 模型上传与下载)。安装完成后这些命令都会进入你的 PATH。

同时,依赖的 ml-agents-envs/setup.py 还会引入gymnasiumpettingzoo,为 Python 侧提供标准 Gym / PettingZoo 风格的环境接口。

进阶:以可编辑模式(editable)本地安装

如果你计划修改mlagentsmlagents_envs的源码,应从克隆的仓库安装而不是从 PyPI 安装。由于mlagents依赖mlagents_envs,两个包必须分开安装,并且顺序不能颠倒——先装mlagents_envs再装mlagents,否则pip会从 PyPI 拉取mlagents_envs,造成版本不匹配。

在仓库根目录执行:

pip3 install -e ./ml-agents-envs pip3 install -e ./ml-agents

-e(editable)标志允许你直接修改 Python 源文件,改动会在下次运行mlagents-learn时立即生效,无需重新安装。安装完成后同样可以用mlagents-learn --help验证。这一流程也适用于参与项目贡献的场景——以可编辑模式安装后,你可以对 ml-agents/mlagents/trainers 下的训练器实现进行调试与修改。

安装后的下一步

环境就绪后,推荐按以下路径继续:

  • 阅读 Getting Started(入门指南),其中包含在 Unity 中配置工具包、运行预训练模型、创建环境与训练 Agent 的多个简短教程——例如在Project中打开 3DBall 场景,然后用mlagents-learn config/ppo/3DBall.yaml --run-id=first3DBallRun启动训练(训练配置文件位于仓库 config/ppo 目录)。
  • 想要了解 Agent 的观测、动作空间与行为参数设计,可参阅 Learning-Environment-Design。
  • 训练配置文件的完整参数说明见 Training-Configuration-File。

遇到问题时怎么办

如果安装或使用中遇到问题,请先查阅仓库中的 FAQ 与 Limitations(限制说明)。仍无法解决时,可以在项目 Issues 区提交问题,并尽可能附上操作系统、Python 版本以及完整的错误信息,这将大大加速问题定位。另外,仓库还提供了 Using-Docker 与 Cloud-Deployment 等进阶部署方案,供需要容器化或云端训练的场景参考。

  • 人工智能
  • 强化学习
  • 深度学习
  • 机器学习
  • 游戏开发
  • AI 应用

【免费下载链接】ml-agents

The Unity Machine Learning Agents Toolkit (ML-Agents) is an open-source project that enables games and simulations to serve as environments for training intelligent agents using deep reinforcement learning and imitation learning.

项目地址:https://gitcode.com/gh_mirrors/ml/ml-agents
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询