Agent is all you need | AI智能体前沿进展总结

作者 / Master Kunlun 编辑 / Editor Kunlun

技术日新月异,人类生活方式正在快速转变,这一切给人类历史带来了一系列不可思议的奇点。我们曾经熟悉的一切,都开始变得陌生。

一、自主智能体概述(Autonoumous Agent)

智能体(Agent) 的概念其实已经和AI一样古老了,此前agent相关的研究集中在强化学习(Reinforcement learning)以及机器人学(Robotics)中,例如deepmind的Alphago和openai的OpenaiFive都是比较典型的基于强化学习智能体运用。

最近关于agent的研究和话题开始呈现井喷之势,例如AutoGPT, BabyAGI, Generative Agents, MetaGPT等项目在github上已狂揽上万star,成为炙手可热的明星项目。

相比于之前的基于强化学习的Agent研究,本文的agent主要是指以大模型技术(LLM)作为主体或者大脑,能进行自动规划,拥有自主决策能力,以解决复杂问题的智能体。

和Agent的现实潜力相比,现在的ChatGPT或者GPT-4可能仅仅使用到大模型当前不到10%的能力。

我个人开始重点开始关注这个领域是因为OpenAI计算机科学家Andrej Karpathy在twitter(X)表明了agent相关的工作是当前openai重点关注的研究课题之一。以及各种在github刷榜的agent项目。

本文对agent的一些核心的技术要点和关键工作进行简单总结和介绍,

相关的文献最新研究也会持续更新在github仓库中:

https://github.com/Kunlun-Zhu/Awesome-Agents-Research

图一、Autonomou Agent基本组成结构(Lilian Weng)

一个Agent的基本组成应该包含如下四个方面规划(planning), 工具(Tools), 执行(Action), 和记忆(Memory)。

图二、近两年AI智能体相关工作发展(lei wang et, al.)

(1) 智能体决策(Agent Planning)

Agent Planning是Agent能力的核心,一个好的规划决定了agent能否顺利执行以及解决问题,规划简单来说就是任务分解(Task Decomposition); 把复杂的问题划分成可以一步步解决的小步骤,以及不断根据反馈(feedback)去重新调整策略。

  • Chain of thought(Wei et al.)

Chain-of-Thought是常见用来引导模型进行任务分解的大模型提示(prompting)方法,其主要方法就是提供任务分解的少量示例(few-shot examples),利用大模型的上下文学习能力(In-context learning)去模仿进行类似的任务分解和规划。

  • ReAct(Yao et al.)

ReAct 相对来讲是更复杂的大模型提示(prompting)方法,其核心是引导大模型在生成核心回答内容的前面主动加上一个思考(thought)部分,以及执行(action)后面的观察(observation)模块。这种提示技巧能较好地提升模型的规划能力。

  • ReWoo(Binfeng Xu et al.)

ReWOO是类似在ReACT架构基础上,去掉了观察(observation)这个模块,取而代之的是把整个planning过程划分成'Planner', 'Worker''Slover'分别去进行规划,执行和总结三个部分,在API消耗和精度上都有所提升。

  • Treeofthought(Shunyu Yao,et al.,TOT)

TOT的方法是COT方法进阶版本,它让大模型在每个节点做决策时分化出几个不同可能的策略,并采用深度优先搜索(DFS)或者广度优先搜索(BFS)的方式去寻找可行策略,增强了大模型面对更复杂问题的决策能力。作者在24点,以及填字游戏上测试取得了不错的效果。

  • Graph of thought(Besta,et al.)

Graph of thought是在TOT方法的基础上,使得整个规划过程可以以图的形式去流动和搜索,相对来讲限制更小。

  • JuDEC(Yining Ye, et al.)

JuDEC方法使用了游戏中常见的Elo算法机制去增强整个规划过程的自我决策能力,在ToolBench场景取得了较好的效果。

(2) 智能体工具使用(Agent Tool Using)

工具使用能力已经成为了Agent相关项目的基本范式,是扩展大模型功能与现实世界交互的关键一环。

  • Tool Learning for foundation models(Qin, et al.)

本文提出了工具学习(Tool Learning)的概念,强调了运用大模型来进行工具的创造和使用,并提供了BMTools工具包。

  • ToolFormer (Timo Schick, et al.)

本文第一次进行了使用工具作为API,并让模型使用这些工具的,作者测试了在计算器,日历等基本工具上的效果。

  • Gorilla (Shishir G. Patil, et al.)

本文提出了在较大规模工具池下的工具使用和学习流程,并收集了工具学习使用的指令数据集以及训练了一个具有工具使用能力的开源模型GORILLA。

  • ToolLLM (Qin, et al.)

该工作收集了16000+真实世界API,并生成了相关工具使用评测基准,开源了基于该数据集训练的LLaMA模型。

(3) 智能体记忆模块(Agent Memory)

图二、Agent Memory分类(Lilian Weng et, al.)

Lilian Weng在其博客中对现在的agent memory机制做了不错总结,分为了

感觉记忆:这是记忆的最早阶段,能够在原始刺激结束后保留感官信息(视觉、听觉等)的印象。短期记忆(STM)以及长期记忆(LTM)。

