Rajan Lagah
Rajan Lagah

Reputation: 2528

'UnityEnvironment' object has no attribute 'behavior_spec'

I followed this link to doc to create environment of my own.

But when i run this

from mlagents_envs.environment import UnityEnvironment
env = UnityEnvironment(file_name="v1-ball-cube-game.x86_64")


env.reset()
behavior_names = env.behavior_spec.keys()
print(behavior_names)

Game window pop up and then terminal show error saying

Traceback (most recent call last):
  File "index.py", line 6, in <module>
    behavior_names = env.behavior_spec.keys()
AttributeError: 'UnityEnvironment' object has no attribute 'behavior_spec'

despite the fact that this is the exact snippet as shown in the documentation.

I created environment by following this (it make without brain) and i was able to train the model by .conf file. Now i wanted to connect to python API.

Upvotes: 1

Views: 1103

Answers (1)

paypaytr
paypaytr

Reputation: 199

You need to use stable documents and stable repo( RELEASE_TAGS ) to achieve stable results. Unity ML Agents changes it's syntax every few months so that is problem if you are following master branch.

env.get_behavior_spec(behavior_name: str)

Should solve your problem.

https://github.com/Unity-Technologies/ml-agents/blob/release_2/docs/Python-API.md

Upvotes: 1

Related Questions