Exception has occurred: TypeError (note: full exception trace is shown but execution is paused at: _run_module_as_main)
'Rating' object is not subscriptable
File "/home/mtrang/anaconda3/envs/nmmo/lib/python3.9/site-packages/pufferlib/policy_ranker.py", line 90, in update_ranks
f"skillrank/{wandb_policy}/mu": rating["mu"],
File "/home/mtrang/Documents/rl/neural_mmo/baselines/reinforcement_learning/clean_pufferl.py", line 394, in evaluate
self.policy_ranker.update_ranks(
File "/home/mtrang/anaconda3/envs/nmmo/lib/python3.9/site-packages/pufferlib/utils.py", line 223, in wrapper
result = func(*args, **kwargs)
File "/home/mtrang/Documents/rl/neural_mmo/baselines/train_optuna.py", line 66, in objective
_, stats, infos = trainer.evaluate()
...
TypeError: 'Rating' object is not subscriptable``
Found an issue with the
OpenSkillRating
which causes Wandb logging to fail in the policy ranker.Problem is here https://github.com/PufferAI/PufferLib/blob/889f172cb27819f771681c91c9b51f8f1e132a17/pufferlib/policy_ranker.py#L90
Simple fix of
worked for me.