作者 | 王启隆
出品 | AI 科技大本营(ID:rgznai100)
有不少科幻片描绘了这样的世界:数字实体执行一座城市的所有任务,人工智能可以与数字世界甚至物理世界的一切事物进行交互,不断学习和适应新环境,周围的人对此司空见惯,仿佛一切都理应如此……
现在,随着 AI Agents 的应用浮出水面,这种幻想逐渐走入了现实。Agent 可以翻译为“代理”,在 AI 领域有了“智能体“这一含义,是当前人工智能技术的发展方向,它可以代表用户执行任务并做出决策,具有高度的自主性和适应性。
Devin
今年 3 月 12 日,美国创业公司 Cognition Labs 推出了号称「全球首位 AI 软件工程师」的 AI Agent —— Devin。不同于我们在前两年看到的 GitHub Copilot 等 AI 编程助手,Devin 并非单纯辅助的角色,而是能够完全独立、端到端地完成整个开发项目,包括从编写代码、修复 Bug 到最终执行的完整编程生命周期。
随后的这两个月里,无数的 Devin 模仿者横空出世。无论闭源到开源,每一位都强调要“对标 Devin”,甚至每一位都只能叫做“Devins”或是“类 Devin 工具”掀起了一股 Agent 浪潮:
OpenDevin:3 月 13 日(Devin 发布第二天)首次出现的 Devin 克隆版本。
https://github.com/OpenDevin/OpenDevin
AutoDev:同样在 3 月 13 日,微软按捺不住提交了一篇关于全自动软件开发框架的论文,还介绍了多智能体协同(Multi-Agent)的概念。
https://arxiv.org/pdf/2403.08299.pdf
AutoCoder:国人祝威廉的团队在 3 月 18 日首次发布的命令行版 Devin。
https://github.com/allwefantasy/auto-coder
Devika:在 3 月 21 日问世的 Devin 开源竞品。
https://github.com/stitionai/devika
通义灵码:4 月 2 日上岗,阿里的首个 AI 编程程序员。
SWE-agent:普林斯顿大学发布于 4 月 3 日的软件工程 Agent,开源。
https://github.com/princeton-nlp/SWE-agent
Replit Teams:初创公司 Replit 将在 4 月 9 日发布的 Devin 竞品。
……
此外,还有许多早于 Devin 诞生的 Agent。比如张海龙的 Babel,是 Devin 的直接竞品,其团队更是目前国内唯一一个聚焦 Coding Agent 的初创企业。
GPT-Pilot,这一开源项目在 GitHub 已有 27k 的 star,早在 2023 年便已经问世。
https://github.com/Pythagora-io/gpt-pilot
Plandex 则是一款 AI 编程引擎,借 Agent 将复杂任务分解为数个小任务。
https://github.com/plandex-ai/plandex
随着类 Devin 工具的“扎堆”发布,编程领域的 Agent 已经为所有开发者展现了强大的能力。但想实现真正的 AGI(通用人工智能),只让 Agent 会编程显然还是不够的,除了“AI 程序员”,我们还需要各司其职的其他 Agent(比如“AI 数据科学家”、“AI 物理学家”、“AI 技术委员会”……)协同工作。
八篇论文
最近,机器学习先驱、Google Brain 联合创始人、斯坦福大学计算机科学系和电气工程系的客座教授吴恩达 (Andrew Ng) 在红杉资本的 AI Ascent 活动上发表了一场演讲,大谈 AI Agents。
吴恩达(最右)和 AI 领域的“三大教父”
如今,每个人工智能产品都有其局限性,但吴恩达认为,在精心设计的 Agent 工作流程(workflow)中使用多个 Agent,可以在现有模型中产生“次时代”级别的性能。所以,基于 GPT-3.5 构建的 Agent 工作流程,在应用中的表现能比 GPT-4 要好。同理,GPT-4 + Agent > GPT-5。
为了驱动 AI Agents 工作流程的重大进展,吴恩达在演讲中提出了四种设计模式:反思、运用工具、规划、多智能体协同。每种设计模式引用了两篇论文,一共八篇。
反思(Reflection)
你或许曾遇到过与 ChatGPT / Claude / Gemini 交流时,对初次得到的答案并不满意,通过提供有针对性的反馈帮助 LLM 改进回应,从而获得更好答案的情况。设想一下,如果能够自动化反馈这一环节,让模型自行检视其输出并据此改进,这就构成了“反思”的实质。
《自我完善:利用自我反馈的迭代细化技术》
https://arxiv.org/pdf/2303.17651.pdf
这篇论文的主要思想是利用大语言模型(LLM)生成初步输出,然后让该 LLM 对自己的输出提供反馈,并以此为基础进行迭代优化。他们的研究表明,即便是像 GPT-4 这样的尖端大语言模型,也可以通过我们这种简洁独立的方法在测试阶段进一步提升性能。自我完善(SELF-REFINE)全程都在单一 LLM 内运行,既不需要额外的训练数据,也不依赖强化学习。
《Reflexion:借助口头强化学习的语言智能体》
https://arxiv.org/pdf/2303.11366.pdf
论文作者提出了一种名为“Reflexion”的新框架,它不是通过更新权重来强化语言智能体,而是通过语言反馈来实现。具体来说,“Reflexion”智能体会对任务反馈信号进行口头反思,并将其自身的反思文本存储在一个事件记忆缓冲区中,以便在后续试验中引导更好的决策制定。
在 HumanEval 编码基准测试中,Reflexion 取得了 91% 的一次性通过准确率,超过了先前最先进的 GPT-4 所达到的 80% 水平。
运用工具(Tool use)
LLMs 不仅能够生成文本,还能动态生成并执行代码片段来解决问题或获取信息,集成工具和功能,实现跨不同领域的信息处理与操作,显著提升工作效率和个人生产力。
早先关于工具使用的探索,在很大程度上受到了计算机视觉研究的启发。因为在大语言模型具备处理图像能力之前,它们局限于文本和语言的理解与生成。因此,研究人员促使 LLMs 生成能与图像交互的函数代码,如图像生成或目标识别等任务。
回顾相关文献,我们会发现许多工具使用的研究案例最初是在视觉应用上取得突破,因为当时的 LLMs 尚不具备直接处理图像信息的能力。随着 GPT-4 和 LLaMA 等更强大模型的出现,LLMs 开始与各类工具紧密结合,从而拓宽了其应用场景,实现了对非文本信息资源的有效利用。
《Gorilla:与海量 API 连接的大语言模型》
https://arxiv.org/pdf/2305.15334.pdf
Gorilla 是一个基于 LLaMA 的微调模型,在编写 API 调用方面超越了 GPT-4 的性能。当 Gorilla 模型与文档检索系统相结合时,展现了强大的适应能力,能够灵活应对测试期间文档的变更,支持用户进行及时更新或版本切换。同时,它极大地减少了直接提示 LLMs 时常遇到的幻觉问题。为了评估模型在这方面的能力,我们构建了一个全面的数据集——APIBench,该数据集包含了 HuggingFace、TorchHub 和 TensorHub 等 API 的示例。
《MM-REACT:面向多模态推理与行动的 ChatGPT 提示式交互》
https://arxiv.org/pdf/2303.11381.pdf
MM-REACT 是一种由众多视觉专家模块与 ChatGPT 组成的系统范例,用于多模态推理和行动。它提供了一种简单而灵活的方法,为 LLMs 提供视觉专家模块库。
为了实现这种高级的视觉智能,MM-REACT 引入了一种文本提示设计方法,该方法可以表示文本描述、文本化空间坐标以及与密集视觉信号(如图像和视频)对齐的文件名。这样设计的提示使得语言模型能够接收、关联并处理多模态信息,从而促进了 ChatGPT 与各种视觉专家模块之间的协同配合。
规划(Planning)
吴恩达曾经进行过现场演示,AI Agents 会重新规划路径来规避失败。他曾经从一篇关于 GPT 模型的论文中改编过一个例子,即让 GPT 生成一张女孩正在读书的图片,与图片中的男孩姿势一致。利用现有的 AI Agents,我们可以决定首先确定男孩的姿势,然后在 HuggingFace 上找到合适的模型来提取姿势。接下来,只需要找到一个后处理图像的模型,合成一张根据指令的女孩的图片,然后使用图片转化为文本,最后使用文本转化为语音的技术……
如今 Agent 在面对挑战时能灵活调整策略,即便偶有失败也能从中恢复,已在实践中被用于加速研究与决策过程,成为个人工作流程中不可或缺的部分。
《思维链提示引发了大语言模型中的推理能力》
https://arxiv.org/pdf/2201.11903.pdf
大名鼎鼎的《思维链》开山之作。
仅靠增大模型规模并不足以确保大型语言模型在诸如算术、常识推理和符号推理等复杂任务上取得高水准表现。因此,Jason Wei 等人在论文中呈现了一系列实证评估,于算术、常识及符号推理基准测试中表明,思维链提示法相较于标准提示法表现出更优性能,有时甚至显著提升。
对于许多采用标准提示法其性能随模型规模增长而趋于平缓的推理任务而言,采用思维链提示法则能够显著提高规模增长曲线,带来性能上的大幅提升。
《HuggingGPT:借助于 ChatGPT 的强大语言能力和 Hugging Face 中丰富的 AI 模型》
https://arxiv.org/pdf/2303.17580.pdf
HuggingGPT 能够解决一系列跨越不同模态和领域的复杂 AI 任务,并在语言、视觉、语音以及其他难题上取得令人瞩目的成果,为实现通用人工智能开辟了全新途径。HuggingGPT 的机制是通过 LLM 组织模型间的协作,使其能够应对任何模态或任何领域中的任务。
只需提供模型描述,HuggingGPT 就能够不间断地便捷整合来自AI社区的各种专家模型,无需改变任何结构或提示设置。
多智能体协同(Multi-agent collaboration)
顾名思义,让多个模拟的 AI Agents 协同工作。
《用于软件开发的通讯智能体 ChatDev》
https://arxiv.org/pdf/2307.07924.pdf
ChatDev 在软件生成方面的工具性分析显示,其能够在不到七分钟的时间内以低于一美元的成本完成整个软件开发流程。在每个开发阶段,ChatDev 都会调动多个具有不同职责的“软件智能体”,如程序员、审查员和测试员。
在聊天链中,每一个节点代表一个特定的子任务,两个角色根据上下文进行多轮互动讨论,提出并验证解决方案。因此,这项技术特别适用于开放且创新性强的软件生产场景,在这些场景中,允许一定程度的变化和多样性。
《AutoGen:通过多智能体对话实现下一代 LLM 应用》
https://arxiv.org/pdf/2308.08155.pdf
鉴于可以从 LLMs 受益的任务范围不断扩大以及任务复杂性的日益增长,当前有一种直观的提升智能体能力的方法,那就是采用能相互协作的多个智能体。
实践中,不同复杂程度的应用可能需要具备特定能力的不同智能体集合,并且可能要求不同的对话模式,例如单轮或多轮对话,不同程度的人类介入方式,以及静态与动态对话过程。
当配置得当时,一个智能体能够自主地与其他智能体进行多轮对话,或者在特定环节中征求人类输入,从而实现了人机协作与自动化。
AutoGen 的采用已经带来了性能上的提升(超过了现有最先进的方法),减少了开发代码量,并减轻了现有应用的手动负担。随着研究者对 AutoGen 的进一步开发和完善,他们的目标将是研究诸如智能体拓扑结构和对话模式等策略,如何引导出最有效的多智能体对话,同时优化整体效率和其他相关因素。
4 月 25 ~ 26 日,由 CSDN 和高端 IT 咨询和教育平台 Boolan 联合主办的「全球机器学习技术大会」将在上海环球港凯悦酒店举行,特邀近 50 位技术领袖和行业应用专家,与 1000+ 来自电商、金融、汽车、智能制造、通信、工业互联网、医疗、教育等众多行业的精英参会听众,共同探讨人工智能领域的前沿发展和行业最佳实践。欢迎所有开发者朋友访问官网 http://ml-summit.org、点击「阅读原文」或扫码进一步了解详情。
上一篇:SQL IFNULL()函数简介