Skip to content

feat(example): add Strands Tau2-Bench agent example#76

Merged
ChanningPing merged 3 commits into
mainfrom
feat/strands-taubench-agent
Jun 17, 2026
Merged

feat(example): add Strands Tau2-Bench agent example#76
ChanningPing merged 3 commits into
mainfrom
feat/strands-taubench-agent

Conversation

@ChanningPing

Copy link
Copy Markdown
Contributor

Description of changes:
Adds a tau2-bench RL agent example supporting airline, retail, and telecom domains with deterministic DB / COMMUNICATE / ENV_ASSERTION / ACTION rewards. The agent runs a multi-turn conversation between a vLLM-served assistant (the model being trained) and a Bedrock-backed user simulator, with tool calls executed against fresh tau2-bench environments.

Includes:

  • rl_app.py with multi-agent orchestration
  • reward.py implementing four tau-bench reward axes
  • utils.py with Strands tool wrapping and message-role conversion
  • 3 sample tasks (one per domain) sourced from tau2-bench
  • test_local.py smoke test (local server or deployed ACR agent)
  • Dockerfile with pinned tau2-bench commit
  • README walking developers through deployment end-to-end

Test plan

  • All Python files compile (python3 -m py_compile)
  • Local smoke test against rl_app.py server with airline task — produces full trajectory and reward
  • Deployed ACR agent smoke test
  • Run all three sample tasks (airline / retail / telecom) end-to-end

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@ChanningPing ChanningPing requested a review from luyuzhe111 June 16, 2026 18:38
Comment thread examples/strands_taubench_agent/rl_app.py Outdated
@ChanningPing ChanningPing requested a review from luyuzhe111 June 16, 2026 22:49
Comment thread examples/strands_taubench_agent/README.md Outdated

@luyuzhe111 luyuzhe111 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.

@ChanningPing very neat PR. left a minor comment on agentcore cli installation. feel free to merge after the fix.

Adds a tau2-bench RL agent example supporting airline, retail, and telecom
domains with deterministic DB / COMMUNICATE / ENV_ASSERTION / ACTION rewards.
The agent runs a multi-turn conversation between a vLLM-served assistant
(the model being trained) and a Bedrock-backed user simulator, with tool
calls executed against fresh tau2-bench environments.

Includes:
- rl_app.py with multi-agent orchestration
- reward.py implementing four tau-bench reward axes
- utils.py with Strands tool wrapping and message-role conversion
- 3 sample tasks (one per domain) sourced from tau2-bench
- test_local.py smoke test (local server or deployed ACR agent)
- Dockerfile with pinned tau2-bench commit
- README walking developers through deployment end-to-end
Drop the legacy client-side vLLMModel wrapper in favor of standard
strands.models.openai.OpenAIModel. Token IDs are now captured server-side
by the rllm-model-gateway HTTP proxy used in the verl backend, so
get_token_data() / rollout_data are no longer collected client-side.
Reorder Installation steps so uv venv + activation happen before any
pip install — keeps every dependency (agentcore CLI, example deps, local
toolkit) inside the venv instead of polluting the system Python.
@ChanningPing ChanningPing force-pushed the feat/strands-taubench-agent branch from 16452ba to c96b9ae Compare June 17, 2026 01:30
@ChanningPing ChanningPing merged commit 446503e into main Jun 17, 2026
5 checks passed
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