Skip to content

docs(readme): document the create_trainer training providers#960

Merged
sundargthb merged 1 commit into
strands-labs:mainfrom
sundargthb:docs/training-providers
Jul 1, 2026
Merged

docs(readme): document the create_trainer training providers#960
sundargthb merged 1 commit into
strands-labs:mainfrom
sundargthb:docs/training-providers

Conversation

@sundargthb

Copy link
Copy Markdown
Contributor

What

The README documents create_policy providers in depth (a dedicated Policy providers section with a provider table), but there is no equivalent for create_trainer, its training-side peer. The RL trainers added in #915 / #918 / #920 (create_trainer("ppo"), create_trainer("fast_sac")) only appear in the CHANGELOG.

This adds a Training providers section mirroring the Policy providers layout.

Contents

  • create_trainer / TrainSpec usage (imitation post-tuning and from-scratch RL), matching the pattern in strands_robots/training/__init__.py.
  • A provider table: lerobot_local, groot, cosmos3, mock (imitation) and ppo, fast_sac (RL).
  • A note on the RL lane: BaseRLAlgo, the validate -> prepare -> train -> export lifecycle, VecSimEnv rollouts, and BaseRLAlgo.evaluate().

Verification

Every claim checked against source on main:

  • provider names → register_trainer("ppo", ...) / register_trainer("fast_sac", ...) in training/__init__.py; imitation trainers in training/{lerobot,groot,cosmos3,mock}.py.
  • create_trainer(provider, **kwargs) -> Trainer and the validate/prepare/train/export methods → training/base.py and training/factory.py.
  • TrainSpec fields (dataset_root, base_model, output_dir, method, steps) → training/base.py; method values full | lora | ....
  • VecSimEnv description → its class docstring and the feat(training): VecSimEnv - N independent SimEnv as one (N, D)-batched env #918 commit title.

Docs only, no code changes.

The README covered create_policy providers in depth but had no section for
create_trainer, its training-side peer. Add a Training providers section that
mirrors the Policy providers layout: the create_trainer/TrainSpec usage, a
provider table (lerobot_local, groot, cosmos3, mock, ppo, fast_sac), and a note
on the from-scratch RL trainers (BaseRLAlgo lifecycle, VecSimEnv rollouts,
evaluate()). Surfaces the RL lane (strands-labs#915, strands-labs#918, strands-labs#920) that only lived in the
CHANGELOG.

@yinsong1986 yinsong1986 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary

Docs-only PR (+36/-0 in README.md) adding a Training providers section that mirrors the existing Policy providers layout. It documents create_trainer/TrainSpec for both imitation post-tuning and from-scratch RL, a provider table, and a note on the RL lane (BaseRLAlgo, the validate -> prepare -> train -> export lifecycle, VecSimEnv rollouts, BaseRLAlgo.evaluate(), and the torch-free-until-first-use property).

What's good

  • Every claim checks out against source on main: create_trainer(provider, **kwargs) -> Trainer (training/factory.py:116); the four imitation providers' trainer blocks in registry/policies.json (mock/groot/lerobot_local/cosmos3); register_trainer("ppo"/"fast_sac", ...) in training/__init__.py:59,68; TrainSpec fields dataset_root/base_model/output_dir/method (full|lora|...)/steps in training/base.py; PpoTrainer(BaseRLAlgo) / FastSacTrainer(BaseRLAlgo); the VecSimEnv "N independent SimEnv as one batched env" wording matches its class docstring verbatim; train_policy wraps create_trainer (tools/train_policy.py:160,181); the groot embodiment-tag and cosmos3 multi-node HSDP notes are accurate.
  • Scope discipline: pure documentation, no code touched.
  • No emojis or non-ASCII in the added section, and no host paths — consistent with AGENTS.md string-hygiene and no-host-path conventions.

@sundargthb sundargthb merged commit ff9733c into strands-labs:main Jul 1, 2026
6 checks passed
@sundargthb sundargthb deleted the docs/training-providers branch July 1, 2026 21:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants