AI 对抗 AI - 街霸III

描述

DIAMBRA Arena 是一个软件包,包含了一系列高质量的环境,用于强化学习研究和实验。它提供了一个标准接口,用于流行的街机模拟器视频游戏,并提供了一个完全符合 OpenAI Gym/Gymnasium 格式的 Python API,使得其采用变得平滑且直接。

它支持所有主要操作系统(Linux、Windows 和 MacOS),并且可以通过 Python PIP 轻松安装,如下所述的安装部分。它是完全免费的,用户只需要在官方网站注册即可使用。

此外,它的 GitHub 仓库 提供了一系列示例,涵盖了主要的使用案例,只需几个步骤即可运行。 baseusage

主要特性

所有环境都是基于剧集的强化学习任务,具有离散动作(游戏手柄按钮)和由屏幕像素加上额外的数值数据(如角色健康条或角色舞台侧面的 RAM 值)组成的观测。

它们都支持单人(1P)和双人(2P)模式,使它们成为探索以下所有强化学习子领域的完美资源: feature

可用游戏

接口化的游戏是从最受欢迎的格斗复古游戏中精选出来的。它们虽然共享相同的基本机制,但提供了略有不同的挑战,具有特定功能,如不同类型的角色和数量、如何执行连击、健康条重新充电等。

只要可能,游戏都会发布所有隐藏/奖励角色解锁的版本。

doapp sfiii3n tektagt umk3 samsh6sp kof98umh
Dead
Or
Alive ++
Street
Fighter III
3rd Strike
Tekken Tag
Tournament
Ultimate
Mortal
Kombat 3
Samurai
Showdown
5 Special
The King of
Fighers '98
Ultimate
Match Hero
mvsc xmvsf soulclbr
Marvel
VS
Capcom
X-Men
VS
Street Fighter
Soul
Calibur

竞赛平台

DIAMBRA Competition Platform

我们的竞赛平台允许您提交您的代理,并在全球范围内与其他编码者在史诗级视频游戏锦标赛中竞争!

它特色一个公共的全球排行榜,用户根据其代理在我们不同环境中取得的最佳成绩进行排名。

它还为您提供了根据您代理的表现解锁酷成就的可能性。


安装

第一步

  • 在 diambra.ai 注册,创建并登录您自己的账户:diambra.ai diambra_ai

第二步

  • 安装 Docker Desktop

1. Linux: 安装指南
2. Windows: 安装指南
3. MacOS: 安装指南

确保您有权限运行 Docker。查看这里。 在 Linux 上,通常只需运行以下命令:

sudo usermod -aG docker $USER

然后注销并重新登录。

第三步

  • 创建虚拟环境并激活它。
sudo apt update
sudo apt upgrade -y
sudo apt -y install virtualenv
virtualenv -p python3 venv
cd venv/
source bin/activate
  • 安装DIAMBRA 命令行接口 执行下面的命令前请确认已经激活了你虚拟环境。
pip install diambra

第四步

  • 安装DIAMBRA竞技场
pip install diambra-arena

第五步

  • 从GitHub下载democode
  • 通过make install 或者 pip install -r requirements.txt 命令安装依赖包,请参考下面的命令:
cd venv/
git clone https://github.com/OpenGenerativeAI/llm-colosseum
cd llm-colosseum/
pip install -r requirements.txt

第六步

  • 创建 ROM 目录并且下载游戏ROM 并将游戏的ROM文件放到~/.diambra/roms 目录.
  • 街霸III ROM 压缩包文件下载:

Download

mkdir -pv ~/.diambra/roms
cd ~/.diambra/roms/
wget http://mgy-slm-private.chinanorth3.cloudapp.chinacloudapi.cn/sfiii3n.zip

第七步

  • 下载ROM(s)并检查有效性

  • 查看可用的游戏:

diambra arena list-roms

输出解压信息:

[...]
 Title: Dead Or Alive ++ - GameId: doapp
   Difficulty levels: Min 1 - Max 4
   SHA256 sum: d95855c7d8596a90f0b8ca15725686567d767a9a3f93a8896b489a160e705c
