AgentBench
用于评测大语言模型在多轮环境中执行任务能力的基准套件。
- Star 数
- ★ 3.8k
- 最近更新
- 9 个月前
- License
- Apache-2.0
- 主语言
- Python
- FA 评分
- 证据不足
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配OpenAI API
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 高 · 需要较重的基础设施
- 开始前需要
- 典型场景
- 模型研究团队需要在数据库、操作系统、知识图谱和网页购物等环境中比较候选模型时,可部署 FC 版本并运行对应 worker。
- 不适合
- 希望开箱即用、无需自行搭建 Docker 与数据服务的个人用户
- 内存不足 16GB 的笔记本或小型机器
- 需要长期稳定运行、不能容忍 alfworld 内存泄漏的团队
这个 Agent 能做什么,适合哪些场景?
AgentBench 是一个评测大语言模型作为自主执行主体表现的基准项目,当前仓库提供基于函数调用的 AgentBench FC,并与 AgentRL 集成。FC 版本通过 Docker Compose 部署 AgentRL Controller、任务 worker、Freebase 服务和 Redis,覆盖 alfworld、dbbench、knowledgegraph、os_interaction 与 webshop 五类任务。项目也保留了原始 v0.2 的说明:该版本包含八个环境,并提供 Dev 与 Test 数据划分。旧版通过任务 worker、controller 和 assigner 组织评测流程,支持用配置中的 OpenAI Chat 模型运行任务。它适合需要自建、可重复的多环境评测基础设施的研究者或模型团队,而不是提供面向终端用户的通用对话式助手。
在 FC 部署中,执行 docker compose -f extra/docker-compose.yml up 会启动 AgentRL Controller、五类任务 worker、knowledgegraph 所需的 Freebase 服务和 Redis 容器分配服务;其中 dbbench 使用 mysql:8,os_interaction 需要构建 local-os/default、local-os/packages 与 local-os/ubuntu 镜像。knowledgegraph 需要将 Freebase 数据放到 ./virtuoso_db/virtuoso.db,或修改 extra/docker-compose.yml 的挂载点。旧版流程通过 python -m src.client.agent_test 检查模型配置,以 python -m src.start_task -a 启动任务 worker,再由 python -m src.assigner 发起评测。该流程产生各模型在测试集上的任务分数,并在项目排行榜中汇总展示。
- 模型研究团队需要在数据库、操作系统、知识图谱和网页购物等环境中比较候选模型时,可部署 FC 版本并运行对应 worker。
- 希望复现实验性 LLM-as-Agent 测评的研究者,可使用旧版 v0.2 的 Dev/Test 划分、任务服务和 assigner 流程。
- 已有 OpenAI API 密钥、希望先验证
gpt-3.5-turbo-0613配置是否可用的工程师,可运行src.client.agent_test。 - 需要控制资源占用的个人研究者,可在旧版使用
configs/start_task_lite.yaml与configs/assignments/lite.yaml以每任务一个 worker 运行。 - 需要本地运行知识图谱任务的团队,可部署 Freebase 服务并在
configs/tasks/kg.yaml配置自己的 SPARQL 服务地址。
如何安装或部署这个 Agent?
当前 FC 版本需要 Docker 和 Docker Compose。先准备镜像:docker pull mysql:8;随后分别执行 docker build -t local-os/default -f ./data/os_interaction/res/dockerfiles/default data/os_interaction/res/dockerfiles、docker build -t local-os/packages -f ./data/os_interaction/res/dockerfiles/packages data/os_interaction/res/dockerfiles、docker build -t local-os/ubuntu -f ./data/os_interaction/res/dockerfiles/ubuntu data/os_interaction/res/dockerfiles。下载并解压 Freebase-Setup 数据后,将数据库放在 ./virtuoso_db/virtuoso.db。README 未说明 FC 版本配置模型凭据或提交评测作业的具体命令。若使用旧版 v0.2,README 推荐以 conda 创建 Python 3.9 环境并执行 pip install -r requirements.txt,然后在 configs/agents/openai-chat.yaml 填入 OpenAI API Key。
如何使用这个 Agent?
启动当前 FC 栈:docker compose -f extra/docker-compose.yml up。该命令会启动 Controller、五类任务 worker、Freebase 和 Redis;若本机已有 Redis 7+,可从 compose 文件中省略 Redis 服务。旧版 v0.2 的首个完整评测调用为:先运行 python -m src.start_task -a,等待任务服务就绪后执行 python -m src.assigner;轻量配置分别使用 python -m src.start_task -a --config configs/start_task_lite.yaml 与 python -m src.assigner --config configs/assignments/lite.yaml。
这个 Agent 有哪些优点和局限?
- 当前 FC 版本将五类任务、AgentRL Controller、Freebase 与 Redis 纳入 Docker Compose 部署,便于统一拉起评测环境。
- 原始基准覆盖八个差异明显的环境,包括 OS、DB、KG、数字卡牌、横向思维谜题、家务、网页购物和网页浏览。
- 旧版提供 task worker、controller 与 assigner 的明确执行路径,以及普通和轻量两套启动配置。
- README 明确列出了任务启动时间和单 worker 的大致内存占用,便于容量规划。
- 当前 FC 文档未给出配置模型凭据、调用 Controller 或启动实际评测作业的具体命令。
- webshop 环境启动约需 16GB 内存;旧版表格也标注其单 worker 内存约为 15GB。
- README 明确警告当前 alfworld 实现会持续泄漏内存和磁盘空间,需重启 task worker。
- knowledgegraph 依赖额外的 Freebase 数据和服务部署;旧版在线服务被说明为不稳定。
- 旧版依赖较旧的科学计算包,README 推荐 Python 3.9 以提高安装可靠性。
这个 Agent 与同类方案有什么区别?
AgentBench 将其原始八环境中的 House-Holding、Web Shopping 和 Web Browsing 分别建立在已发布的 ALFWorld、WebShop 和 Mind2Web 数据集之上;其余五个领域在 README 中被描述为新创建的环境。VisualAgentBench 是同一组织介绍的视觉基础执行主体评测项目,覆盖具身、GUI 与视觉设计环境,范围不同于 AgentBench 的文本任务环境。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| AgentBench 当前 | 证据不足 | 自托管服务免费 + 模型费 | ★ 3.8k | 9 个月前 | Python | OpenAI API |
| ToolBench 与 ToolLLaMA | 32 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 5.8k | 1 年前 | Python | OpenAI API |
| Mnemosyne | 59 · 缺口较多 | 命令行工具免费 | ★ 3.6k | 2 天前 | Python | Codex · Claude Code |
| Graphiti:面向AI代理的时序知识图谱引擎 | 50 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 33k | 2 天前 | Python | OpenAI API · Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据不足:仓库未提供权限管理、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚或来源归属的说明。所有标准均未得到支持,因此评分为0。
证据不足:未提供自洽性、依赖可用性或失败消息的说明。所有标准均未得到支持,因此评分为0。
证据不足:未提供受众与场景、能力边界、触发精度或环境适配的说明。所有标准均未得到支持,因此评分为0。
证据不足:未提供信息架构、安装说明、命名稳定性、示例与FAQ、已知限制、许可证、版本变更日志或维护责任的说明。所有标准均未得到支持,因此评分为0。
证据不足:未提供输出可用性、边际价值或成本效益的说明。所有标准均未得到支持,因此评分为0。
证据不足:未提供声明可追溯性、跨来源佐证或事实与推断分离的说明。所有标准均未得到支持,因此评分为0。
- 源码中未见:最小权限约束只授予完成任务所需的权限:用专用账号或只读令牌,并限定可访问的目录和仓库。
- 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
- 源码中未见:数据流向说明运行时观察它连接了哪些外部服务(代理或防火墙日志);弄清数据去向之前不要输入敏感数据。
- 源码中未见:敏感信息处理使用专用、低权限、可随时吊销的 API 密钥,不要复用生产凭据,也不要让密钥出现在日志里。
- 源码中未见:依赖安全审查安装前固定版本并做一次依赖扫描(如 npm audit、pip-audit);优先放在容器里运行。
- 源码中未见:外部影响披露先弄清它会写入、发送或修改哪些外部系统,用测试账号或测试仓库验证后再接入正式环境。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 源码中未见:来源归属可核验从官方仓库或包源安装,核对发布者和仓库地址,避免同名仿冒包。
- 该仓库是一个基准测试框架,而非可直接使用的Agent产品;其用途是评估LLM代理,而非作为代理本身。
- 仓库未提供任何安全或信任相关的文档,如权限管理、数据流透明或敏感数据处理。
- 依赖项未固定版本,且未提供安全审计或漏洞缓解措施。
- 发布者身份未经验证,且未提供维护责任或更新路径的明确说明。
常见问题
运行 AgentBench FC 需要付费模型 API 吗?
configs/agents/openai-chat.yaml 填入 OpenAI API Key。是否可以不使用 Docker?
知识图谱任务为什么需要额外准备?
./virtuoso_db/virtuoso.db 或调整 compose 挂载;旧版可在 configs/tasks/kg.yaml 指定自己的 SPARQL 地址。