前言:Unity ML-Agents环境配置与寻路Demo实战解析(Mac环境适配版)
1.AI产品经理的技术同理心从何而来?
在智能NPC落地的全流程中,产品经理最常面临的困境是:
"如何判断一个需求是技术亮点,还是开发深坑?"
当策划提出"NPC应动态适应玩家行为"时,若缺乏对技术实现的理解,可能会出现两种极端:
-
过度乐观:认为"AI无所不能",要求开发团队3周内上线强化学习驱动的NPC生态;
-
过度保守:因惧怕技术风险,将方案退化为"预设对话树+随机行为库",错失创新机会。
解决这一矛盾的关键,在于建立技术同理心------即通过实践验证,理解AI技术的可行性边界与落地成本。
本文复现的"自主寻路NPC"Demo,正是这一能力的具象化体现:
2.产品经理是否需要亲手搭建环境?
-
需求可行性验证:
- 通过Unity ML-Agents训练基础寻路模型,可快速评估"动态路径规划"功能的算力消耗与训练耗时,避免在PRD中承诺不切实际的性能指标。
-
开发资源评估:
- 从Python环境配置到模型参数调优的全流程实操,能精准识别团队技术栈的适配性(例如判断是否需要引入专职AI工程师)。
-
用户体验预判:
- 当NPC因训练不足频繁卡在障碍物旁时,会更直观地理解:玩家期待的"智能"背后,是数据质量、模型结构与奖励函数的精密平衡。
3.技术文档的产品价值
本文虽聚焦于环境配置与Demo实现,但本质上在回答一个问题:
- "当产品经理提出AI需求时,如何用技术语言证明其合理性?"
在后续的技术指南中,你将看到:
-
最小化验证路径:如何用最低成本(无需高端设备)跑通训练全流程;
-
风险预埋点识别:从版本依赖到算力瓶颈的避坑清单;
-
需求转化框架:将Demo中的"寻路逻辑"抽象为可复用的产品功能模块。
4.从Demo到产品的思维跃迁
作为AI产品经理,我的目标不是成为开发者,而是构建技术与需求的对话桥梁。
-
当工程师说"这个模型需要100小时训练",我能快速换算成服务器租赁成本;
-
当老板质疑"为什么不用ChatGPT生成对话",我能解释离线部署与实时响应的技术矛盾;
-
当玩家反馈"NPC行为太呆板",我能区分这是数据缺陷、奖励函数错误,还是算力不足。
技术同理心,本质上是一种"翻译能力"------将用户期待转化为技术参数,再将技术限制翻译为产品策略。
下面开始进入正篇:⬇️
复刻Unity ML Agents强化学习案例(Mac环境适配版)
💻 人设备环境:
设备:MacBook M1 Pro \] \[ 内存:16G \] \[ 系统:macOS 15.3.1
以上设备环境仅作参考,我复刻的教程是 Windows 环境下进行的,Mac 上依然可运行。
👉🏻温馨提示:以下是小白视角进行的案例演示,高手请绕行🫡
一、安装Unity Hub + Unity编辑器
1.下载并安装Unity Hub
- • Unity Hub是一个管理Unity安装和项目的工具。
- • 访问Unity Hub官网。
- • 在官网页面上找到"Download Unity Hub"按钮,点击下载。
- • 下载完成后,运行安装程序并按照提示完成安装。
2.通过Unity Hub安装Unity编辑器
• 打开Unity Hub
• 安装完成后,打开Unity Hub。
- ❗️ 注意:如果是第一次打开,可能会提示你登录Unity账号。如果没有账号,可以点击"Create Account"注册一个。
• 添加Unity编辑器
• 在Unity Hub的主界面,点击左上角的"Add"按钮。
• 在弹出的窗口中,选择你需要的Unity版本。
- ❗️注意:ML Agents通常需要较新的Unity版本(如2021或更高)。
- 如果你不确定,可以选择最新的LTS(长期支持)版本。
- 我安装的是:2022.3.53f1c1 苹果芯片 LTS版
• 点击"Next"并选择安装路径,然后点击"Done"开始下载和安装。
• 等待安装完成
• Unity编辑器的安装可能需要一些时间,具体取决于你的网络速度和电脑性能。
3.创建一个新的2D项目
• 打开Unity编辑器
• 安装完成后,Unity Hub会自动启动Unity编辑器。如果没有自动启动,你可以通过Unity Hub手动启动。
• 选择项目模板
• 在Unity启动窗口中,点击"New"创建新项目。
• 在项目模板中,选择"2D"模板(通常在左侧菜单中)。
• 然后选择一个具体的模板,比如"2D (Built-In Render Pipeline)"。
• 设置项目名称和路径
- • 在"Project Name"中输入你的项目名称,例如"MLAgentsTutorial"。
• 在"Location"中选择项目的保存路径,建议选择一个容易找到的文件夹。
- • 例如
/Users/hamu/UnityProjects/MLAgentsTutorial
• 点击"Create"按钮创建项目。
4.安装ML Agents包
• 打开Unity Package Manager
- • 在Unity编辑器中,点击顶部菜单栏的
Window
>Package Manager
。 - • 这将打开Unity的包管理器窗口。
• 添加Unity Registry
- • 在包管理器窗口中,找到"
Packages
:"下拉菜单,选择"Unity Registry
"。 - • 这将显示所有可用的Unity包。
• 搜索并安装ML Agents
包
- • 在搜索框中输入"ML Agents",然后找到
ML Agents
包。 - • 点击该包旁边的"Install"按钮进行安装。
- • 安装完成后,你会看到包的状态变为"
Installed
"或"Remove
"。
5.验证安装
• 安装完成后,关闭并重新打开Unity编辑器。
• 再次进入Window
>Package Manager
,确保ML Agents包已经正确安装。
• 如果看到包的状态为"Installed",则说明安装成功。
总结:通过以上步骤,你已经安装好了Unity编辑器,成功创建了一个新的Unity 2D项目,并安装了ML Agents包。
二、环境搭建的配置方案❗️[版本兼容性非常重要]
在MacBook M1 Pro(MacOS 15.3.1)上安装特定版本的Python(如3.9.13)并设置虚拟环境,可以通过以下步骤完成。由于M1芯片的特殊性,建议使用Homebrew和pyenv来管理Python版本。
1.安装Homebrew
Homebrew是macOS上常用的包管理工具,可以方便地安装和管理Python
• 打开终端(Terminal)
• 在终端输入以下命令并按回车:
bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
• 这将安装Homebrew。
2.安装pyenv
pyenv是一个工具,可以让你轻松安装和管理多个Python版本。
• 确保Homebrew已安装,然后在终端输入以下命令并按回车:
brew install pyenv
• 将pyenv添加到你的Shell配置文件中(如~/.zshrc
或~/.bash_profile
):
bash
echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init --path)"' >> ~/.zshrc
• 应用更改:
bash
source ~/.zshrc
3.安装Python 3.9.13
使用pyenv安装特定版本的Python:实测Python 3.9.13兼容
ML Agents
插件
1.在终端中运行以下命令:
pyenv install 3.9.13
2.设置全局Python版本为3.9.13:
csharp
pyenv global 3.9.13
3.验证安装是否成功:
css
python --version
4.如果安装成功,会显示:
Python 3.9.13
4.在项目目录下创建虚拟环境
虚拟环境可以帮助你为特定项目隔离Python环境,避免依赖冲突。
• 进入项目目录:
bash
cd /Users/hamu/UnityProjects/MLAgentsTutorial
• 在项目目录下创建虚拟环境:
python -m venv venv
• 激活虚拟环境:
bash
source venv/bin/activate
激活后,终端提示符会显示(venv)
,表示当前处于虚拟环境中。
例如:(venv)(base)hamu@HamuMacBook MLAgentsTutorial %
(虚拟环境)(基础环境)用户名@主机名 当前工作目录 %
- ❗️ 在项目所在的目录中会出现虚拟环境命名的文件夹,激活此目录下的虚拟环境后,安装的所有必要的包都会被安装此文件夹中,因此所有安装的包都会被隔离在该环境中,不会影响其他项目。
5.安装必要的Python包
在虚拟环境(venv)
中安装ML Agents和其他必要的包。
• 安装pip
并 更新升级 pip
:
bash
python -m pip install --upgrade pip
/Users/hamu/UnityProjects/MLAgentsTutorial/venv/bin/python -m pip install --upgrade pip
验证安装:运行以下命令检查 pip
的版本:
css
pip --version
如果升级成功,输出的版本号应该接近或等于 25.0.1
。
• 安装ML Agents:
pip install mlagents
• 安装torch
及其依赖:
ini
pip install torch==1.11.0 torchvision==0.12.0 torchaudio==0.11.0
• 安装特定版本的protobuf
:
ini
pip install protobuf==3.20.3
• 检查Python
版本:
css
python --version
确保输出为Python 3.9.13
。
• 检查安装的包:
pip list
确保以下包已安装:【版本兼容性非常重要】!!!
• mlagents==0.30.0
• torch==1.11.0
• torchvision==0.12.0
• torchaudio==0.11.0
• protobuf==3.20.3
• 验证ML Agents是否安装成功:
bash
mlagents-learn --help
如果安装成功,会显示ML Agents的使用帮助信息。
三、环境搭建的注意事项
• 关于Python版本:
- • 如果你使用
pyenv
管理Python版本,无需卸载其他版本的Python。pyenv
会自动切换版本,不会影响全局环境。 - • 在项目目录下创建虚拟环境时,
pyenv
会自动使用指定版本的Python。
• 关于Homebrew:
- • Homebrew是macOS上常用的包管理工具,用于安装和管理Python等软件。
- • 如果你已经在系统中安装了Python,也可以直接使用
pyenv
,但安装Homebrew是一个更通用的解决方案。
• 关于虚拟环境:
- • 虚拟环境是项目依赖隔离的重要工具,建议每个项目都创建独立的虚拟环境。
- • 激活虚拟环境后,所有安装的包都会被隔离在该环境中,不会影响其他项目。
再提醒一次:【版本兼容性非常重要 】!!!【版本兼容性非常重要 】!【版本兼容性非常重要】!
到这里,我们的unity 编辑软件+运行环境都已经安装好了,总结如下 :
设备:
-
MacBook M1 Pro
-
内存:16G
-
系统:macOS 15.3.1
项目软件:
-
unity版本: 2022.3.53f1c1 苹果芯片 LTS版
-
2D 项目:2D (Built-In Render Pipeline)
核心工具:
ML Agents
环境配置:
-
pip==25.0.1
-
Python==3.9.13
-
mlagents==0.30.0
-
torch==1.11.0
-
torchvision==0.12.0
-
torchaudio==0.11.0
-
protobuf==3.20.3
总个结:
通过以上步骤,你已经成功安装了Unity编辑器,创建了一个新的2D项目,并安装了ML Agents包。此外,你还搭建了Python环境,安装了必要的包,并验证了ML Agents是否正常工作。现在,你可以开始编写AI ML Agents
脚本并训练模型了。
四、运行 unity 项目进行模型的强化训练
1、启动终端
2、在终端指定项目根目录路径:(一定要先指定项目根目录)
bash
cd /Users/hamu/UnityProjects/MLAgentsTutorial
3、激活项目根目录下的虚拟环境:(再激活根目录下的虚拟环境)
bash
source venv/bin/activate
4、运行ML-Agents 强化学习工具:
注意,这里的 Test3 是训练模型存放的目录名,每次训练模型,模型训练的目录最好不要一样,要不会无法运行,如果觉得某个模型训练规则有问题,还想启用同一个目录名,可以删掉生成的训练目录名,再用同一个目录名再次启动模型训练;