Skip to content

v0.1.0

Choose a tag to compare

@finbarrtimbers finbarrtimbers released this 26 Jan 18:15
8befd55

We have made the following changes to open-instruct:

Added

  • Added OLMo-core based DPO training script (#1391).
  • Added SLURM scripts for OLMo SFT training with checkpoint resume support and configurable shuffle seed. #1368
  • Added retry logic with exponential backoff to make_api_request for tool API calls (retries on timeouts, connection errors, 429, and 5xx). Also added configurable max_concurrency parameter to tool configs for controlling Ray actor concurrency per-tool. #1388
  • Added support for generic MCP tools during training, with some limitations (no changing tools, no tool discovery during training). For details: #1384
  • Added the ability to set active tools on a per-sample basis. See the PR for more details: #1382
  • Added a new changelog Github Action that makes sure you contribute to the changelog! #1276
  • Now, we type check open_instruct/dataset_transformation.py (#1390).
  • Added a linter rule that imports go at the top of the file (#1394).
  • Refactors GRPO config into a grpo_utils.py file in preparation for Olmo-core implementation (#1396_.
  • Now, we save the generated rollouts to disk during RL when the --save_traces flag is passed (#1406).
  • Pulls out weight sync code from GRPO into a more generic function (#1411 (review))

Changed

  • Updated library versions via uv lock --upgrade (#1400).
  • Now, large_test_script.sh exercises the tp > 1 code path (#1413).

Fixed

  • Added automatic type coercion for tool arguments via safe_execute() - prevents crashes when models send wrong types (e.g., bool instead of string) (#1418).
  • Fixed argparse conflict error for --save_traces by removing duplicate field definitions from StreamingDataLoaderConfig (#1416).
  • Increased MetricsTracker max_metrics from 64 to 512 to fix ValueError: Exceeded maximum number of metrics when training with many tools or verifier functions (#1415).
  • Fixed JSON serialization error in LocalDatasetTransformationCache.save_config when caching datasets locally (#1402).
  • Now, we can support PRs from external contributors while still maintaining security for internal tokens (#1408).
  • Improved error handling for tool calls with missing/invalid arguments - now returns a clear error message instead of crashing (#1404).
  • Fixed GenerationConfig validation error when saving OLMo-3 models - config is now set after unwrapping the model, and OLMo-3 is detected from both chat_template_name and model name (#1404).
  • Fixed the benchmark so that it runs (#1401).

Removed

  • Removed open_instruct/ppo.py and related PPO training scripts (#1395).
  • Removed scripts/train/debug/tool_grpo_fast.sh; use scripts/train/debug/tools/olmo_3_parser_multigpu.sh for tool use experiments (#1404).