找不到模块 \atari_py\ale_interface\ale_c.dll(或其依赖项之一)
Could not find module \atari_py\ale_interface\ale_c.dll (or one of its dependencies)
我正在尝试使用 openai 健身房模块,但出现此错误:
>>> import atari_py
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\__init__.py", line 1, in <module>
from .ale_python_interface import *
File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\ale_python_interface.py", line 17, in <module>
ale_lib = cdll.LoadLibrary(os.path.join(os.path.dirname(__file__),
File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\ctypes\__init__.py", line 451, in LoadLibrary
return self._dlltype(name)
File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\ctypes\__init__.py", line 373, in __init__
self._handle = _dlopen(self._name, mode)
FileNotFoundError: Could not find module 'C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\ale_interface\ale_c.dll' (or one of its dependencies). Try using the full path with constructor syntax.
我没有 ale_c.dll 并尝试寻找解决方案,但没有任何效果。
我按照这里的解决方案 https://github.com/openai/gym/issues/1726 但是在尝试导入 atari_py 时出现了同样的错误。我不明白为什么 __init__
会搜索模块中没有的东西。我查看了其他 Whosebug 问题,但它们也没有产生任何结果。我能想到的唯一解决办法是获取 ale_c.dll 的副本,但我不知道如何获取它。
我遇到了同样的错误。幸运的是,我找到了一种解决方法。按照这些步骤操作,您应该可以开始了。
- 从 here 下载
ale_c.dll
。
- 复制到
C:\Users\Deep Raval\AppData\Local\Programs\Python\Python38\Lib\site-packages\atari_py\ale_interface
(路径可以不同)
这是您在使用Windows时可能遇到的问题。
使用以下方法卸载并重新安装 atari:
pip install -f https://github.com/Kojoley/atari-py/releases atari_py
我试图让它在 Windows 上与 python 3.8 和 3.9 一起工作 10. 安装 Python 3.7 并将其用作 Python 解释器 PyCharm 解决了这个问题。我在拥有 3.8 + 版本的 Python 时搜索了丢失的文件,但它根本不存在。 Atari-py 仅受 Python 3.7 (https://github.com/openai/atari-py) 支持,因此拥有更高版本的版本将不起作用。从未经许可的地方下载文件是个坏主意,因此我建议您安装支持的 Python 版本(3.5、3.6 和 3.7)。尽管 gym 可以在 3.9 上运行,但 atari 版本不会。
只是一个更新,因为 gym 0.21.0 发布了,它支持 ale-py 而不再使用 atari-py(因此,如果您使用 gym 0.21.0 和 ale-py,任何标记为 v0 - v4 的游戏将不再运行(应该与健身房一起提供)。确保在安装库时它们实际上是兼容的。
Link 到新版健身房 https://brosa.ca/blog/ale-release-v0.7。当 运行ning v5 我确实设法渲染了游戏,但我找不到其他支持的游戏。如果你使用 gym 0.21.0,你将不需要 atari-py (atari_py)。
来自示例:
import gym
env = gym.make('ALE/Breakout-v5',
obs_type='rgb', # ram | rgb | grayscale
frameskip=5, # frame skip
mode=0, # game mode, see Machado et al. 2018
difficulty=0, # game difficulty, see Machado et al. 2018
repeat_action_probability=0.25, # Sticky action probability
full_action_space=True, # Use all actions
render_mode=None # None | human | rgb_array
)
它确实 运行 但即使在旧版本的 gym 中游戏也被破坏了。
在尝试了各种 python、gym 和 atari-py 版本后,我设法开始工作的是:
对于以后的其他人,我的问题是我遇到了同样的错误,但我已经在正确的文件夹中找到了 ale_c.dll 文件。
我遵循了这个 link 的解决方案 --> https://github.com/openai/gym/issues/1726
尝试从 conda 下载 arari-py 包
conda install -c conda-forge atari_py
即使您使用的是 Python > 3.7
,这也会解决您的问题
我建议您从这里下载 Windows 和 Python 版本的 wheel 文件:https://pypi.org/simple/atari-py/
然后在此文件上执行 pip install
,如:
pip install atari_py-0.2.9-cp39-cp39-win_amd64.whl
这个对我有帮助(github 的解决方案似乎好多了,但它对我不起作用 - 可能是因为 venv?) - 对我来说,这是比下载 .dll 更安全的解决方案来自 google 驱动器。
我正在尝试使用 openai 健身房模块,但出现此错误:
>>> import atari_py
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\__init__.py", line 1, in <module>
from .ale_python_interface import *
File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\ale_python_interface.py", line 17, in <module>
ale_lib = cdll.LoadLibrary(os.path.join(os.path.dirname(__file__),
File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\ctypes\__init__.py", line 451, in LoadLibrary
return self._dlltype(name)
File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\ctypes\__init__.py", line 373, in __init__
self._handle = _dlopen(self._name, mode)
FileNotFoundError: Could not find module 'C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\ale_interface\ale_c.dll' (or one of its dependencies). Try using the full path with constructor syntax.
我没有 ale_c.dll 并尝试寻找解决方案,但没有任何效果。
我按照这里的解决方案 https://github.com/openai/gym/issues/1726 但是在尝试导入 atari_py 时出现了同样的错误。我不明白为什么 __init__
会搜索模块中没有的东西。我查看了其他 Whosebug 问题,但它们也没有产生任何结果。我能想到的唯一解决办法是获取 ale_c.dll 的副本,但我不知道如何获取它。
我遇到了同样的错误。幸运的是,我找到了一种解决方法。按照这些步骤操作,您应该可以开始了。
- 从 here 下载
ale_c.dll
。 - 复制到
C:\Users\Deep Raval\AppData\Local\Programs\Python\Python38\Lib\site-packages\atari_py\ale_interface
(路径可以不同)
这是您在使用Windows时可能遇到的问题。
使用以下方法卸载并重新安装 atari:
pip install -f https://github.com/Kojoley/atari-py/releases atari_py
我试图让它在 Windows 上与 python 3.8 和 3.9 一起工作 10. 安装 Python 3.7 并将其用作 Python 解释器 PyCharm 解决了这个问题。我在拥有 3.8 + 版本的 Python 时搜索了丢失的文件,但它根本不存在。 Atari-py 仅受 Python 3.7 (https://github.com/openai/atari-py) 支持,因此拥有更高版本的版本将不起作用。从未经许可的地方下载文件是个坏主意,因此我建议您安装支持的 Python 版本(3.5、3.6 和 3.7)。尽管 gym 可以在 3.9 上运行,但 atari 版本不会。
只是一个更新,因为 gym 0.21.0 发布了,它支持 ale-py 而不再使用 atari-py(因此,如果您使用 gym 0.21.0 和 ale-py,任何标记为 v0 - v4 的游戏将不再运行(应该与健身房一起提供)。确保在安装库时它们实际上是兼容的。 Link 到新版健身房 https://brosa.ca/blog/ale-release-v0.7。当 运行ning v5 我确实设法渲染了游戏,但我找不到其他支持的游戏。如果你使用 gym 0.21.0,你将不需要 atari-py (atari_py)。 来自示例:
import gym
env = gym.make('ALE/Breakout-v5',
obs_type='rgb', # ram | rgb | grayscale
frameskip=5, # frame skip
mode=0, # game mode, see Machado et al. 2018
difficulty=0, # game difficulty, see Machado et al. 2018
repeat_action_probability=0.25, # Sticky action probability
full_action_space=True, # Use all actions
render_mode=None # None | human | rgb_array
)
它确实 运行 但即使在旧版本的 gym 中游戏也被破坏了。
在尝试了各种 python、gym 和 atari-py 版本后,我设法开始工作的是:
对于以后的其他人,我的问题是我遇到了同样的错误,但我已经在正确的文件夹中找到了 ale_c.dll 文件。
我遵循了这个 link 的解决方案 --> https://github.com/openai/gym/issues/1726
尝试从 conda 下载 arari-py 包
conda install -c conda-forge atari_py
即使您使用的是 Python > 3.7
,这也会解决您的问题我建议您从这里下载 Windows 和 Python 版本的 wheel 文件:https://pypi.org/simple/atari-py/
然后在此文件上执行 pip install
,如:
pip install atari_py-0.2.9-cp39-cp39-win_amd64.whl
这个对我有帮助(github 的解决方案似乎好多了,但它对我不起作用 - 可能是因为 venv?) - 对我来说,这是比下载 .dll 更安全的解决方案来自 google 驱动器。