nemo_gym.data.tasks.harbor.dataset_config
nemo_gym.data.tasks.harbor.dataset_config
The [gym] table of a dataset’s dataset.toml: dataset-level settings for its tasks.
task.toml is the task author’s file and, once fetched, read-only. What a dataset needs on top
of it goes here, as data: the facts Harbor has no field for (license and type, which say
which split the rows may enter; allowed_agents, the harnesses admitted to run it; domain and
verified, catalog metadata; source, the hub reference a committed entry under environments/harbor/
is pulled from), defaults that scale every task or set how many rollouts an
evaluation takes per task, and per-task overrides expressed with Harbor’s own [environment]
fields. The loader applies the task-shaping settings before anything else sees a task, so servers,
agents and rows only ever see the effective task.toml; the other keys flow into the generated
run config’s datasets: entry (nemo_gym.data.tasks.harbor.materialize.run_config).
Harbor’s own tables in the same file ([dataset] and friends) are left to Harbor.
Deployment settings (which sandbox provider, registry credentials, image mirrors) do not belong here: a dataset must run unchanged on every deployment.
Module Contents
Classes
Functions
Data
API
Bases: BaseModel
The whole [gym] table.
The split the rows enter: the declared one, else validation with a license, else benchmark.
Whether the [gym] table says nothing at all: every key at its default.
What a scaffolded dataset.toml reads as (its keys are comments). Nothing branches on it: a task’s
digest folds the table in by shapes_tasks, and the entry and run defaults read each key.
Whether any setting changes the effective task.toml (identity and run fields never do).
Refuse a domain outside Gym’s values with the values named: the entry’s domain is the same enum.
Refuse a source that is not a well-formed harbor: reference, in the hub’s own words.
Whether agent (an implementation name) may run the dataset: any when allowed_agents is unset.
Bases: BaseModel
[gym.defaults]: generic policy applied to every task of the dataset.
Bases: BaseModel
[gym.tasks."<task_id>"]: per-task overrides, written with Harbor’s own fields.
environment and verifier take any key of the task’s [environment] and [verifier]
tables; env merges over the task’s own and every other field replaces the task’s value.
artifacts are added after the task’s own artifacts entries, in Harbor’s shape (a path, or a
table with source, destination and service).
One [[steps]] entry with its own [steps.agent].timeout_sec and [steps.verifier].timeout_sec scaled
once; a budget the step does not name stays None, inherited through HarborTaskConfig’s step accessors
(the loader’s hint about steps graded within the step default keys on that).
The effective task.toml for task_id: overrides first, then the dataset defaults.
The [gym] table of <folder>/dataset.toml; empty when the file or the table is absent.