什么是AI Agent智能体
什么是AI Agent智能体
随着AutoGPT, BabyAGI, GPT-Engineer等一系列的Agent程序的出现, Agent智能体的概念越来越火爆, 各大厂商都在出各种Agent的产品, 但是到底什么是Agent智能体, 从操作性上来看, 怎么才能做一个Agent智能体呢?
Agent智能体是什么
根据资料, Agent这个词语最早来自于哲学, 描述了一种具有欲望、信念、意图并能采取行动的实体. 简单来说就是有自己的想法, 能够采取行动实现自己的想法.
一说到哲学, 都是讲本质性的事情, 作为工程师, 讲的是操作性的定义, 玄而又玄的东西不是工程师要关注的事情, 那么在工程界怎么定义一个Agent呢?
OpenAI认为Agent=LLM+Planning+Memory+Tool use
OpenAI提出Agent智能体有几部分组成,包括: Planning计划能力, Tools使用工具, Memory具有存储记忆, Action可以根据Planning的计划使用工具采取行动
看上去很高大上, 但是实际上我们发现, 存储能力, 使用工具采取Action的能力其实在任何一个计算机程序中都有相关的能力, 只不过传统的计算机程序通过硬编码的预先设置来完成一个特定的事情.
LangChain认为Agent的核心是让LLM推理决定如何做
Langchain对Agent的定义与我们的理解不谋而合, Langchain是这么定义Agent的:
The core idea of agents is to use a language model to choose a sequence of actions to take. In chains, a sequence of actions is hardcoded (in code). In agents, a language model is used as a reasoning engine to determine which actions to take and in which order.
Langchain认为Agent的关键就是使用大语言模型选择执行一系列动作, 在Chain模式中, 这一系列的action是硬编码的, 在Agent模式中, 使用大语言模型作为推理引擎决定要执行哪些动作以及以什么顺序执行
这里本质上说的就是Planning的能力, Langchain也认为Planning是Agent的关键能力
Microsoft认为Agent从Chatbot形式发展到现在的全自动 AI助手
微软认为Agent就是一种可以回答问题以及自动处理事情的人工智能程序. 从最早的Chatbot形式一直发展到现在的Fully autonomous形式
Chatbot很早之前就已经出现, 作为聊天机器人的形态在各个行业尤其是客服领域发挥重要作用, MS认为Chatbot也是Agent的一种原始形态.
而最近出现的Copilot与Fully autonomous则是现在Agent的主要代表, 其中的关键区别是Copilot不是全自动做事情的, 而是给用户一些建议, 用户可以选择接受或者拒绝这些建议. 比如在一个邮件Copilot可以在用户写邮件时就接下来应该怎么写给用户提供一些建议, 用户可以采纳也可以不采纳
总结: Agent是可以自主规划并自动执行来实现目标的AI智能程序
综合各家来看, 传统程序通过硬编码的方式来实现特定的任务, 而Agent则是可以自己选择工具, 自己规划执行步骤来完成任务的AI程序.
这与哲学中的Agent还有一些区别, 哲学中的Agent要有自己的欲望与意图, 这可能也是AI Agent的终极目标. 但是一旦AI有了自己的意图与欲望, 那场面也已经控制不住了… 就目前来看, Agent还是在人类给定的特定框架下, 可以帮助人规划解决问题的工具
Agent为什么可以拥有规划与执行的能力
既然Planning作为Agent的关键能力, 那么我们有必要了解下Agent为什么可以拥有自主规划的能力.
随着LLM大模型的发展, 参数量越来越大, 模型出现了很多如COT, TOT等推理能力, 这些能力的来源目前没有看到严谨的解释, 可能是鹦鹉学舌, 可能是量变引起质变, 可能是底层逻辑归一…反正不管怎么样, 利用大模型表现出来的这些能力, 可以将一些规划思考的工作尝试交给大模型来做.
总体来看, 虽然大模型表现出一些推理能力, 但是即使是当前能力表现最好的GPT-4, 在自主生成可执行计划的能力上也相当有限, 在跨领域的平均成功率也只有12%, 所以当前Agent更多的是在孵化与创新阶段, 实际的应用上更多在娱乐、创作辅助等领域.
为了更好的发掘利用大模型表现出的这种能力, 大家发掘了很多的使用范式来提升大模型解决此类问题的准确性, 比如Reflection内省, Self-criticism自评估等等, 关于这部分的内容, 我们在后面逐步打开学习