From 5fe79e34fe7fbb1d49167d1afaa64ef02f5be293 Mon Sep 17 00:00:00 2001 From: Eric Liang Date: Thu, 30 Apr 2020 21:32:54 -0700 Subject: [PATCH] [rllib] [hotfix] Remove assert that trips on pytorch multiagent (#8241) --- rllib/evaluation/worker_set.py | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/rllib/evaluation/worker_set.py b/rllib/evaluation/worker_set.py index 3acabf9aa..74664d8cf 100644 --- a/rllib/evaluation/worker_set.py +++ b/rllib/evaluation/worker_set.py @@ -5,7 +5,6 @@ import ray from ray.rllib.utils.annotations import DeveloperAPI from ray.rllib.evaluation.rollout_worker import RolloutWorker, \ _validate_multiagent_config -from ray.rllib.policy import Policy, TorchPolicy from ray.rllib.offline import NoopOutput, JsonReader, MixedInput, JsonWriter, \ ShuffledInput from ray.rllib.utils import merge_dicts, try_import_tf @@ -279,25 +278,4 @@ class WorkerSet: _fake_sampler=config.get("_fake_sampler", False), extra_python_environs=extra_python_environs) - # Check for correct policy class (only locally, remote Workers should - # create the exact same Policy types). - if type(worker) is RolloutWorker: - actual_class = type(worker.get_policy()) - - # Pytorch case: Policy must be a TorchPolicy. - if config["use_pytorch"]: - assert issubclass(actual_class, TorchPolicy), \ - "Worker policy must be subclass of `TorchPolicy`, " \ - "but is {}!".format(actual_class.__name__) - # non-Pytorch case: - # Policy may be None AND must not be a TorchPolicy. - else: - assert issubclass(actual_class, type(None)) or \ - (issubclass(actual_class, Policy) and - not issubclass(actual_class, TorchPolicy)), "Worker " \ - "policy must be subclass of `Policy`, but NOT " \ - "`TorchPolicy` (your class={})! If you have a torch " \ - "Trainer, make sure to set `use_pytorch=True` in " \ - "your Trainer's config)!".format(actual_class.__name__) - return worker