AI-agent (1):设计模式和常用框架

ckpeng的博客 2024-06-19 17:31:02 阅读 56

Agent介绍

AI-agent也称人工智能代理,是大模型技术驱动下的一种能够感知环境、进行决策和执行动作的智能实体。我们可以将其简单理解为:

Agents = LLM + Planning + Memory + Tools

在这里LLM作为系统的大脑,为agent提供决策分析能力。有了agent系统,我们不再局限于以api接口的形式调用大模型,而是可以基于大模型搭建一个完整的应用系统,实现更强大的能力。


Agent设计模式

那么AI-Agent有哪些设计模式呢,我们来看看吴恩达提出的4种主要的Agent设计模式:

reflection:让Agent审视和修正自己生成的输出

在这种模式下,AI Agent 不仅仅是执行任务,而是能够像人类专家一样,对自己的工作进行批判性思考。例如,AI Agent 可能会生成一段代码,然后根据预设的标准或反馈,自我检查代码的正确性、效率和结构,并提出可能的改进措施。这种自我监督和修正的能力,使得AI Agent在执行任务时能够不断提高准确性和效率。

Tool use:LLM生成代码、调用API等进行实际操作

工具使用赋予 AI Agent 使用外部工具和资源的能力,以此来扩展其功能和提高生产效率。这种模式下,AI Agent 可以搜索网页、生成和运行代码、分析数据等,利用各种工具来收集信息、执行操作。例如,AI Agent 可能会使用图像处理工具来分析和处理图像数据,或者调用 API 来获取和整合外部信息。这样的能力使得 AI Agent 不再局限于其内置的知识库,而是能够与外部系统交互,从而更好地适应多变的任务需求。

Planning:让Agent分解复杂任务并按照计划执行

规划模式强调 AI Agent 在面对复杂任务时,能够进行系统性的规划和步骤分解。AI Agent 不仅能够理解任务的整体目标,还能够制定出详细的行动计划,并按照计划逐步推进任务的完成。

这种模式下,AI Agent 能够展现出类似于人类的前瞻性和策略性思维。例如,AI Agent 可能会在进行项目管理时,先确定项目的主要里程碑,然后为每个里程碑制定具体的执行步骤和时间表,确保项目能够有序进行。

Multiagent Collaboration:多个Agent扮演不同专家角色协同完成任务

这种合作可以模拟真实世界中的团队工作流程,通过代理间的互补和协同作用,提高整体的执行效率和创新能力。

例如,在一个开源软件开发项目中,一个 AI Agent 可能负责编写代码,而另一个 AI Agent 则负责代码审查和测试,通过这样的分工合作,共同推动项目的成功完成。


Agent常用框架

常见的LLM Agent框架或应用:

AutoGPT:GitHub - Significant-Gravitas/AutoGPT: AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.

icon-default.png?t=N7T8

https://github.com/Significant-Gravitas/AutoGPTAutoGen:GitHub - microsoft/autogen: A programming framework for agentic AI. Discord: https://aka.ms/autogen-dc. Roadmap: https://aka.ms/autogen-roadmap

icon-default.png?t=N7T8

https://github.com/microsoft/autogenXAgent:GitHub - OpenBMB/XAgent: An Autonomous LLM Agent for Complex Task Solving

icon-default.png?t=N7T8

https://github.com/OpenBMB/XAgentLangChain/LangGraph



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。