Closed ipsec closed 1 year ago
Is not a gym version problem. I have installed the gym version 0.19.0 and the same error occur.
My test is:
def main():
import warnings
import dreamerv3
from dreamerv3 import embodied
warnings.filterwarnings('ignore', '.*truncated to dtype int32.*')
# See configs.yaml for all options.
config = embodied.Config(dreamerv3.configs['defaults'])
# config = config.update(dreamerv3.configs['medium'])
config = config.update({
'logdir': '~/logdir/run1',
'run.train_ratio': 64,
'run.log_every': 30, # Seconds
'batch_size': 16,
'jax.prealloc': False,
'encoder.mlp_keys': '$^',
'decoder.mlp_keys': '$^',
'encoder.cnn_keys': 'image',
'decoder.cnn_keys': 'image',
'jax.platform': 'cpu',
})
config = embodied.Flags(config).parse()
logdir = embodied.Path(config.logdir)
step = embodied.Counter()
logger = embodied.Logger(step, [
embodied.logger.TerminalOutput(),
embodied.logger.TensorBoardOutput(logdir),
])
import gym
import gym_myenv
from embodied.envs import from_gym
env = gym.make("gym_myenv:MyEnv-v0")
env = from_gym.FromGym(env, obs_key='image') # Or obs_key='vector'.
env = dreamerv3.wrap_env(env, config)
env = embodied.BatchEnv([env], parallel=False)
agent = dreamerv3.Agent(env.obs_space, env.act_space, step, config)
replay = embodied.replay.Uniform(
config.batch_length, config.replay_size, logdir / 'replay')
args = embodied.Config(
**config.run, logdir=config.logdir,
batch_steps=config.batch_size * config.batch_length)
embodied.run.train(agent, env, replay, logger, args)
if __name__ == '__main__':
main()
My mistake again, sorry
Hi Danijar,
First congrats by excellent work.
I'm trying to run dreamerv3 using a custom gym environment which have a observation image:
But I'm getting this error:
I suspect this is a gym version problem (my environment is using gym==0.26.2) your version gym==0.19.0 is not available to Mac M1.
Have you any idea how to fix this?