τ²-bench
Harbor: pendingτ²-bench: 工具增强NLP任务(Pass^N)
- Samples
- N/A
- Released
- 2025
- Scores
- 6
ACEBench is a comprehensive benchmark for evaluating LLM tool-usage ability.
$ npm i -g lettokenburn-cli$ ltb bench info acebench
External harness. No Harbor adapter has been generated for this benchmark yet. `ltb bench info` prints the known links.
Runs happen on your machine with your own subscription; only the score summary is pushed. CLI docs
No sourced scores recorded yet.
Every number links to where it was published. Low-confidence rows are muted and need per-cell verification.
ACEBench is a comprehensive benchmark for evaluating LLM tool-usage ability. It covers 8 major domains and 68 sub-domains with 4,538 APIs in both English and Chinese.
This adapter converts ACEBench into Harbor task format across three dataset splits:
| Dataset | Tasks | Subcategories | Status | |---------|:-----:|---------------|--------| | `acebench-normal` | 823 | 12 | Available | | `acebench-special` | 150 | 3 | Available | | `acebench-agent` | 150 | 2 | Under development |
acebench-normal (823 tasks)Core function-calling evaluation across 12 subcategories:
single_turn_single_function (100), single_turn_parallel_function (100)multi_turn_user_adjust (123), multi_turn_user_switch (100) — each dialogue turn is an independent task with full conversation history embeddedsimilar_api (50), preference (50)atom_bool (50), atom_enum (50), atom_number (50), atom_list (50), atom_object_deep (50), atom_object_short (50)The agent writes a JSON array of tool calls to /workspace/output.json. Evaluation is exact match on function name + parameter types and values.
acebench-special (150 tasks)Edge-case detection across 3 subcategories:
The agent writes a plain-text response to /workspace/output.txt containing specific keyword phrases. Evaluation is keyword-based (deterministic, no LLM judge).
acebench-agent (150 tasks) — Under developmentMulti-turn agent interactions requiring a live simulated-user LLM that responds dynamically across turns:
These tasks cannot be represented as static Harbor tasks because the next user message depends on the agent's previous response. A live simulated-user LLM must dynamically generate responses across multiple turns. The acebench-agent split will be developed following the CooperBench multi-container adapter pattern.
Paper: ACEBench: Who Wins the Match Point in Tool Learning? Source repo: chenchen0103/ACEBench License: MIT
ACEBench addresses limitations in existing tool-use benchmarks by covering multi-turn dialogue contexts, providing granular evaluation dimensions across parameter types, and avoiding LLM-based evaluation (uses deterministic rule-based checkers instead).
Scoring methodology:
--language en|zh)checker.py with embedded ground truth (no external eval dependencies at runtime)solve.sh solutions for all supported categories--categories normal|special|all)datasets/acebench-normal/ # or acebench-special/
└── ace-bench_{original_id}/
├── task.toml
├── instruction.md
├── environment/
│ └── Dockerfile
├── solution/
│ └── solve.sh
└── tests/
├── test.sh
└── checker.py # generated per task with embedded ground truthThe agent writes a JSON array to /workspace/output.json:
[{"function_name": {"param1": "value1", "param2": 42}}]The agent writes a plain-text response to /workspace/output.txt containing specific phrases:
| Subcategory | Required phrase | |---|---| | special_incomplete | "Missing necessary parameters" | | special_error_param | "There is incorrect value" | | special_irrelevant | "the limitations of the function" |
harbor run -d acebench-normal -a claude-code -m "anthropic/claude-opus-4-1" harbor run -d acebench-special -a claude-code -m "anthropic/claude-opus-4-1"
# From harbor repo root harbor run -c adapters/ace-bench/ace-bench.yaml -a claude-code -m "anthropic/claude-opus-4-1" # With locally prepared dataset harbor run -p datasets/acebench-normal -a claude-code -m "anthropic/claude-opus-4-1" harbor run -p datasets/acebench-special -a claude-code -m "anthropic/claude-opus-4-1"
harbor trial start -p datasets/acebench-normal/ace-bench_normal_atom_bool_1
harbor trial start -p datasets/acebench-special/ace-bench_special_incomplete_1 \
-a claude-code -m "anthropic/claude-opus-4-1"acebench-agent (not yet available)The agent split requires a live simulated-user LLM that dynamically generates the next user message based on the agent's previous response — this cannot be represented as a static Harbor task with a fixed instruction. This will be developed following the CooperBench multi-container adapter pattern.
cd adapters/ace-bench # Generate all English tasks (clones repo automatically) python run_adapter.py --output-dir ../../datasets/ace-bench # Quick test — first 20 tasks on