Symbolic Learning Enables Self-Evolving Agents

📄 arXiv: 2406.18532v1 📥 PDF

作者: Wangchunshu Zhou, Yixin Ou, Shengwei Ding, Long Li, Jialong Wu, Tiannan Wang, Jiamin Chen, Shuai Wang, Xiaohua Xu, Ningyu Zhang, Huajun Chen, Yuchen Eleanor Jiang

分类: cs.CL, cs.AI, cs.LG

发布日期: 2024-06-26

备注: Code available at https://github.com/aiwaves-cn/agents


💡 一句话要点

提出Agent Symbolic Learning框架,使语言Agent具备数据驱动的自主进化能力

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 语言Agent 符号学习 自主进化 提示工程 数据驱动

📋 核心要点

  1. 现有语言Agent的研究主要集中在模型和工程层面,依赖人工设计提示、工具和流程,缺乏自主学习和进化的能力。
  2. Agent Symbolic Learning框架将Agent视为符号网络,通过优化提示、工具及其组合方式,实现Agent的自主学习和进化。
  3. 实验结果表明,该框架能够使语言Agent在部署后进行自我更新,并在标准基准和现实任务中取得良好效果。

📝 摘要(中文)

本文提出Agent Symbolic Learning,一个系统性框架,旨在使语言Agent能够以数据为中心,利用符号优化器自主优化自身。该框架将Agent视为符号网络,其中可学习的权重由提示、工具以及它们的堆叠方式定义。Agent Symbolic Learning旨在通过模仿连接主义学习中的反向传播和梯度下降两种基本算法来优化语言Agent中的符号网络。与处理数值权重不同,该框架处理的是权重、损失和梯度的自然语言模拟。在标准基准和复杂的现实世界任务上进行的初步实验表明,Agent Symbolic Learning使语言Agent能够在创建和部署后自我更新,从而实现“自我进化Agent”。

🔬 方法详解

问题定义:当前的语言Agent研究主要依赖于人工工程,例如设计精巧的提示(prompts)、选择合适的工具以及构建有效的pipeline。这些方法缺乏从数据中自主学习和进化的能力,难以适应复杂和动态的环境。因此,如何使语言Agent具备数据驱动的自主进化能力是一个关键问题。

核心思路:本文的核心思路是将语言Agent视为一个符号网络,其“权重”由提示、工具以及它们之间的连接方式来定义。通过模仿连接主义学习中的反向传播和梯度下降算法,利用符号优化器来优化这些“权重”,从而使Agent能够根据环境反馈自主学习和进化。这种方法的核心在于将数值优化问题转化为符号优化问题,从而利用语言模型处理自然语言形式的权重、损失和梯度。

技术框架:Agent Symbolic Learning框架包含以下几个主要步骤:1) 将语言Agent表示为符号网络,明确提示、工具和连接方式;2) 定义损失函数,用于评估Agent在特定任务上的表现;3) 利用语言模型生成权重、损失和梯度的自然语言模拟;4) 使用符号优化器,例如基于提示工程的方法,根据梯度信息更新Agent的“权重”;5) 迭代执行上述步骤,直到Agent的性能达到预期水平。

关键创新:该方法最重要的创新在于将连接主义学习中的反向传播和梯度下降算法的思想引入到语言Agent的优化中,并将其转化为符号优化问题。与传统的数值优化方法不同,Agent Symbolic Learning直接操作自然语言形式的权重,从而避免了对Agent内部参数的直接访问和修改。这种方法使得Agent能够在不改变其底层模型结构的情况下,通过调整提示、工具和连接方式来实现自我进化。

关键设计:在Agent Symbolic Learning框架中,关键的设计包括:1) 如何有效地表示Agent的符号网络结构;2) 如何定义合适的损失函数来衡量Agent的性能;3) 如何利用语言模型生成高质量的权重、损失和梯度的自然语言模拟;4) 如何设计有效的符号优化器来更新Agent的“权重”。这些设计需要根据具体的任务和Agent的结构进行调整和优化。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

论文在标准基准和复杂的现实世界任务上进行了实验,结果表明Agent Symbolic Learning能够有效地提升语言Agent的性能。具体来说,通过自我更新,Agent在任务完成度和效率方面均取得了显著提升。这些实验结果验证了该框架的有效性和潜力。

🎯 应用场景

Agent Symbolic Learning具有广泛的应用前景,例如可以应用于智能客服、自动化内容生成、智能决策支持等领域。通过使Agent具备自主进化能力,可以降低人工维护和优化的成本,提高Agent的适应性和鲁棒性。未来,该方法有望推动通用人工智能的发展,使Agent能够更好地理解和解决现实世界中的复杂问题。

📄 摘要(原文)

The AI community has been exploring a pathway to artificial general intelligence (AGI) by developing "language agents", which are complex large language models (LLMs) pipelines involving both prompting techniques and tool usage methods. While language agents have demonstrated impressive capabilities for many real-world tasks, a fundamental limitation of current language agents research is that they are model-centric, or engineering-centric. That's to say, the progress on prompts, tools, and pipelines of language agents requires substantial manual engineering efforts from human experts rather than automatically learning from data. We believe the transition from model-centric, or engineering-centric, to data-centric, i.e., the ability of language agents to autonomously learn and evolve in environments, is the key for them to possibly achieve AGI. In this work, we introduce agent symbolic learning, a systematic framework that enables language agents to optimize themselves on their own in a data-centric way using symbolic optimizers. Specifically, we consider agents as symbolic networks where learnable weights are defined by prompts, tools, and the way they are stacked together. Agent symbolic learning is designed to optimize the symbolic network within language agents by mimicking two fundamental algorithms in connectionist learning: back-propagation and gradient descent. Instead of dealing with numeric weights, agent symbolic learning works with natural language simulacrums of weights, loss, and gradients. We conduct proof-of-concept experiments on both standard benchmarks and complex real-world tasks and show that agent symbolic learning enables language agents to update themselves after being created and deployed in the wild, resulting in "self-evolving agents".