add new crmarena dataset#309
Open
sampatsk wants to merge 1 commit into
Open
Conversation
Contributor
Author
|
The workflow pins OpenHands/extensions/plugins/pr-review@main, which installs openhands-sdk + openhands-tools + lmnr via uv run --with ... but not openhands-agent-server (the package that provides fastapi). openhands-sdk 1.36.0/1.36.1 (released 2026-07-13/15) started importing fastapi at runtime without declaring it as a dependency, so every PR review now crashes. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add CRMArena dataset
Description
Adds
datasets/crmarena/, a new dataset of CRM agent trajectories derived fromSalesforce AI Research's CRMArena benchmark. The public
Salesforce/CRMArenadataset ships only tasks + ground-truth answers (no trajectories), so this
integration converts agent rollouts: the CRMArena tool-calling agent
(
--agent_strategy tool_call --org_type original) was run over the benchmarktasks against a live Salesforce sandbox, and each rollout's OpenAI-style message
history (system prompt → user query → assistant tool calls → tool observations →
final
respond) is converted to ATIF and standardized ATIF, then to OpenHands v0and OpenHands SDK SFT.
Type of Change
Dataset/Agent Information
Salesforce/CRMArena(tasks/answers) + agent harness
SalesforceAIResearch/CRMArena(tools + rollout runner)
datasets/crmarena/LICENSEfunction-calling over 27 CRM tools incl. SOQL/SOSL
testsplit across all 9 original taskcategories; committed sample = one representative trajectory per category
(9 trajectories, 6–11 ATIF steps and 4–9 tool calls each). Rollouts generated
with a GPT-5.1 tool-calling model.
Files Added
Schema Mapping Summary
traj(renamed tomessagesbyextract_raw.py) is an OpenAIchat list, converted by the shared
scripts/raw_to_atif_common.py.system/usermessages → ATIFsystem/usersteps.assistantmessages withtool_calls→ ATIFagentsteps;ToolCallspreserve the original CRMArena function names and JSON arguments.
toolmessages → ATIF observations linked to the preceding tool call viasource_call_id(the originaltool_call_id). Example:call_3dLY… → "2024-04-22T23:59:59Z".task_id,task_type,gt_answer,reward,agent_info)preserved in ATIF
extra.raw.atif_to_std.pyapplies shared normalization while retaining the CRMArenacustom tools declared in
metadata.json.respond(the agent's final-answertool) is kept as a custom tool rather than remapped to the built-in
finish.Testing
Run with the venv activated and
export PYTHONPATH=$(pwd)(repo convention):pytest tests/ -q→ 1158 passed, 1 skipped, 0 failedtest_dataset_structure,test_raw_schemas,test_standardized_schemas,test_std_to_sft_conversion,test_sample_expectations,test_schema_version(all-k crmarena) passscripts/check_sample_fixtures.py --dataset crmarena→ok crmarenaruff check/ruff format --checkclean; all files end with a trailing newline