ml-agents安装教程
学习unity安装ml-agents时候各种查,最终这种方式可以成功安装
下载ml-agents安装包
github下载地址:https://github.com/Unity-Technologies/ml-agents/releases
下载源代码
注意python环境的版本(后面创建虚拟环境时候python必须要下载这里说明的版本!!!)
注意pytouch版本
这里下载的是20版本
下载Anaconda软件
打开安装好的 Anacond Powershell Prompt 准备配置python环境
创建虚拟环境
创建虚拟环境,注意后面的python版本一定要和下载ml-agents插件中说明的python版本一致!!!
conda create -n 自定义环境变量名 python=3.8.13
激活创建的虚拟环境
conda activate mlagents
修改虚拟环境安装位置
可用以下命令进行查看虚拟环境位置
conda info
修改虚拟环境所在目录的方法参见下文
https://www.jb51.net/article/281659.htm
onda环境默认安装在用户目录C:\Users\username.conda\envs下,如果选择默认路径,那么之后创建虚拟环境,也是安装在用户目录下。不想占用C盘空间,可以修改conda虚拟环境路径。
最简单的方式就是参见(4)
(1)首先,找到用户目录下的.condarc文件(C:\Users\username)。
(2)打开.condarc文件之后,添加或修改.condarc 中的 env_dirs 设置环境路径,按顺序第⼀个路径作为默认存储路径,搜索环境按先后顺序在各⽬录中查找。直接在.condarc添加:
然后,在Anaconda Prompt执行conda info命令,就可以看到修改默认环境路径成功
当新创建虚拟环境验证时,可能会发现它还是默认安装在C盘用户目录下的envs
(3)或者在Anaconda Promp执行命令:
conda config --add envs_dirs newdir #增加环境路径newdir
通过执行命令conda env list查看有哪些虚拟路径以及它们的存储路径,* 号表示当前所处的环境。
(4)如果还是没有修改成功,则需要更改D:\Anaconda3的权限:选中Anaconda3文件夹,然后右击选则属性,找到安全,Users权限全部允许。接下来确定后,时间稍微有点长,等待完成即可。
这时新创建一个虚拟环境验证时,发现在D:\Anaconda3\envs下。
在虚拟环境安装ml-agents
通过cd命令导航到ml-agents-release_20的所在目录
pip install ./ml-agents
pip install ./ml-agents-env
分别安装这俩文件夹的内容(这来文件夹都有python安装程序)
然后发送以下指令看看缺少啥内容
mlagents-learn --help
protobuf降级(如果不提示就不用)
如果提示protobuf版本太高了,就需要降级protobuf版本到提示的版本号
查看protobuf版本号:
pip show protobuf
卸载 4.24.4 的版本
pip uninstall protobuf
安装 3.19.0 的版本
pip install protobuf==3.19.0
查看版本是否安装成功
pip show protobuf
安装pytorch
然后发送以下指令看看缺少啥内容
mlagents-learn --help
这时候会发现提示没有安装torch
方法1:
直接通过pip安装,通过查看自己英伟达显卡的cuda版本:
cmd输入:
nvidia-smi
查看版本号,如果没有就要装cpu版本的
如果有显卡,就要装显卡版本的
然后进入pytorch官网:https://pytorch.org/
根据显卡cuda版本选择类型,保证要下载的版本比自己电脑cuda的版本低
将【run this command】栏目后面的命令复制到Anaconda cmd
等待安装,默认是用的外网的地址安装的,如果嫌弃慢,可以更换清华源或者阿里源
测试效果
等待全部安装完毕后,执行:
mlagents-learn --help
如果现实的内容是一堆–加说明就说明安装成功了
补充
安装onnx
前面的这些安装之后,此环境换差onnx,这个不安装在训练结束后,无法生成训练数据,安装的版本是1.7.0
conda install -c conda-forge onnx=1.7.0
安装之后再次训练即可,unity结束play,训练结束,可以正常生成训练数据(.onnx后缀的)
如果还有别的报警,则根据提示安装对应版本的包
更多推荐

所有评论(0)