- 大家好,我是同学小张,日常分享AI知识和实战案例
- 欢迎 点赞 + 关注 👏,持续学习,持续干货输出。
- +v: jasper_8017 一起交流💬,一起进步💪。
- 微信公众号也可搜【同学小张】 🙏
本站文章一览:
0. AutoGPT 概念 - AI Agent开发框架
AutoGPT是一个开源的AI Agent开发框架。它是一个由LLM提供动力的半自治代理,可以为您执行任何任务。只需给它设定一个或多个目标,它就会自动拆解成相对应的任务并自主运行,其运行过程无需或少需人工干预,能够根据GPT自主决策结果并结合外部资源执行相应操作,通过循环评估策略实时评估目标达成程度,来决定任务是否完成。
至于AI Agent是什么,我在前面的文章中已经详细介绍过,感兴趣的可以去看下这两篇文章:
简单来说,Agent = LLM+观察+思考+行动+记忆,将大语言模型作为一个推理引擎。给定一个任务,Agent自动生成完成任务所需的步骤,执行相应动作(例如选择并调用工具),直到任务完成。经典的概念图如下:
1. AutoGPT原理 - ReAct
AutoGPT的基本原理非常简单:让LLM一遍又一遍地决定要做什么,同时将其操作的结果反馈到提示中,也就是不断地“思考 + 行动”。这使得程序能够迭代地、增量地朝着其目标工作。 这也是Agent的基本原理。这种“思考 + 行动”的方式有一个官方的名字 - ReAct。
ReAct:Reason + Act的组合简写。具体参考这篇论文:https://arxiv.org/pdf/2210.03629.pdf。
ReAct论文中,作者对同一个问题,对比了不同驱动大模型方式的结果(如下图):
- a:标准Prompt,只给大模型最原始的问题,答案错误。
- b:思维链方式(CoT),模型给出了推理过程,但答案还是错误的,这就是大模型本身的缺陷,它不可能知道所有的知识。有些大模型不知道的知识还是需要通过行动从外部获取信息。
- c:只有行动(Act-Only),模型只是进行了一堆检索动作,并没有总结和思考答案应该是什么。
- d:ReAct方式,采用先思考下一步干什么,然后再干,最后正确得到了结果。
下面我们回顾一下之前学习LangChain agents模块中的运行案例,来看下ReAct的具体过程。
上面运行过程其实就是ReAct的过程:
(1)(思考 · Think Reason)先总结了任务和思考了步骤:检索当前日期,然后检索这个日期上发生的历史事件
(2)(行动 · Act)执行检索当前日期的步骤:Action是Search,输入是“今天的日期”
(3)得到了今天的日期:Observation的结果
(4)(思考 · Think Reason)再一次思考:我现在已经知道了当前日期
(5)(行动 · Act)执行第二步:Action是Search,输入是“历史上的今天发生了什么大事”
(6)得到了第二步的结果
(7)(思考 · Think Reason)再思考:知道了历史上的今天发生了什么
(8)(行动 · Act)总结输出最终回复
简单概括:思考 —> 行动 —> 得到结果 —> 思考 —> 行动 —> 得到结果 —> … —> 思考 —> 行动 —> 总结
2. AutoGPT具有的能力
- 互联网搜索
- 长短期记忆管理
- 调用大模型进行文本生成
- 存储和总结文件
- 插件扩展:AutoGPT 可以根据不同的应用场景和用户需求进行定制化的功能增强以及使得 AutoGPT 可以与其他工具和服务进行无缝集成。
3. 总结与思考
本文我们主要了解AutoGPT是什么,以及它背后的实现原理。AutoGPT是实验性的,虽然还不成熟,但其实现思想非常值得借鉴。
AutoGPT提供了Agent的全功能,但更多的是作为一个Agent开发框架来使用。官方也鼓励用户在此架构基础上开发自己特有的或针对特定功能的Agent,从而形成AutoGPT的生态。
4. 参考
- https://github.com/Significant-Gravitas/AutoGPT
- https://mp.weixin.qq.com/s/SjihcrasQIa0W62yFcWIag
- https://blog.csdn.net/qq_34274756/article/details/130530456
如果觉得本文对你有帮助,麻烦点个赞和关注呗 ~~~
- 大家好,我是同学小张,日常分享AI知识和实战案例
- 欢迎 点赞 + 关注 👏,持续学习,持续干货输出。
- +v: jasper_8017 一起交流💬,一起进步💪。
- 微信公众号也可搜【同学小张】 🙏
本站文章一览: