Ray 2.0.0 question about changes

How severe does this issue affect your experience of using Ray?

  • Low: It annoys or frustrates me for a moment.
from ray.rllib.algorithms.ppo import PPO, PPOConfig
.
.
.
my_ppo_config = PPOConfig()

my_trainer1 = PPO(env='CartPole-v0') # Trainer 1
my_trainer2 = my_ppo_config.build(env='CartPole-v0') # Trainer 2

My question is…are Trainer 1 and Trainer 2 the SAME at this stage - since both of them use the default config of PPO?

Also, how do I know the ‘groups’ of settings that I can change as:

my_config = PPOConfig()\
    .training(lr=0.001)\
    .framework("torch")\
    .rollouts(num_rollout_workers=2)

as the document Ray RLlib 2.0 Changes - Google Docs talks about how it’s easier to do it from the editor without going back and forth from documentation? How is that possible? Please help. Thank you

  1. Both algorithms will be the same, save for random seeding

  2. It’s supposed to be easier from the editor now because, if you use an IDE or an editor with developer extensions, you will be given hints on what you can input and also most of the parameters will be out of sight because most of them are usually not touched. After modifying 4-5 configs you will get the hang of it, I’m sure :slight_smile: I found it a little confusing when I first touched it but it makes you more productive in the long run and makes the configs easier to explore and filter.

1 Like

I believe that is the original intention but from my experience with new syntax in my IDE documentation it only allows to define a fraction of the parameters.
When you convert back to dictionary you are able to inspect all the parameters and not all of them are available in the PPOConfig.GROUP(x=y)

For example, where do I define seed?

ok. found it out: for the seed it is .debugging(seed=xxx)