code: def get_default_policy_class(
      cls, config: AlgorithmConfig
  ) -> Optional[Type[Policy]]:
      if config["framework"] == "torch":
          from ray.rllib.algorithms.pg.pg_torch_policy import (
              PGTorchPolicy,
          )
  
          return PGTorchPolicy
      elif config.framework_str == "tf":
          from ray.rllib.algorithms.pg.pg_tf_policy import PGTF1Policy
  
          return PGTF1Policy
      else:
          from ray.rllib.algorithms.pg.pg_tf_policy import PGTF2Policy
  
          return PGTF2Policy
  
file_path: ray/rllib/algorithms/pg/pg.py
imports: from typing import List, Optional, Type, Union
  from ray.rllib.algorithms.algorithm import Algorithm
  from ray.rllib.algorithms.algorithm_config import AlgorithmConfig, NotProvided
  from ray.rllib.policy.policy import Policy
  from ray.rllib.utils.annotations import override
  from ray.rllib.utils.deprecation import Deprecated, ALGO_DEPRECATION_WARNING
label_desc: Use image node_id 2 for calling the PG obj's underlying member method code with example usage: obj.get_default_policy_class(cls, config) and returns: PGTorchPolicy, PGTF1Policy, PGTF2Policy