如何利用 Agent 构建AI服务
近年来,人工智能(AI)技术的飞速发展引起了广泛的关注和讨论。而如今,我们正站在一个全新的时代门槛前,面对着AI Agent带来的的崭新未来。以LLM(大型语言模型)作为其核心控制器构建代理是一个很酷的概念。它模拟人类的工作流程,能够自主进行信息搜索、分析、利用,以完成目标。
OpenAI 联合创始人Andrej Karpathy 在Twitter上用比喻描述了AI Agent的过程:每一次GPT的调用就像一次思考。通过将他们串联起来,就可以创建出可以感知、思考和行动的Agent 系统。
目前已经存在不少AI Agent系统的案例,例如AutoGPT、BabyAGI、Camel、Jarvis、AgentGPT等。
AI Agent 系统是如何工作的?
AI Agent 系统如此强大,那么他到底是如何工作的呢?
在AI Agent系统中,LLM引擎充当其大脑,为其提供了强大的处理能力和智能思维。除此之外,还辅以几个关键组件:
-
任务规划:为 AI Agent 系统提供任务分解 (task decomposition) 和自我反思 (self reflection) 的能力。
-
记忆:为 AI Agent 系统提供长时间保存和回忆额外信息的能力。
-
工具使用:让 AI Agent 可以对外部做出动作,真实地影响现实世界。
任务规划
AI 机器人(AI-BOT)在任务分解阶段,通常是使用思维链(CoT, Chain of Thoughts) 和思维树(ToT, Tree of Thoughts) 等技术。
CoT通过 “think step by step” (分步思考),将复杂任务逐步分解为更小、更简单的步骤。它将大任务拆分为多个可以实现的小任务,并阐明了LLM思考推理的过程。
ToT则尝试同时考虑多个潜在的可行计划。它在每一步尝试探索更多可能性,首先将问题分解为多个思考步骤,并在每个步骤中生成多个思考,从而创建一个思维树。
而在自我反思阶段,AI Agent 回顾过去的行动和决策,并纠正以前的错误来迭代改进自身。自我反思目前常用的技术有ReAct、Reflextion、Chain of Hindsight 等。
ReAct通过追踪LLM的推理过程来让模型优化、跟踪和更新行动计划,并能处理异常情况。
Reflextion则比ReAct更进一步,在ReAct的流程中加入推理评估来尝试改进推理结果。
Chain of Hindsight则是通过大量的反馈结果中学习并优化推理结果。
记忆
人脑的记忆分为三种:感官记忆、短期记忆和长期记忆。
感官记忆是人的视觉、听觉、触觉等反馈而来的记忆,通常只有数秒;短期记忆是人当前正在执行的认知任务的相关记忆,通常会持续数十秒;长期记忆则是人过往的经历和回忆,通常会长达数十年,我们的大脑会在需要时自动从长期记忆中提取出对应的记忆来使用。
AI Agent也模拟了人脑记忆的使用过程,对于较短的感官记忆和短期记忆,AI Agent 可以直接将其放入上下文中;而对于长期记忆,AI Agent 将其存储在外部,需要时再根据需要提取出相关的记忆来使用。
我们现在通常使用向量数据库来存储、搜索外部记忆,它使用最大内积搜索(MIPS)的技术来对记忆进行相关性搜索,目前常用的MIPS 的算法有LSH、ANNOY、HNSW、FAISS、ScaNN等。
工具使用
工具的使用也是很重要的环节,任务规划、反思和记忆只是让AI Agent有了思考的能力,但是他还需要能使用工具才能做出具体的行动。给AI Agent装配上工具,相当于给予了他手足,让他能够通过利用各种工具和资源来完成任务。
目前的ChatGPT Plugins 和OpenAI API function calling 都是LLM使用工具的非常好的实践案例。除此之外,还有MRKL、TALM、Toolformer、HuggingGPT和API Bank等使用工具的方法。
AI Agent 的经典案例: Auto GPT
AutoGPT 是一个实验性的开源AI Agent程序,它利用GPT-4来自主管理任务,例如创建网站、撰写文章、生成Logo或推广产品等。它可以访问互联网,并收集、分析各种信息,从网络中学习并完成任务。
AutoGPT的惊人之处在于它的自治性。他是完全独立运作的,不需要使用者的额外干预。他还拥有长期和短期记忆系统,这让他能记住过往做过的事情,从经验中学习,并根据过去的行动自行优化决策,这让它可以随着时间不断自我改进。
AI Agent 尚未解决的问题
AI Agent 的发展和应用在许多领域中都呈现出了巨大的潜力和前景。然而,就像任何其他技术一样,AI Agent 也有一些限制:
有限的上下文长度:受限的上下文容量限制了AI Agent系统的效果,尤其是任务规划和自我反思这样的机制。虽然向量存储和检索可以提供对外部信息的访问,但它们的表示能力不如完全关注那么强大。
长期规划和任务分解的挑战:虽然AI Agent在解决特定任务方面可能非常出色,但与人类相比,在长期规划和任务分解方面仍存在显著的差距。
自然语言接口的可靠性:当前的AI Agent系统依赖自然语言作为LLM与外部组件的接口。然而,大语言模型的输出并不是完全可靠的,因为他偶尔可能会出现格式错误,或表现出叛逆行为。
当然,随着AI技术的飞速演进,我们相信,这些限制都会在不久的将来得到解决。
如何实现AI Agent?
尽管当前技术发展阶段下AI Agent尚未足够成熟,不足以将任务完全托管,但我们依然能够通过一些有效的方式,在GPTBots(https://gptbots.ai/developer/)平台上,以更加务实和合理的中间方案,实现Agent能力。
Flow BOT —— 可视化地规划任务流程
任务规划是AI Agent的关键组件之一。GPTBots(https://gptbots.ai/developer/)平台则提供以可视化组件搭建任务流程创建AI-BOT的能力——Flow BOT。平台已将常见的、通用的AI-BOT开发模块抽象为了多个组件。开发者可以在界面上,通过简单的托拉拽方式,根据自身业务需求,将不同组件进行”规划“,拼接为一个“任务”,并定义为一个AI-BOT,以解决特定的问题。
Flow BOT不仅拥有灵活的任务流配置能力,在不同的开发模块内也提供了众多的可配置项,例如输入、输出、插件、知识库、条件判断等,可以帮助开发者灵活地应对各种业务场景。
插件 —— 让AI-BOT执行任意任务
AI Agent需要有工具才能执行各类任务,而GPTBots(https://gptbots.ai/developer/)平台提供的插件(Plugin)就是这么一款工具。
GPTBots平台官方提供了涵盖学术、商业、生活和工作等诸多领域的公共插件,供开发者加入AI-BOT内进行调用,让AI-BOT拥有了与外界沟通的能力,并执行对应任务。
同时,GPTBots平台也为开发者提供了“插件开发”能力,让开发者能够根据自身的要求开发插件,并接入AI-BOT调用,以满足自己的业务场景需求。
长短记忆 —— 用更充沛的信息来做决策
记忆设置是GPTBots(https://gptbots.ai/developer/) 平台提供的另一项有利于实现Agent能力的功能。开发者可以通过对AI-BOT进行长记忆和短记忆的设置,来对AI-BOT的问题处理能力进行拓展。
在解决规模较大,信息量较多的问题时,长记忆的能力显得尤为关键。而在处理一般问题时,短记忆便已足够。在解决单轮问答问题时,甚至可以用不着长短记忆能力。
这也使得该功能拥有了另外一层价值:开发者能够应根据自身的需求,理性地定义AI-BOT的记忆设置,因为因为更长的记忆,就意味着更多的成本消耗。长短记忆功能,为开发者控制AI-BOT成本,提供了一种方向。
AI Agent 的未来
AI Agent强大的能力,将让他成为我们未来无处不在的助手,为我们的生活和工作提供协助和支持。无论是在家庭生活中,帮助我们管理日常事务和家务,还是在工作场所中,协助我们处理数据和决策,AI Agent 都将发挥重要作用。
在家庭生活中,AI Agent可以成为一个智能家居管家,通过学习我们的喜好和习惯,自动调节室温、照明和音乐,提供个性化的生活体验。它们还可以帮助我们管理购物清单、日程安排和提醒事项,让我们的生活更加便捷高效。
在工作场所中,AI Agent成为我们的智能助手和数据分析师。它们可以快速处理大量的数据,提供准确的分析和预测,帮助我们做出更明智的决策。AI Agent 还可以自动化繁琐的任务,提高工作效率,并减轻人们的工作压力。
当然,作为一种新兴技术,AI Agent 也面临着一些挑战和风险。我们需要确保AI Agent助手的安全性和可靠性,避免出现意外事故和不良后果。同时,我们也需要制定相关的法规和行业规范,明确责任和监管机制,以保障AI Agent的合理使用和发展。
目前的AI Agent还在初始阶段,或许尚不完善,但如果这个方向保持和生成式AI相同的发展速度,那么我们可能很快就能看到商业化的AI Agent助手出现在我们身边。这一天也许很快就会到来。
极光GPTBots已上线,访问https://www.gptbots.ai立即注册体验!
注册即赠送积分赠送。参与企业认证或邀请好友注册,也能获取更多积分~
关于极光
极光(Aurora Mobile,纳斯达克股票代码:JG)成立于2011年,是中国领先的客户互动和营销科技服务商。成立之初,极光专注于为企业提供稳定高效的消息推送服务,凭借先发优势,已经成长为市场份额遥遥领先的移动消息推送服务商。随着企业对客户触达和营销增长需求的不断加强,极光前瞻性地推出了消息云和营销云等解决方案,帮助企业实现多渠道的客户触达和互动需求,以及人工智能和大数据驱动的营销科技应用,助力企业数字化转型。