智谱ChatGLM发布:AgentBench:基础模型 Agent 评测

来源:

https://mp.weixin.qq.com/s/-l85RMutoWMRLDPerM9Ziw

‬介绍

将 LLMs 视作 agent,可以产生许多创新性的工作。近期受到广泛关注的 AutoGPT、BabyAGI 和 AgentGPT 便是这方面的尝试。


然而,哪些模型更适合作为 agent,其表现又如何?据我们观察,至今还没有一个合适的评测能够去衡量。

因此,我们提出了 AgentBench。这是一个多维演进基准测试,包括 8 个不同环境,可以用来评估 LLMs 在多回合开放式生成环境中的推理和决策能力。

经过对 25 个语言模型的测试,我们发现:顶级商业语言模型在复杂环境中表现出色,与开源模型存在显著差距

而另一方面,v0.2 版本的 ChatGLM2 在几个闭源模型的对比中,评测分数并不是很好,这需要我们在未来的工作中着重改进。


数据集、环境和集成评估包已在这里发布:https://github.com/THUDM/AgentBench

# AgentBench

AgentBench 包括 8 个环境,其中 5 个是首创,另外 3 个是根据已发布的数据集进行重新编译得到。


具体如下:

- 操作系统(OS):考察 LLM 在 bash 环境进行文件操作、用户管理等能力。

- 数据库(DB):考察 LLM 利用 SQL 对给定数据库进行操作的能力。

- 知识图谱(KG):考察 LLM 利用工具从知识图谱中获取复杂知识的能力。

- 卡牌对战(DCG):考察 LLM 作为玩家,根据规则和状态进行卡牌对战的策略决策能力。

- 情景猜谜(LTP):这个游戏需要 LLM 针对谜题进行提问,从而猜出答案,能够考察 LLM 的横向思维能力。

- 家居(HH):在模拟的家庭环境下,LLM 需要完成一些日常任务,主要考察 LLM 将复杂的高级目标拆解为一系列简单行动的能力。

- 网络购物(WS):在模拟的在线购物环境中,LLM 需要按照需求完成购物,主要考察 LLM 的自主推理和决策能力。

- 网页浏览(WB):在模拟网页环境中,LLM需要根据指令完成跨网站的复杂任务,考察 LLM 作为 Web agent的能力。


# 评测

我们初步选择了25个闭源/开源的模型,通过API或Docker的方式进行测试。整体分数对比如下:


具体分数如下:



为了更加易读,我们选择几个模型制作了雷达图:



# 结论及分析

在我们的研究中,我们可以得出两个主要结论:

结论一:顶级 LLM 已经具备了处理真实世界环境交互的强大能力。

举例来说,GPT-4 在 AgentBench 的 8 个数据集中有 7 个表现最佳;在「家居(HH)」上,也实现了 78% 的成功率,这表明它在这种情况下具有实际可用性。而其他基于 API 的 LLM,虽然表现相对较差,但或多或少能够解决一些问题,这表明这些模型有具备这种能力的潜力。

结论二:大多数开源 LLM 在 AgentBench 中的表现远不如基于 API 的 LLM(平均分为 0.42 对比 2.24)。

即使是能力最强的开源模型 openchat-13b-v3.2 也与 gpt-3.5-turbo 存在明显的性能差距。这个结果与网上存在的一些开源 LLM 许多声称可以与 gpt-3.5-turbo 和 gpt-4 相媲美,有很大的不符。对于开源的 LLM,它们在诸如知识图谱(KG)、卡牌对战(DCG)和家居(HH)等具有挑战性的任务中通常无法解决任何问题。

通过深入分析评测结果,我们认为 LLM-as-agent 需要应对以下几个问题:

动作有效性。在我们的评估过程中,我们发现模型并不总是在遵循指令。换句话说,模型的预期输出并不总是处于环境可以接受的输入空间中。几种常见的错误包括:1)模型没有理解指令,所以也就没有输出动作;2)模型输出了动作,但却是错误的或不完整的。所以如何确保动作有效,是一个需要改进的方向。

长上下文。我们注意到一些开源模型的上下文长度只有 2k tokens,这会极大地影响它们在交互任务中的表现,有些任务需要较长的指令和反馈,这有可能会超过上下文长度,导致模型忽略了可能的有用信息。因此,扩展上下文长度可能会提高多轮对话的性能。

多轮一致性。有些任务(例如家居)需要很多轮对话,但每轮对话都比较简短。这导致一些模型在多轮对话中会丢失掉自己的角色。最常见的错误就是输出道歉并表示无法回答。所以,如何在多轮对话中保持一致性,是一个具有挑战性的工作。

代码训练的平衡。相比 ChatGLM-6B,codegeex2-6b-chat 是用更多的代码数据训练出来的,我们通过对比发现,前者在 OS、DB、KG、WS 等方面明显优于后者,然而在需要逻辑推理的 情景猜谜(LTP)上性能却下降不少。而另一方面,进行了代码训练的 wizardcoder 的表现却并不是很好。我们的推测是,代码训练的单轮格式减弱了其多轮能力。因此,用代码数据训练,可以提高部分能力,但同时也会导致其他能力的减弱。


# One More Thing

* 在本次测评中,我们注意到V0.2 版本的 ChatGLM2 在 8 个闭源模型中的表现较差,这需要我们在未来的工作中着重改进。

* 欢迎国内外做大模型的企业和高校使用 AgentBench 进行测评,共同推进 LLM-as-agent 的发展。

* 尽管开源生态在近期势头较盛,然而开源模型在 LLM-as-agent 的表现依然有待提升。这可能需要开源社区着重发力。

评测,让我们看到差距,并努力改进;在互卷的同时,也不断自卷。

举报
评论 0