个人认为斯坦福的Generative Agents(Joon Sung Park et al.) 的工作对Memory这块进行了相对不错的探索和设计,由于agent在每次模拟中会产生大量的文本,所以作者使用了一个抽取(Retrieve)模块去获取对当前执行相对更有用的内容,并且使用模型不断去反馈(Reflect)优化更改之前的记忆。

Agent基于Memory这块还有一个重要的运用就是抽取增强式生成(Retrieval-Augmented Generation,RAG), 例如与数据库交互等等。

总而言之,agent基于memory机制的探索还有很大空间。

(4) Agent能力评测(Evaluation Benchmark)

  • AgentBench(Xiao Liu, et al.)

AgentBench对当前一系列的agent相关任务进行了一个整合,例如Web浏览,数据库,知识图谱任务等,可以看到GPT-4的agent能力还是一骑绝尘的。

  • ToolEval(Qin, et al.)

ToolEval在16000+ RapidAPI构成的ToolBench上评估模型的工具运用能力,也是当前相对完善的工具学习评测数据集。

二、Multi-agent Collaboration多智能体协作

  • Generative Agents(Joon Sung Park et al.)

Generative Agents这篇工作模拟了一个虚拟小镇,里面有各种虚拟的环境,例如学校,咖啡厅等,然后模拟了25个agent在小镇中自由交互。是第一篇基于大模型的社会模拟工作,里面设计了一些有趣的memory机制,以及针对一些模拟任务例如,选举镇长等任务进行了简单模拟。

  • Camel (Li, et al.)

Camel这篇工作也收集了若干角色的提示词,并且通过模拟Assistant Roles和User Roles进行相互交互去解决相应问题。

  • AgentVerse(Chen, et al.)

AgentVerse提供了一个可以自定义环境以及角色功能,并可以逐步去规划合作模拟去完成相应目标,是一个比较完善的multi-agent的模拟实现工作。在MineCraft等环境中进行了相应的验证和实验。

  • ChatDEV (Qian et al.)

ChatDEV是一个模拟multi-agent进行代码生成的工具包,当前可以简单模拟生成一些游戏代码,模拟了Engineer, Boss, Designer等角色

由于篇幅限制,还有一些有趣的工作例如MetaGPT, AutoGen, Bolla等工作,不做详细介绍,可以参考整理的github仓库。

三、未来展望

Agent在产业界的故事空间很大,李彦宏也谈到AI应用是更适合小公司入局和卷的赛道, 毕竟当前的Agent相关研究和运用不需要太多算力的研发,个人认为也只有Agent能力的妥善运用才能真正方便实现个人AI助理。

可以看到国内外许多团队,camel-ai, Imbue, character.ai, langchain, autogpt, Metagpt都在往AI Agent这个方向发力。

AI Agent未来在医疗,药物发现,科学发现等AI4science赛道也有很多的想象力。

我们也可以看到当前agent研究和工作的局限性:当前的工作以工程上的运用为主,本质上类似于prompt engineering,暂时还比较缺乏一些理论方面的支撑突破,缺少和训练结合的关键工作。

动图封面

我们团队和来自Mila、清华、港大、科大等研究人员有进行agent相关的深度合作,成员有开发 ToolLLM, BMTools, WebCPM 等开源项目经验,也欢迎对agent相关研究工程感兴趣的同学和研究者和我们合作交流:zhu.kunlun@umonteral.ca

个人认为Agent相关的研究运用在近两年内逐步发展成熟,并必然会有不输于ChatGPT的爆款应用和产品,并会有相关的独角兽企业产生。

References:

midjourney

GPT-4

Lei Wang, et al. Survey on Large Language Model based Autonomous Agents

Weng, Lilian. (Jun 2023). LLM-powered Autonomous Agents". Lil’Log. https://lilianweng.github.io/posts/2023-06-23-agent/.

Jason Wei, et al. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models

Shunyu Yao, et al. REAC T: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS

Binfeng Xu, et al. ReWOO: Decoupling Reasoning from Observations for Efficient Augmented Language Models

Shunyu Yao, et al. Tree of Thoughts: Deliberate Problem Solving with Large Language Models

Maciej Besta, et al. Graph of Thoughts: Solving Elaborate Problems with Large Language ModelsYining Ye, et al. LARGE LANGUAGE MODEL AS AUTONOMOUS DECISION MAKER

Yujia Qin, et al. Tool Learning with Foundation Models

Yujia Qin, et al. TOOLLLM: FACILITATING LARGE LANGUAGE MODELS TO MASTER 16000+ REAL-WORLD API

SJoon Sung Park, et al. Generative Agents: Interactive Simulacra of Human Behavior

Shishir G. Patil1, et al. Gorilla: Large Language Model Connected with Massive APIs

Timo Schick, et al. Toolformer: Language Models Can Teach Themselves to Use Tools

Xiao Liu, et al. AgentBench: Evaluating LLMs as Agents

Guohao Li, et al. CAMEL: Communicative Agents for “Mind” Exploration of Large Scale Language Model Society

Chen Qian, et al. Communicative Agents for Software DevelopmentSirui Hong, METAGPT: META PROGRAMMING FOR MULTI-AGENT COLLABORATIVE FRAMEWORK

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值