Spaces:
Build error
Build error
# AgentBench Evaluation | |
This folder contains evaluation harness for evaluating agents on the [AgentBench: Evaluating LLMs as Agents](https://arxiv.org/abs/2308.03688). We currently only support running on the `osbench` subset. | |
## Setup Environment and LLM Configuration | |
Please follow instruction [here](../../README.md#setup) to setup your local development environment and LLM. | |
## Start the evaluation | |
```bash | |
./evaluation/benchmarks/agent_bench/scripts/run_infer.sh [model_config] [git-version] [agent] [eval_limit] | |
``` | |
- `model_config`, e.g. `eval_gpt4_1106_preview`, is the config group name for your | |
LLM settings, as defined in your `config.toml`. | |
- `git-version`, e.g. `HEAD`, is the git commit hash of the OpenHands version you would | |
like to evaluate. It could also be a release tag like `0.6.2`. | |
- `agent`, e.g. `CodeActAgent`, is the name of the agent for benchmarks, defaulting | |
to `CodeActAgent`. | |
- `eval_limit`, e.g. `10`, limits the evaluation to the first `eval_limit` instances. By | |
default, the script evaluates the entire SWE-bench_Lite test set (300 issues). Note: | |
in order to use `eval_limit`, you must also set `agent`. | |
Following is the basic command to start the evaluation. | |
You can update the arguments in the script `evaluation/benchmarks/agent_bench/scripts/run_infer.sh`, such as `--max-iterations`, `--eval-num-workers` and so on. | |
- `--agent-cls`, the agent to use. For example, `CodeActAgent`. | |
- `--llm-config`: the LLM configuration to use. For example, `eval_gpt4_1106_preview`. | |
- `--max-iterations`: the number of iterations to run the evaluation. For example, `30`. | |
- `--eval-num-workers`: the number of workers to use for evaluation. For example, `5`. | |
- `--eval-n-limit`: the number of examples to evaluate. For example, `100`. | |
```bash | |
./evaluation/benchmarks/agent_bench/scripts/run_infer.sh eval_gpt35_turbo HEAD CodeActAgent 1 | |
``` | |
## Run with Remote Runtime (experimental) | |
You can run the evaluation using a remote runtime instead of a local Docker container. This is useful when you want to run the evaluation in a cloud environment or when you don't have Docker installed locally. | |
To use the remote runtime, set the following environment variables: | |
```bash | |
# Required environment variables | |
export ALLHANDS_API_KEY="your-api-key" # Contact the team to get an API key | |
export RUNTIME=remote | |
export SANDBOX_REMOTE_RUNTIME_API_URL="https://runtime.eval.all-hands.dev" | |
# Run the evaluation | |
./evaluation/benchmarks/agent_bench/scripts/run_infer.sh llm.eval_gpt4_1106_preview HEAD CodeActAgent 1 | |
``` | |
The remote runtime will build a container image and run the evaluation in a cloud environment. The results will be saved locally in the same way as when running with a local runtime. | |