Skip to content

v0.2.0 Release

Latest

Choose a tag to compare

@luyuzhe111 luyuzhe111 released this 19 Oct 23:21
7ba8960

v0.2.0

This release separates agent-server and rollout-client dependencies and moves the main verl and slime integrations onto HTTP rollout sessions.

This release includes breaking changes to installation and the verl/slime agent contracts. See the upgrade notes below before updating an existing environment.

Features and fixes

  • Dependency separation: the bare package has no external dependencies. New server and core extras complement the rollout and gateway extras, and public SDK exports load on first access. The AWS async helpers now use aiobotocore directly, removing the aioboto3 dependency conflict that previously required repository-specific uv overrides (#192).
  • HTTP training rollouts: the main verl and slime integrations construct sessions through make_session() and support AgentCoreRuntimeApp agents. The verl integration shares rollout concurrency and session-start rate limits across workers. The MigrationBench agent and evaluator now use HTTP sessions (#188, #187).
  • Terminal agent example: add a TMax/Harbor evaluation example with separate agent and task sandboxes; verifier tests are delivered after the agent finishes (#185).
  • Sandbox compatibility: tolerate additional execution-result fields and preserve error details (#191).
  • slime training setup: update the pinned slime revision and set attention and hidden dropout to zero in the math training launcher (#187).
  • Examples and documentation: refresh Claude Sonnet model IDs, update the README, and add an installation guide organized by use case (#190, #186, #194).

Upgrade notes

Select installation extras

pip install agentcore-rl-toolkit no longer installs the server SDK or client dependencies. For both agent apps and rollout clients, use:

pip install 'agentcore-rl-toolkit[core]>=0.2.0'

Or use uv add 'agentcore-rl-toolkit[core]>=0.2.0'. Update dependency declarations to include the appropriate extra as well. Select server for agent apps or rollout for clients, sessions, the Sandbox SDK, and AWS helpers. The tinker_api, tinker_skyrl, and verl extras include rollout and gateway dependencies; follow the corresponding backend setup guide for the full training environment.

The a2a extra is now client-only. Agent-server environments using A2A should install a2a-server.

The deployment CLI is installed separately:

uv tool install bedrock-agentcore-starter-toolkit

Declare python-dotenv explicitly if your application imports it. Existing public SDK import names are preserved.

Migrate verl and slime rollout configuration

Replace the previous top-level agent_runtime_arn, s3_bucket, and exp_id configuration with a session backend configuration. For an HTTP agent:

rollout_session_backend:
  backend: agentcore_rl_toolkit.rollout_session.agentcore_http_session.AgentCoreHttpSession
  agentcore_runtime_arn: arn:aws:bedrock-agentcore:<region>:<account-id>:runtime/<runtime-id>

For verl, place this mapping inside the AgentCoreAgentLoop configuration entry; for slime, place it in the custom configuration YAML. Remove the old top-level max_pool_connections setting. The main verl backend also exposes rollout_concurrency for its shared concurrency limit.

Update and redeploy the agent along with the trainer configuration:

Contract Previous integration HTTP integration
Agent app AgentCoreRLApp with @app.rollout_entrypoint AgentCoreRuntimeApp with @app.entrypoint
Model configuration payload["_rollout"] payload["_config"]
Agent-provided reward {"rewards": score_or_list} {"reward": score} with a numeric scalar

Forward payload["_config"]["api_key"] to the model client for trajectory capture. The verl integration requires a finite numeric reward; strings, booleans, lists, and missing rewards are rejected. HTTP sessions retrieve results through the Runtime invocation protocol rather than an S3 result bucket.

Use the math HTTP agent and the verl or slime configuration examples as migration references.

The legacy AgentCoreRLApp and RolloutClient APIs are retained for compatibility. Use HTTP sessions for new training integrations.

MigrationBench evaluation

Use examples/strands_migration_agent/evaluate.py; the separate evaluate_async.py script has been removed.

Full changelog: v0.1.6...v0.2.0