Releases: OpenPipe/ART
Releases · OpenPipe/ART
v0.5.7
v0.5.6
Release Highlights
What's Changed
- fix: Pin vLLM to 0.13.0 (#501)
- release: Bump version to 0.5.5 (#500)
- feat: Add support for a LocalBackend Tinker model service (#499)
Full Changelog: v0.5.5...v0.5.6
v0.5.5
Release Highlights
What's Changed
- feat: Add support for a LocalBackend Tinker model service (#499)
- feat: Default loss to CISPO (#498)
- refactor: Remove coupled Unsloth service, upgrade to vLLM 0.11+ (#497)
- Deploy to model name + " (deployment)" (#496)
- Support more LoRA models in WandbDeploymentConfig (#495)
- Log metrics horizontally in W&B to simplify comparison to future runs (#494)
- Return 0th checkpoint (#492)
- Ensure bucket exists before pushing model weights (#491)
- Release v0.5.4 (#488)
- Revert "Update version to
0.5.4" (#487) - Update version to
0.5.4(#485)
Full Changelog: v0.5.4...v0.5.5
v0.5.4
Release Highlights
This patch release adds checkpoint download functionality and includes fixes for SkyPilot and package configuration.
New Features
- Download Checkpoint: Much simpler workflow for downloading checkpoints from training runs
Bug Fixes
- Fixed
--systemflag foruv pip installon SkyPilot backend - Replaced deprecated
uv.dev-dependencieswithdependency-groupsin package configuration
What's Changed
- Add download checkpoint functionality (#464)
- fix: add --system flag to uv pip install for SkyPilot backend (#462)
- fix: replace deprecated uv.dev-dependencies with dependency-groups (#484)
Full Changelog: v0.5.3...v0.5.4
v0.5.3
Release Highlights
What's Changed
- Release version
0.5.2(#457) - Remove openpipe dependency (#456)
- Add
strip_logprobsutility function (#455) - fix: Handle RULER rewards when all trajectories are identical (#454)
- Make copy.copy work for trajectories (#453)
- Fix lint (#451)
- feat: Add OpenEnv integration example (#445)
- Release v0.5.1 (#442)
Full Changelog: v0.5.1...v0.5.3
v0.5.1
Release Highlights
What's Changed
- Record
auto_metricson trajectory (#440) - Fix ruff formatting (#438)
- Document Qwen3 14B instead of Qwen2.5 14B in non-tutorial examples (#437)
- Small docs change (#433)
- Serverless documentation (#432)
- Retry GET and DELETE (#431)
- Release v0.5.0 (#428)
- Release v0.4.12 (#427)
- feat: Add VLM support (#412)
Full Changelog: v0.5.0...v0.5.1
v0.5.0
v0.4.12
Release Highlights
What's Changed
- Add client-side error capturing (#426)
- Send wandb-artifact:/// prefix as part of inference name. (#425)
- Report serverless metrics (#424)
- feat: Add placeholder _log() implementation for ServerlessBackend (#422)
- Upgrade SkyPilot to 0.10.3.post1 (#421)
- fix: exit the loop in the monitor_openai_server (#418)
- feat: Upgrade Unsloth (#408)
- add playwright agent example to dev/ART (#402)
- feat: Update SkyPilot to 0.10.2 (#393)
- Update training details (#389)
LocalBackend._monitor_openai_serverimprovement (#388)- Add RULER scoring to LG integration example (#385)
- Show open deep research tutorial (#384)
- Minor open deep research doc edits (#383)
- Add deep research tutorial (#382)
- Show GSPO docs page (#381)
- Add MCP•RL doc, remove GSPO (#380)
- Add news item on LangGraph (#379)
gather_trajectory_groups: fusedafter_eachcallback to group await (#378)- Document RULER in README (#376)
- Release v0.4.11 (#374)
- Pin gql verion to fix (#372)
- Update nb links (#371)
- Allow run_checks.sh to succeed on mac (#370)
- Add art.mcp package, release
0.4.10(#369)
Full Changelog: v0.4.11...v0.4.12
v0.4.11
Release Highlights
This patch release includes bug fixes, documentation improvements, and a new MCP package:
New Features
- MCP Package: Added
art.mcppackage for Model Context Protocol integration
Bug Fixes
- Fixed GraphQL dependency compatibility by pinning
gqlpackage to< 4 - Fixed
run_checks.shscript to succeed on macOS
Documentation & Examples
- Updated notebook links and examples
- Improved LangGraph integration documentation
- Better documentation for
wrap_rolloutfunction
What's Changed
- Add art.mcp package (#369)
- Pin gql version to fix compatibility (#372)
- Allow run_checks.sh to succeed on mac (#370)
- Update nb links (#371)
- Properly document wrap_rollout (#368)
- Update LangGraph docs (#367)
- Link to LangGraph (#365)
- Update LangGraph integration doc (#363)
Full Changelog: v0.4.9...v0.4.11
v0.4.9 - LangGraph Integration
🕸️ LangGraph Integration - Build Smarter Multi-Step Agents
This release introduces seamless integration with LangGraph, enabling you to train sophisticated ReAct-style agents that improve through reinforcement learning without manual prompt engineering.
✨ Major Features
- 🆕 LangGraph Integration - Drop-in replacement for LangGraph's LLM initialization with automatic logging and trajectory capture
- 🔄 Multi-Step Agent Training - Train agents that reason, use tools, and adapt their behavior over time
- 📊 Auto Trajectory Generation - Automatic conversion of LangGraph agent executions into ART training data
- ⚡ RULER Compatibility - Use ART's general-purpose reward function without hand-crafted rewards
🔧 Improvements
- Type Safety - Enhanced type annotations and fixes for LangGraph integration
- Memory Management - Better CUDA cache management and garbage collection utilities
- Dependencies - Pinned litellm to version 1.74.1 for stability
- Code Quality - Refactored logger imports and async tokenizer methods
📚 Documentation & Examples
- New Documentation - Comprehensive LangGraph integration guide with examples
- Updated README - Featured LangGraph integration in main project description
- Example Notebook - ART•E LangGraph notebook for training email search agents
- License Updates - Updated third-party notices and licensing information
🔧 Code Example
import art
from art.langgraph import wrap_rollout, init_chat_model
from langgraph import create_react_agent
@wrap_rollout(model)
async def run_agent(scenario: str) -> art.Trajectory:
agent = create_react_agent(init_chat_model(), tools)
result = await agent.ainvoke({"messages": [("user", scenario)]})
return art.Trajectory() # Automatically captured
# Train with RULER - no reward engineering needed!
await art.train(model, reward_function="ruler")