OpenAI 应用研究主管 Lilian Weng 在一篇长文中提出了 Agent = LLM(大型语言模型)+记忆+规划技能+工具使用这一概念,并详细解释了Agent的每个模块的功能。她对Agent未来的应用前景充满信心,但也表明到挑战无处不在。
现有的 Agents 项目如 AutoGPT,BabyAGI 和 MetaGPT 的成功验证了LLM的潜力。LLM 不仅仅是一个文本生成工具,它可以成为一个强大的通用问题解决器。无论是写作、故事、论文还是程序等,LLM 都能应对自如。它展现了巨大的潜力,在解决现实世界难题方面具备强大的能力。
BabyAGI 的创造者 Yohei Nakajima 曾说:“The future of autonomous agents looks like everybody becoming a manager.” 这句话很好地概括了我们对 Agents 的展望。
Agent的HelloWorld工作流实例
假设有一个协助研究的 Agent,我们希望获取关于 Twitter 的最新新闻摘要:
我们告诉 Agent “你的目标是找出关于Twitter的最新消息,然后给我发一份摘要”。
Agent查看目标并使用像OpenAI的GPT-4这样的AI进行阅读理解,它提出了第一个任务:“在谷歌上搜索与Twitter相关的新闻。”
然后,Agent 在谷歌上搜索 Twitter 新闻,找到热门文章,并返回链接列表。第一个任务已完成。
现在,Agent 回顾主要目标(获取关于Twitter的最新新闻,并发送摘要)以及它刚刚完成的内容(获得一系列关于Twitter的新闻链接),并决定其下一个任务需要是什么。
它提出了两个新任务。1)写新闻摘要。2)阅读通过谷歌找到的新闻链接的内容。
在继续之前,智能助理会稍作停顿,以确保正确安排这些任务。它反思是否应该先写摘要。然而,它决定首要任务是阅读通过谷歌找到的新闻链接的内容。
Agent 阅读文章内容,然后再次查看待办事项列表。它考虑添加一个新任务来总结所阅读的内容,但是发现这个任务已经在待办事项列表中,因此不会重复添加它。
Agent 检查待办事项列表,只剩下一项任务:撰写所阅读内容的摘要。于是,它执行了这个任务,按照您的要求向您发送了摘要。
AutoGPT 是一个由Toran Richards创建的流行开源项目,github有接近15万星。它利用GPT4作为大脑,结合langchain的链接思想,连接各种工具和互联网资源,来完成人类给予的任务。
您只需要设定一个目标,AutoGPT就会自主规划并逐步执行任务。如果遇到问题,它会自主拆分任务并逐步解决。
AutoGPT 所做的事情就是把电脑的控制权、向量空间的云存储、各种工具的API交给了AI。借此,它可以分析市场并提出交易策略、客户服务、营销、财务或其他需要持续更新的任务。
这就是为什么 Karpathy 最近说“AutoGPT 是提示工程的下一个前沿”
AutoGPT 相当于给基于 GPT 的模型赋予了内存和主体。您现在可以将任务交给 AI 代理,让它自主制定计划、执行计划、浏览网页并使用新数据修改策略,直到任务完成。
AutoGPT由以下三个组成部分构成:
架构:它通过 API 调用 GPT-4 和 GPT-3.5。
自主迭代:AutoGPT通过自我评估改进其输出,利用以前的行动和提示历史以获得更准确的结果。
内存管理:与 @pinecone 的集成让 AutoGPT 能够长期内存存储,支持上下文保存和改进决策。
此外,AutoGPT还具备多功能性,例如文件操作、网页浏览和数据检索等功能,使其应用范围更广。
快速体验AutoGPT:以Cognosys为例
让我们以Cognosys为例,看看如何使用他们的平台来应用AgentGPT来总结最新新闻。
Cognosys 一款类AutoGPT 的在线工具;不需要绑定OpenAI 的API Key
首先,访问Cognosys网站。
输入Agent的名称和您想要达到的目标,让AgentGPT知道您的需求。
选择模式为Browsing,让AgentGPT拥有联网能力
点击提交,AgentGPT会利用其强大的自然语言处理能力来搜索最新的新闻,并呈现出相关的摘要。
您可以阅读并评估生成的新闻摘要,如果需要,还可以对其进行修改或完善,让摘要更贴合您的需求。
除此之外
AI平台Hugging Face提供了托管版本的AutoGPT。您只需要提供OpenAI API密钥,为AI指定角色和一些目标即可
对于Replit用户,您还可以fork此repl并为其提供您的OpenAI API密钥来体验
godmode也允许您输入OpenAI API密钥后直接体验AutoGPT
恭喜你掌握了第一个 Agent!
AgentGPT 的自我介绍:
AgentGPT: Create and run an autonomous agent (AutoGPT) from a website, no login required.
AgentGPT 是一个基于 Langchain 和 OpenAI 基础构建的 AI Agent。它是一个 AI 代理平台,使您能够在浏览器或个人计算机中创建、配置和部署自主 AI 代理。
AgentGPT 允许您配置和部署自治 AI 代理。命名你自己的自定义 AI,让它开始实现任何可以想象的目标。它将尝试通过思考要做的任务、执行它们并从结果中学习来达到目标。
AgentGPT 和 AutoGPT 之间的区别
AutoGPT 是一款功能强大的 AI 工具。但在开始使用之前,您需要设置 Git、安装 Python、下载 Docker 桌面程序并获取 OpenAI API 密钥。
AgentGPT 实际上是基于 AutoGPT 架构进行了改进,为您增加了一个网页界面,摆脱了繁琐的搭建和安装过程。从本质上来说,它就是一个 AutoGPT,您无需自行搭建,也不必担心繁杂的构建步骤,只需要登录网站就可以使用。
简单使用
前置准备:在使用AgentGPT之前,您需要获取OpenAI API密钥。访问 OpenAI 网站 https://www.openai.com/。
AgentGPT 注册步骤如下:
访问 AgentGPT 平台:https://agentgpt.reworkd.ai/
在 reworkd.ai 上创建一个帐户,并通过提供您的名称和目标来部署您的代理
在我们的例子中,我们要求 AgentGPT 开发一个能够人脸识别的 Web 应用程序。这里我部分截取了中间的运行效果,AgentGPT成功帮我生成了一个人脸识别的 Web 应用,期间无需写任何代码
自己部署
感兴趣的小伙伴也可以尝试自己在本地部署 Agents!
Vercel一键部署AgentGPT
Vercel目前已经支持自主一键部署AgentGPT
HuggingGPT是一个多模型调用的 Agent 框架,利用 ChatGPT 作为任务规划器,根据每个模型的描述来选择 HuggingFace 平台上可用的模型,最后根据模型的执行结果生成总结性的响应。
这个项目目前已在 Github 上开源,并且有一个非常酷的名字叫做 JARVIS(钢铁侠的助手)。这项研究主要涉及到两个主体,一个是众所周知的 ChatGPT,另一个是 AI 社区中的 Hugging Face。
在HuggingGPT中,ChatGPT充当了”操作大脑”的角色,能够自动解析用户提出的需求,并在Hugging Face的AI模型库中进行自动模型选择、执行和报告,为我们开发更复杂的人工智能程序提供了极大的便利。
MetaGPT引入了一个将人工工作流程与多智能体协作无缝集成的框架。通过将标准化操作(SOP) 程序编码为提示,MetaGPT确保解决问题时采用结构化方法,从而减少出错的可能性。
当前 Agent 的解决方案存在一个问题:尽管这些语言模型驱动的 Agent 在简单的对话任务上取得了显著进展,但在面对复杂任务时,LLM 会陷入困境,仿佛看到了并不存在的事物(幻觉)。当将这些 Agent 串联起来时,就会引发混乱的连锁反应。
现在 MetaGPT 引入了标准化操作程序。这些操作程序就像作弊码一样,用于顺利协调工作。它们告诉代理们发生了什么事,以有条不紊的方式指导他们。
借助这些操作程序,代理几乎可以像领域专家一样熟悉他们的工作,并验证输出以避免错误。就像高科技流水线一样,每个代理都扮演着独特的角色,共同理解复杂的团队合作。
为什么 MetaGPT 很重要
MetaGPT 提供了一个全新的视角。这就是它掀起波澜的原因:
稳定的解决方案:借助SOP,与其他 Agents 相比,MetaGPT 已被证明可以生成更一致和正确的解决方案。
多样化的角色分配:为LLM分配不同角色的能力确保了解决问题的全面性。
MetaGPT 软件开发过程
需求分析:收到需求后,该过程开始。这一阶段致力于明确软件所需的功能和要求。
扮演产品经理:产品经理以需求和可行性分析为基础,开启整个流程。他们负责理解需求,并为项目制定明确的方向。
扮演架构师:一旦需求明确,架构师将为项目创建技术设计方案。他们负责构建系统接口设计,确保技术实现符合需求。在MetaGPT中,架构 Agent 可以自动生成系统界面设计,如内容推荐引擎的开发。
扮演项目经理:项目经理使用序列流程图来满足每个需求。他们确保项目按计划前行,每个阶段都得到适时执行。
扮演工程师:工程师负责实际的代码开发。他们使用设计和流程图,将其转化为功能完备的代码。
扮演质量保证(QA)工程师:在开发阶段结束后,QA工程师进行全面的测试。他们确保软件符合所需标准,不存在任何错误或问题。
实例
举个例子,当你输入
python startup.py “Design a RecSys like Toutiao”,
MetaGPT会为你提供多个输出,其中之一是有关数据和API设计的指导。
生成一个包含分析和设计示例的成本大约为0.2美元(使用GPT-4 API),而完整项目的成本约为2.0美元。通过这种方式,MetaGPT提供了低廉的解决方案,让你能够快速获取所需的信息和指导。
快速体验
目前MetaGPT暂无在线体验版本。这里我会列出docker的安装方法,最大程度减少大家安装面对的环境难度:
# Step 1: Download metagpt official image and prepare config.yaml docker pull metagpt/metagpt:v0.3.1 mkdir -p /opt/metagpt/{config,workspace} docker run --rm metagpt/metagpt:v0.3.1 cat /app/metagpt/config/config.yaml > /opt/metagpt/config/key.yaml vim /opt/metagpt/config/key.yaml # Change the config
# Step 2: Run metagpt demo with container docker run --rm \ --privileged \ -v /opt/metagpt/config/key.yaml:/app/metagpt/config/key.yaml \ -v /opt/metagpt/workspace:/app/metagpt/workspace \ metagpt/metagpt:v0.3.1 \ python startup.py "Write a cli snake game" # You can also start a container and execute commands in it docker run --name metagpt -d \ --privileged \ -v /opt/metagpt/config/key.yaml:/app/metagpt/config/key.yaml \ -v /opt/metagpt/workspace:/app/metagpt/workspace \ metagpt/metagpt:v0.3.1 docker exec -it metagpt /bin/bash $ python startup.py "Write a cli snake game"
将"Write a cli snake game"更换成你喜欢的命令试试吧!
由微软开发的 Autogen 是一个新的 Agents 项目,刚一上线就登上GitHub热榜,狂揽11k星
项目地址:https://github.com/microsoft/autogen
Autogen 允许你根据需要创建任意数量的Agents,并让它们协同工作以执行任务。它的独特之处在于允许 Agent相互通信并解决任务。例如你可以设置三个角色,产品经理、程序员和设计师,让他们之间讨论如何实现一个产品,并给出 Demo 代码。
不需要写复杂的prompt设定Agents,Agent 自己聊着天就把事给办了
诞生了哪些好玩的AutoGen应用?
几秒钟生成游戏
模拟世界:允许用户阅读时自己参与与主角交互
可视化数据分析
除此之外,官方还放出了6个应用案例,包括解决数学问题、多智能体编码、在线决策制定、基于检索增强聊天、动态群聊以及对话式国际象棋。
充分展示了AutoGen的定制性
AI AIgents时代- Autogen-CSDN博客
OpenAgents,一个声称在Interface和Environment上全方面超越AutoGPT,OpenInterPreter等框架
接下来我们逐步拆解OpenAgents的独特之处!OpenAgents开发的LLM-powered代理XLang集成了三个功能强大的代理:DataAgent、PluginAgent、webAgent
技术细节 OpenAgents基于LangChain构建了XLang Agents,使用ReAct范式进行思考、行动和观察来完成任务。OpenAgents填补了LangChain的一些空缺,包括提供全面的工具集、实现Web用户界面和后端服务器、创建DataModel类以便信息呈现,以及改进提示。Web用户界面允许用户通过自然语言反馈与Agent交互,而记忆组件则将多轮用户反馈作为历史上下文的一部分传递给Agent。
RL Agent:
ReAct Agent:
XLang Agents:
AI AIgents时代-(六.)OpenAgents-CSDN博客