AI Agent原理与开源框架分析

在人工智能的快速发展中,AI Agent作为一项创新技术,正逐渐成为研究和应用的热点。AI Agent不仅仅是执行命令的程序,它们能够感知环境、做出决策并采取行动,展现出类似人类的群体协作能力。本文将探讨AI Agent的技术原理、开源框架、以及未来发展趋势。
在这里插入图片描述

AI Agent概述

AI Agent的迅速发展得益于大型语言模型(LLM)的驱动。自从2023年以来,LLM Agent因其在研究、框架和应用方面的迅猛发展而受到广泛关注。Agent的概念源自于能够通过传感器感知环境,并通过执行器对环境做出反应的实体。在工程实现上,AI Agent可以拆分为规划、记忆、工具和行动四大核心模块。

这里是引用

在这里插入图片描述

LLM Agent系统架构

LLM Agent系统架构可以概括为“1+4”模型,即一个大语言模型加上观察、思考、行动和记忆四个功能模块。这种架构使得AI Agent能够进行复杂的任务处理和决策制定。

Multi-Agents协作

Multi-Agents技术允许多个自主的Agent参与协作,模拟人类群体在解决问题时的动态。Agent与环境的接口可以是虚拟的,也可以是与物理世界的直接交互。Agent配置可以是预定义的、模型生成的或数据驱动的。Agent间的通信可以是合作、辩论或竞争,通信结构可以是分层、去中心化、集中化或共享消息池。
在这里插入图片描述

开源框架的技术剖析

开源框架为AI Agent的开发提供了多样化的工具和平台。以下是一些值得关注的开源框架:

斯坦福小镇

斯坦福小镇项目是一个多Agent的Demo Roleplay,展示了Agent如何感知环境并基于“记忆流”做出决策。Agent的记忆分为观察和反思两种类型,包括被动和主动行为,以及由LLM评估打分的重要性、时效性和相关性。
在这里插入图片描述
记忆流分成两个部分
第一种记忆类型Memory Objects:

  • Observation(包括被动和主动行为)
  • lmportance score:LLM评估打分(0-10)
  • Recency score: 时间衰减因子
  • Relevance score:向量检索
    在这里插入图片描述

第二种记忆类型 Reflection:
这是Agent生成的更高层次、更抽象的思想
在这里插入图片描述

AutoGen

AutoGen是微软开发的一个多Agent框架,它允许用户构建自己的复杂工作流。这个框架需要用户自己定制解决复杂问题,例如组成软件公司写代码或组成虚拟小组讨论Idea。
在这里插入图片描述
Autogen 优势与不足总结
优势
微软官方主推开源产品,文档,示例比较完善丰富,相关研究和应用也在不断持续
不足

  • 底层跟GTP模型深度绑定,如果需要使用Bedrock的模型或者本地模型,则需要使用LLMProxy方案(fastchat,litellm,ollama等)
  • 对Claude 系列模型的message api不太友好,需要对接口改动较多。如消息中name参数缺失需要严格按照’userassistant’顺序等
  • 无法对agent输出的message做精细化的控制(类似metagpt那种特定消息的订阅发布机制)导致每次运行消耗token数非常多,实际运行不太稳定,速度也非常慢

LangGraph

LangGraph是一套在langchain框架之上的开发组件,可以轻松开发带有状态的、可控循环流程的LLM应用。它借鉴了NetworkX框架的设计思路,将应用流程定义成一个图,其中节点代表Agent或工具,边代表执行顺序。
在这里插入图片描述

一个应用流程定义成一个图节点(node)可以代表一个agenttool,或者一次function call,亦或者一次大模型调用,甚至是链接一个子图。边(edge),则代表节点的执行顺序(数据流向),并且可以通过设置conditionaledge,来控制流程分支。
在这里插入图片描述

MetaGPT

MetaGPT是国内开源的一个Multi-Agent框架,它构成一个虚拟软件公司,内部包括不同角色的Agent,提供了软件公司全过程的精心调配。
在这里插入图片描述
MetaGPT记忆和通信机制
首先每个agent 维护一个自己的消息队列通过 watch(action),来订阅来自全局环境里某些特定 action 发布的消息,并触发observe,think,action,publish,把消息发给全局环境。全局环境中的消息又接着被其他订阅该action 的 agent 观察到,重复上述流程
在这里插入图片描述
在这里插入图片描述

ChatDev

Chat Dev是一个开源多代理(Agent)编程框架的项目,国内人工智能初创企业面壁智能打造的一个虚拟软件公司,由各种具有不同角色的代理人(Agent)运作,包括首席执行官(首席执行官)、首席采购官(首席产品官)、1首席技术官(首席技术官)、程序员等。查特开发内部的代理通过参与专门的功能研讨会(通过连锁店组合)进行协作,从需求分析,设计、编码、测试和到最终的文档编写,依次完成软件开发各个阶段的任务。
在这里插入图片描述
在这里插入图片描述

Bedrock Agent

Bedrock Agent代表了亚马逊云科技在AI Agent领域的解决方案。它通过用户调用agent、获取对话历史、生成观察或最终回复等步骤,实现了复杂的工作流程。
在这里插入图片描述

Agents工作流

Bedrock Agent的工作流包括用户调用agent、返回控制、Lambda获取对话历史、预处理和后处理等环节。这种工作流允许Agent在调用时需要函数的执行结果,并在循环中直到完成任务或询问用户后续问题。
在这里插入图片描述

Session和Prompt属性

Session和Prompt属性在用户和agent之间的会话期间持续存在,它们可以在Lambda事件中发送,用于个性化agent的行为。
在这里插入图片描述

Bedrock Agent – Orchestration

Bedrock Agent的编排采用了ReAct范式,即推理加动作加外部反馈,以提升回答的准确率。
在这里插入图片描述

总结与展望

AI Agent代表了工作流的革新,它们不再是简单的指令执行者,而是能够进行自我反思、规划和修正的参与者。设计有用的Agent AI应用需要考虑通信机制、记忆机制和工作流设计。

选择合适的Agent开发框架或服务时,需要考虑是否有足够的技术开发人员、是否需要快速上线、对数据和服务安全的看重程度、是否单Agent已经满足效果,以及是否有可参考的SOP或工作流

垂直特定场景落地,具备开放世界的通用性Multi-Agents最大的作用是通过模拟人在生产活动中的群体协助,或者分工,来提高AI解决问题的能力上限,随着各类垂直特定场景的逐步落地(例如 AIGC创作 Agents,数据加工 Agents),未来会出现具备更好开放世界通用性的 AI Agent。

AI Agent技术的发展为人工智能领域带来了新的可能性。从技术原理的深入理解到开源框架的应用实践,再到未来趋势的展望,AI Agent正逐步成为推动智能化进程的重要力量。随着技术的不断成熟和应用场景的不断拓展,我们期待AI Agent能够在更多领域展现出其独特的价值和潜力。

  • 39
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

科技之歌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值