4e
   Original ROM name: doapp.zip
   Search keywords: ['DEAD OR ALIVE ++ [JAPAN]', 'dead-or-alive-japan', '8078
1', 'wowroms']

   Characters list: ['Kasumi', 'Zack', 'Hayabusa', 'Bayman', 'Lei-Fang', 'Rai
dou', 'Gen-Fu', 'Tina', 'Bass', 'Jann-Lee', 'Ayane']
[...]

使用游戏列表命令提供的搜索关键词在网页上搜索ROM。请注意,遵循那里报告的游戏特定说明,并将所有ROM存储在同一个文件夹中,其绝对路径将在下文中被引用为 your/roms/local/path

需要特定的游戏ROM文件,检查下载的ROM的有效性:

diambra arena check-roms your/roms/local/path/romFileName.zip

有效的ROM文件输出示例如下:

正确的Dead Or Alive ++ ROM文件,sha256 = d95855c7d8596a90f0b8ca157256865676d767a9a3f93a8896b489a160e705c4e

请务必查看我们的 使用条款,特别是第7节。通过使用软件,您需要完全接受它们。

第八步

  • 创建一个.env文件,并用.env.example文件中的内容覆盖这个文件。
cd llm-colosseum/
cp .env.example .env
  • .env文件将如下所示:
MISTRAL_API_KEY=""
OPENAI_API_KEY=""
GROK_API_KEY=""
DISABLE_LLM="False"

第九步

  • 使用Ollama运行带有本地模型的竞技场。

  • 确保你已经安装了Ollama,并且正在运行,同时已经下载了一个模型。 例如,运行 ollama run phi3

  • 运行 make local 来开始战斗,或者执行以下命令:

cd colosseum/
diambra run python3 demo.py
  1. 如果ROM文件不在 ~/.diambra/roms/ 位置, 要执行脚本,运行:
diambra run -r your/roms/local/path python script.py

如果你把ROM文件放在了其他位置,用实际的路径替换 your/roms/local/path。 如果你已经将ROM文件放在了 ~/.diambra/roms/ 文件夹中,忽略 -r 选项。


示例

examples/ 文件夹包含了代表最重要用例的现成脚本,特别是:

  • 单人游戏环境
  • 多人游戏环境
  • 包装器选项
  • 剧集录制
  • 剧集数据加载器

这些示例展示了如何利用单人和双人模式,如何设置环境包装器并指定所有选项,如何记录人类专家演示以及如何加载它们以应用模仿学习。它们可以作为模板和起点,用于探索软件包的所有功能。

diambraGif{: width="100%"}

强化学习库兼容性

DIAMBRA Arena 旨在与所有主要的强化学习库实现最大的兼容性。它原生提供了与两个最重要的包的接口:Stable Baselines 3 和 Ray RLlib,而 Stable Baselines 也可用但已弃用。它们的使用在文档DIAMBRA Agents 仓库中有详细说明。它可以轻松地以类似的方式与其他任何包进行接口。

原生接口,安装了下面列出的特定选项,已经与以下版本进行了测试:

DIAMBRA Arena 旨在实现与所有主要的强化学习库的最大兼容性。它原生提供了与两个最重要的包:Stable Baselines 3 和 Ray RLlib 的接口,同时 Stable Baselines 也是可用的但已弃用。它们的使用在文档DIAMBRA Agents 仓库中有详细说明。它可以很容易地以类似的方式与其他任何包进行接口。

原生接口,安装时需要列出以下特定选项,并已在以下版本中进行了测试:

  • Stable Baselines 3 | pip install diambra-arena[stable-baselines3] (文档 - GitHub - Pypi): 2.1.*
  • Ray RLlib | pip install diambra-arena[ray-rllib] (文档 - GitHub - Pypi): 2.7.*
  • Stable Baselines | pip install diambra-arena[stable-baselines] (文档 - GitHub - Pypi): 2.10.2

参考资料

使用条款

DIAMBRA Arena 软件包受我们的使用条款约束。使用它,即表示您完全接受这些条款。

DIAMBRA, Inc. © 版权所有 2018-2024。保留所有权利。