Usage Guide
Using it as a standalone wrapper for ML-Agents
In this mode, users should interact with wandb-mlagents-learn
, which acts as a wrapper passthrough for mlagents-learn
.
To use WandB with ML-Agents, simply add an extra "wandb" field in a config file that is otherwise completely compatible with ML-Agents Python package. To run, enter wandb-mlagents-learn
in the terminal. This wrapper accepts the same cli arguments as mlagents-learn
.
Note: In this use case, wandb-mlagents-learn
does not support cli arguments. In other words, to use this wrapper, WandB's configurations must be present in a mlagents-learn
compatible config file. The syntax for the various configs can be found below.
Using it with realm-tune
In this mode, users interact solely through realm-tune
, as they have been tightly integrated.
To use WandB with realm-tune
, similar to previously, simply add an extra "wandb" field to the realm-tune
config file. An example of which can be found here.
Comparing to using wandb-mlagents-learn
as a standalone, using it within realm-tune
allows cli arguments to be passed (more information can be found in realm-tune
's config docs).
wandb-mlagents-learn
configs
In the realm-tune
or mlagents-learn
config file (it should be a *.yaml
file), add the following:
wandb:
project: <default: realm_ai>
entity: <default: None>
offline: <default: False>
group: <default: None>
jobtype: <default: None> # "job_type" is accepted too!
Notes
- Resuming a run on wandb does not work (yet). Since we use the run_id as the name of the wandb run, we will see multiple runs with the same name when resuming a run
- If we intend to use mlagents default parameters, it is okay to pass in a config file that solely contains wandb config (as shown above)
- If "wandb" is not defined in the config file, wandb will not be used, and functionality will then be identical to mlagents!
- When resuming runs, multiple tensorboard files may be present. Currently, this wrapper uses the latest tensorboard file, based on time of creation (Windows)/last modification (Unix)