- The
subprocessruntime runs the rollouts in Python subprocesses locally. Thus, it is meant for debugging purposes, as there might be side effects during runtime, such as one subprocess altering the config files of the harness, which then affects the other subprocesses. - The
dockerruntime runs the rollouts in docker containers on your local machine. - Sandbox runtimes, such as
primeormodal, are meant for production, especially for training or higher concurrency evaluation. These runtimes run remotely.
- Traces are built live, thus allowing the collection of the trajectories as they happen
- Setting sampling parameters in harnesses that don’t necessarily expose those settings
- Intercepting and rewriting tool responses or server-side web search results to block reward hacks