docs(fern): rewrite key terminology glossary (#1500) - #2355
Conversation
Align definitions with Environments/Evaluation/Training/Architecture, lead with a Gym overview and component map, and link out to how-to pages. Signed-off-by: Seph Mard <smard@nvidia.com>
|
🌿 Preview your docs: https://nvidia-preview-docs-update-key-terminology-1500.docs.buildwithfern.com/nemo/gym Here are the markdown pages you've updated: |
| | **Environment** | **Dataset** + **Agent harness** + **Verifier** + **State** | Everything needed to run and score a task. The **model is outside** the environment. | | ||
|
|
||
| **Task Instance** | ||
| The **model** is the LLM you call — local weights or a remote API endpoint. In Gym it is usually exposed by the **Model server** (or your harness can call an endpoint directly). The same environment can be used as a **benchmark** (fixed eval) or a **training environment** (learn from rewards / synthetic data). |
There was a problem hiding this comment.
nit: may be a vlm, cf super
There was a problem hiding this comment.
Went with modality-neutral wording instead of listing LLM/VLM: model / policy is what you call for generation (local weights or remote endpoint). That covers text, vision-language, and other modalities without baking a modality into the glossary.
Co-authored-by: Felipe Vieira Frujeri <ffrujeri@nvidia.com> Signed-off-by: Seph Mard <seph.mard@gmail.com>
| | **SFT** | Supervised fine-tuning from examples of good behavior (demonstration data). | | ||
| | **RL** | Improve the policy through environment interaction and reward signals. | | ||
| | **Online / offline** | **Online**: update the policy from rewards while interacting (e.g. GRPO). **Offline**: train from pre-collected rollouts (e.g. SFT, DPO). See [Offline training with rollouts](/tutorials/training-tutorials/offline-training-w-rollouts). | | ||
| | **DPO** | Offline preference training from pairs of rollouts. | |
There was a problem hiding this comment.
nit: i would expand the acronyms
There was a problem hiding this comment.
Addressed in 5cd0537 / earlier review commit: expanded SFT (Supervised Fine-Tuning), RL (Reinforcement Learning), DPO (Direct Preference Optimization), and GRPO (Group Relative Policy Optimization).
There was a problem hiding this comment.
Addressed — full names are expanded in the Training glossary.
| | --- | --- | | ||
| | Dataset | JSONL (`responses_create_params` + `verifier_metadata`) — [Prepare Data](/data) | | ||
| | Agent harness | **Agent server** (`responses_api_agents/`) — [Agent Server](/agent-server) | | ||
| | Verifier + state (+ env tools) | **Resources server** (`resources_servers/`) — [Build Verifiers](/build-verifiers) | |
There was a problem hiding this comment.
this is confusing to me. the state is obtained by a snapshot of the environment, no?
There was a problem hiding this comment.
Clarified: per-attempt state is the mutable session world inside the resources server (seed_session → tools mutate it → verify()), not a snapshot of the whole environment config. Mapping table updated accordingly.
| A single rollout attempt for a specific task. Multiple instances per task capture different approaches. | ||
| | Concept | NeMo Gym component | | ||
| | --- | --- | | ||
| | Dataset | JSONL (`responses_create_params` + `verifier_metadata`) — [Prepare Data](/data) | |
There was a problem hiding this comment.
I think calling this a component is confusing. I would put the link to the data section, and the function names
There was a problem hiding this comment.
Addressed: retitled the map to “In NeMo Gym” and described Dataset as JSONL row fields + Prepare Data (not as a server “component”).
| | | Built from | Notes | | ||
| | --- | --- | --- | | ||
| | **Agent** | **Model** + **Agent harness** | The harness turns model calls into a loop with tools and stop conditions. | | ||
| | **Environment** | **Dataset** + **Agent harness** + **Verifier** + **State** | Everything needed to run and score a task. The **model is outside** the environment. | |
There was a problem hiding this comment.
One important distinction here is that the Agent harness is not a responsibility of the Environment
it is part of the Agent as you described in the line above. But the Environment packaging that we are doing contains a reference to the Agent Server
| Environment | Dataset + Agent harness + Verifier + State | Everything needed to run and score a task. The model is outside the environment. |
There was a problem hiding this comment.
Addressed: Environment is now Dataset + Verifier + State (+ env tools). Explicit note that the harness belongs to the Agent; Gym configs may still reference an agent server for packaging only.
| **Data Generation Process** | ||
| | Term | Definition | | ||
| | --- | --- | | ||
| | **Environment** | Everything required for an agent to complete a task except the model: `Dataset + Agent harness + Verifier + State`. See [Environments](/about/concepts/environments) and [Build Environments](/environment-tutorials). | |
There was a problem hiding this comment.
Same recommendation as before.
There was a problem hiding this comment.
Addressed: Environment glossary row matches Overview — harness is a packaging reference, not part of the Environment formula.
| **Preference Pairs** | ||
| | Term | Definition | | ||
| | --- | --- | | ||
| | **Training environment** | Environment used to improve a model — as an online RL reward signal, or to generate synthetic training data. See [Training](/about/concepts/training). | |
There was a problem hiding this comment.
not sure if there is need to make a distinction between a "Training environment" from an Environment apart from the taskset and data contamination
There was a problem hiding this comment.
Agreed — dropped “Training environment” as a separate type. Overview now says the same environment shape is used for benchmark eval vs training; differences are mainly task split / contamination controls.
Co-authored-by: Felipe Vieira Frujeri <ffrujeri@nvidia.com> Signed-off-by: Seph Mard <seph.mard@gmail.com>
Co-authored-by: Felipe Vieira Frujeri <ffrujeri@nvidia.com> Signed-off-by: Seph Mard <seph.mard@gmail.com>
Co-authored-by: Felipe Vieira Frujeri <ffrujeri@nvidia.com> Signed-off-by: Seph Mard <seph.mard@gmail.com>
Clarify agent vs environment ownership, expand training acronyms, treat models as LLM/VLM, and reword the Gym mapping table. Signed-off-by: Seph Mard <smard@nvidia.com>
Generalize model definitions so they are not LLM-specific. Signed-off-by: Seph Mard <smard@nvidia.com>
…IA-NeMo#2355) ## Summary - Rewrite [Key Terminology](https://docs.nvidia.com/nemo/gym/main/about/concepts/key-terminology/) with Gym-aligned definitions (Environment, Agent, Rollout, Benchmark, etc.) - Add an Overview (run flow, Agent/Environment composition, Model server) plus a concept → Gym component map - Cross-link related how-tos (Data, Agent/Model Server, Verifiers, Evaluate, Training, Sandboxes) Fixes NVIDIA-NeMo#1500 ## Test plan - [x] `make docs-check` (0 errors) - [x] `python3 tests/unit_tests/test_fern_docs_links.py` - [x] Confirm Fern docs preview comment on the PR - [x] Skim Overview + glossary sections for clarity on the preview URL --------- Signed-off-by: Seph Mard <smard@nvidia.com> Signed-off-by: Seph Mard <seph.mard@gmail.com> Co-authored-by: Felipe Vieira Frujeri <ffrujeri@nvidia.com>
Summary
Fixes #1500
Test plan
make docs-check(0 errors)python3 tests/unit_tests/test_fern_docs_links.py