首页 > 编程语言 >ML-Agents Python包安装

ML-Agents Python包安装

时间:2024-02-05 23:55:50浏览次数:32  
标签:agents Python ML conda ml Agents

Unity的机器学习工具包ML-Agents还是挺好用的,但是其Python后端在安装的过程中会出一些问题,在这里记录一下。

为了方便多Python环境管理,我在搭建环境的时候使用了Anaconda包管理器。目前ML-Agents支持的Python版本为3.10.12,版本过高或过低都可能会缺少对应的依赖。打开一个PowerShell终端,输入以下命令新建conda环境:

conda create -n mlagents python=3.10.12

如果当前没有在conda环境中(PS前没有(base)字样),需要先用conda init来进行初始化。然后激活mlagents环境,并安装PyTorch:

conda activate mlagents
pip3 install torch~=1.13.1 -f https://download.pytorch.org/whl/torch_stable.html

克隆ML-Agents仓库(Release 21分支):

git clone --branch release_21 https://github.com/Unity-Technologies/ml-agents.git

先安装前置包ml-agents-envs:

python -m pip install ./ml-agents-envs

这个时候就出问题了,在构建numpy的时候会报错:

往上面翻,可以看到是NumPy的版本过低,不支持Python 3.10导致的。解决方法很简单,打开ml-agents-envs中的setup.py,将其中numpy==1.21.2改为numpy==1.23.5即可。这个版本要求也是比较严格的,过高或过低都可能出现依赖错误。

搞定了前置包之后,安装ml-agents

python -m pip install ./ml-agents

安装完毕,就可以使用mlagents-learn命令启动机器学习后端了。如图:
005_03.png

标签:agents,Python,ML,conda,ml,Agents
From: https://www.cnblogs.com/devbobcorn/p/18008958

相关文章

  • Python中利用all()来优化减少判断的代码
    ​ Python中,all()函数是一个非常实用的内置函数,用于检查可迭代对象中的所有元素是否都满足某个条件。当你需要对多个条件进行逻辑与(AND)操作时,使用all()可以使代码更加简洁和可读。 参考文档:Python中利用all()来优化减少判断的代码-CJavaPy1、使用all()减少判断要检查......
  • Python 机器学习 特征预处理
    1、缩放特征(FeatureScaling)特征预处理是一个重要的步骤,而特征缩放(FeatureScaling)是其中的一个关键环节。特征缩放通常用于标准化数据集中各个特征的范围,使它们在相似的尺度上。这一步骤对于许多机器学习算法特别重要,尤其是那些基于距离的算法(如K-近邻)和梯度下降法(如线性回归、......
  • Python文本转语音库:pyttsx3 初识
    1.安装pipinstallpyttsx32.示例#coding=utf-8importpyttsx3text="""在这个例子中,使用三引号可以创建多行字符串,换行符会自动包含在字符串中。请注意,在这些方法中,字符串的换行拼接可以根据需要进行布局,以增强代码的可读性和可维护性。"""engine=pyttsx3.init()......
  • 第 1 章 Python 爬虫概念与 Web 基础
    第1章Python爬虫概念与Web基础1.1爬虫概念1.1.1什么是爬虫爬虫,即网络爬虫,又称网络蜘蛛(WebSpider),是一种按照一定规则,用来自动浏览或抓取万维网数据的程序。可以把爬虫程序看成一个机器人,它的功能就是模拟人的行为去访问各种站点,或者带回一些与站点相关的信息。它可以2......
  • Python开源数据集
    1、工具库介绍为了使初学者更容易入门,许多开源库提供了丰富而标准化的示例数据集,其中包括scikit-learn、NLTK、TensorFlowDatasets、KerasDatasets、Statsmodels以及Seaborn等。Scikit-learn:Scikit-learn是一个用于机器学习和数据挖掘的Python开源库,提供了丰富而灵活的工具,......
  • Python在处理飞书下载二进制文件时转换的问题
    最近在使用飞书,想通过接口来下载飞书文档https://open.feishu.cn/api-explorer/cli_a5049e070838d00c?apiName=download发现无法将二进制流转换为文件后来发现其文档有一些谬误,文档上写的是response.text实际写入二进制文件需要的是response.content#发起下载请求,拿到文......
  • UML类图及各种线代表的关系含义总结
    原文:UML类图及各种线代表的关系含义总结_uml各种线条代表什么意义,请用uml图例详细说明-CSDN博客一、认识类图类图可以说是UML里使用频率最高的,类图是描述系统中的类,以及各个类之间的关系的静态视图。能够让我们在正确编写代码以前对系统有一个全面的认识。类图是一种模型类型,确......
  • 树莓派上基于Python控制GPIO
    树莓派上基于Python控制GPIO希望做到可以自动给阳台的花儿浇水~有以下几点:控制GPIO的拉高/拉低,并保持一段时间间隔加锁,避免重复有日志记录具体情况#!/usr/bin/envpython3#-*-coding:UTF-8-*-importRPi.GPIOasGPIOimporttimeimportfcntlimportloggingcl......
  • (python)做题记录||2024.2.4||题目是codewars的【 All Balanced Parentheses】
    题目链接:https://www.codewars.com/kata/5426d7a2c2c7784365000783/python我的解决方案:defbalanced_parens(n):#Yourcodehere!used_l=[Falseforiinrange(n)]used_r=[Falseforiinrange(n)]answers=[]defprocess(answer):iflen(a......
  • python时实检测数据库表的数据变化
     在实际的数据处理和监控应用中,有时我们需要实时监测数据库表的数据变化,以便及时发现和处理数据更新、插入或删除操作。本文将介绍如何使用Python和数据库连接库来实现对数据库表的实时监测,帮助读者了解如何利用Python编写监控程序,实时捕获数据库表的数据变化。 第一步:连接数据......