EvoAgentBench is a benchmark for evaluating AI agent self-evolution β the ability of agents to improve their performance by learning from past experiences. It provides standardized train/test splits across five diverse task domains, enabling reproducible comparison of skill extraction and experience reuse methods.
| Domain | Base Dataset | Train | Test | Task Format |
|---|---|---|---|---|
| Information Retrieval | BrowseComp-Plus | 154 | 65 | Multi-constraint entity identification via web search |
| Reasoning & Problem Decomposition | OmniMath | 478 | 100 | Competition-level mathematical reasoning |
| Software Engineering | SWE-Bench | 87 | 56 | Real-world GitHub issue resolution |
| Code Implementation | LiveCodeBench | 182 | 86 | Competitive programming problems |
| Knowledge Work | GDPVal | 105 | 60 | Document-grounded question answering |
Total: 1006 train + 367 test tasks
EvoAgentBench/
βββ Information Retrieval/
β βββ task_split.json
βββ Reasoning & Problem Decomposition/
β βββ test_set_100/
β βββ train.jsonl # 478 OmniMath problems (train)
β βββ test.jsonl # 100 OmniMath problems (test)
β βββ index_map.json # test index -> problem metadata
β βββ skip.json # problems to skip during evaluation
βββ Software Engineering/
β βββ task_split.json
βββ Code Implementation/
β βββ task_split.json
βββ Knowledge Work/
βββ task_split.json
βββ meta_prompts/
βββ reference_files/
Each task_split.json contains train/test task ID lists that reference the original benchmark datasets. For OmniMath the actual problems are included directly (test_set_100/*.jsonl). For Knowledge Work, task IDs reference the openai/gdpval dataset; per-occupation meta prompts are included under meta_prompts/, and per-task reference files are downloaded from GDPVal on first use (see reference_files/README.md).
EvoAgentBench follows a three-phase self-evolution protocol:
The train/test splits are designed so that:
# Option 1: git clone
git clone https://huggingface.co/datasets/EverMind-AI/EvoAgentBench
# Option 2: huggingface_hub
python -c "
from huggingface_hub import snapshot_download
snapshot_download('EverMind-AI/EvoAgentBench', repo_type='dataset', local_dir='data/')
"
See the paper for the full evaluation protocol and agent setup.
import json
from huggingface_hub import hf_hub_download
# Download a specific task split
path = hf_hub_download(
"EverMind-AI/EvoAgentBench",
"Information Retrieval/task_split.json",
repo_type="dataset"
)
splits = json.loads(open(path).read())
train_ids = splits["train"] # 154 task IDs
test_ids = splits["test"] # 65 task IDs
EvoAgentBench: Benchmarking Agent Self-Evolution via Ability Transfer
@misc{gao2026evoagentbench,
title={EvoAgentBench: Benchmarking Agent Self-Evolution via Ability Transfer},
author={Xingze Gao and Chuanrui Hu and Hongda Chen and Pengfei Yao and Zhao Wang and Yi Bai and Zhengwei Wu and Yunyun Han and Xiaofeng Cong and Jie Gui and Yafeng Deng and Teng Li},
year={2026},
eprint={2607.05202},
archivePrefix={arXiv},
url={https://arxiv.org/abs/2607.05202}
}
Apache 2.0
14 commits
EvoAgentBench is a benchmark for evaluating AI agent self-evolution β the ability of agents to improve their performance by learning from past experiences. It provides standardized train/test splits across five diverse task domains, enabling reproducible comparison of skill extraction and experience reuse methods.
| Domain | Base Dataset | Train | Test | Task Format |
|---|---|---|---|---|
| Information Retrieval | BrowseComp-Plus | 154 | 65 | Multi-constraint entity identification via web search |
| Reasoning & Problem Decomposition | OmniMath | 478 | 100 | Competition-level mathematical reasoning |
| Software Engineering | SWE-Bench | 87 | 56 | Real-world GitHub issue resolution |
| Code Implementation | LiveCodeBench | 182 | 86 | Competitive programming problems |
| Knowledge Work | GDPVal | 105 | 60 | Document-grounded question answering |
Total: 1006 train + 367 test tasks
EvoAgentBench/
βββ Information Retrieval/
β βββ task_split.json
βββ Reasoning & Problem Decomposition/
β βββ test_set_100/
β βββ train.jsonl # 478 OmniMath problems (train)
β βββ test.jsonl # 100 OmniMath problems (test)
β βββ index_map.json # test index -> problem metadata
β βββ skip.json # problems to skip during evaluation
βββ Software Engineering/
β βββ task_split.json
βββ Code Implementation/
β βββ task_split.json
βββ Knowledge Work/
βββ task_split.json
βββ meta_prompts/
βββ reference_files/
Each task_split.json contains train/test task ID lists that reference the original benchmark datasets. For OmniMath the actual problems are included directly (test_set_100/*.jsonl). For Knowledge Work, task IDs reference the openai/gdpval dataset; per-occupation meta prompts are included under meta_prompts/, and per-task reference files are downloaded from GDPVal on first use (see reference_files/README.md).
EvoAgentBench follows a three-phase self-evolution protocol:
The train/test splits are designed so that:
# Option 1: git clone
git clone https://huggingface.co/datasets/EverMind-AI/EvoAgentBench
# Option 2: huggingface_hub
python -c "
from huggingface_hub import snapshot_download
snapshot_download('EverMind-AI/EvoAgentBench', repo_type='dataset', local_dir='data/')
"
See the paper for the full evaluation protocol and agent setup.
import json
from huggingface_hub import hf_hub_download
# Download a specific task split
path = hf_hub_download(
"EverMind-AI/EvoAgentBench",
"Information Retrieval/task_split.json",
repo_type="dataset"
)
splits = json.loads(open(path).read())
train_ids = splits["train"] # 154 task IDs
test_ids = splits["test"] # 65 task IDs
EvoAgentBench: Benchmarking Agent Self-Evolution via Ability Transfer
@misc{gao2026evoagentbench,
title={EvoAgentBench: Benchmarking Agent Self-Evolution via Ability Transfer},
author={Xingze Gao and Chuanrui Hu and Hongda Chen and Pengfei Yao and Zhao Wang and Yi Bai and Zhengwei Wu and Yunyun Han and Xiaofeng Cong and Jie Gui and Yafeng Deng and Teng Li},
year={2026},
eprint={2607.05202},
archivePrefix={arXiv},
url={https://arxiv.org/abs/2607.05202}
}
Apache 2.0
14 commits