AI Agent:自主性、反应性与交互性的融合,将颠覆软件行业
前言
'AI Agent 不仅会彻底改变计算机的使用方式,它还将颠覆软件行业,是一个对科技行业的冲击波,是一场自'输入命令到点击图标'变革之后计算机领域的最大变革'
——比尔•盖茨
AI Agent 作为一种新兴的人工智能技术,随着 LLM(大语言模型)的异军突起正在同步快速发展并广泛应用于各个行业。AI Agent 的概念和框架是理解其功能和潜力的基础。目前已有数十篇关于 AI Agent 的行研报告,他们显示,AI Agent 不仅仅是一个工具,这种智能体具备自主性、反应性和交互性,能够通过独立思考和调用工具来逐步完成给定目标。这使得它的应用方向和领域非常广泛,例如,智能体能够在可以用于自动化决策过程,提高效率和精确度;能在金融、医疗、教育等多个领域提供个性化服务。此外,AI Agent 还能够在虚拟与真实世界之间建立桥梁,增强其感知能力和对环境的理解。同时,关于 AI Agent 的商业实践和市场趋势,多份报告中显示,AI Agent 正成为 AI 应用层的基本架构,涵盖 toC 和 toB 产品等不同领域。这表明 AI Agent 技术不仅在学术界受到重视,也在商业界显示出巨大的潜力和价值。总结来说,AI Agent 行业的深度梳理揭示了这一领域的快速发展和广泛应用前景。随着技术的进步和市场需求的增加,预计 AI Agent 将在未来几年内继续扩展其影响力,并可能成为推动人工通用智能(AGI)发展的关键因素。
学习 AI Agent 的设计范式由此变得至关重要,本文将从吴恩达教授(Andrew Ng)在美国红杉资本的人工智能峰会 (AI Ascent) 的一场演讲内容入手,探讨 Agentic Workflow 的多步迭代模式和他自己对 AI agent 设计模式的四种分类,最后作为结尾,会对美国 AI 大厂在研 Agent 进行盘点。
吴恩达对 AI Agent 的阐述与洞见
'AI Agent 是一个令人兴奋的新兴趋势,AI Agentic Workflow 比下一代基础大模型,对 AI 发展有着更大的推动作用,所有从事人工智能的人都应该关注。'
—— 吴恩达
在 AI Ascent 上,吴恩达首先指出,现在大多数人使用 LLM 的方式,就是输入一个 Prompt,然后等它生成一个答案。这就好比:给定一个主题,让一个人去写文章,这个人就坐在电脑前,从头到尾不断打字直到全部写完,而不允许使用退格键。尽管这样做很困难,但是 LLM 的表现极其出色。与之形成对比的是 Agentic Workflow(智能体性工作流)。如果一样是写论文,那在这种方式下的流程应该是这样的:先让 LLM 写一个文章大纲,让它如果需要研究就在互联网上进行资料搜集;跟着写一个草稿,让 LLM 自己阅读自己的第一稿,思考哪些部分需要修改,对文稿进行修改;如此循环、迭代多次。
图 1. 非智能体性工作流 vs 智能体性工作流
很多人没有意识到这种 Agentic Workflow 方式,能带来多显著的优化效果,但吴恩达表示自己经常这样做,得到的效果往往很惊艳。惊讶于对 Agentic Workflow 的效果,他的团队进行了一个案例研究。研究使用了 OpenAI 在 2021 年发布的 HumanEval 数据集 (包含 164 个精心设计的 Python 编程问题,是评估 LLM 代码性能方面业界公认的基准测试),数据集中包含例如,'给定一个数字列表,找出奇数位置上的数字并返回其中的所有奇数的总和'这样的问题。
我们平常大多都会采用 Zero-Shot(不给大模型具体训练样本或标签提示,直接提问让其回答)的方式提问,让 AI 编写代码并直接运行,于是 AI 给了错误的回答。但是现实中是没有人这样一次过写成代码的。实验结果显示,在 Zero-shot 的方式下,即使是 GPT3.5,正确率也仅有 48%;GPT-4 更强会做的更好,正确率达到了 67.7%。但是当围绕着 GPT-3.5 上使用一个 Agentic Workflow,它的实际表现将超越 GPT-4。如果在 GPT-4 上使用代理工作流程,它的表现也非常出色。这意味着 Agent 对于构建应用程序影响巨大、至关重要。
图 2. GPT3.5 和 GPT4 在不同使用方式下在 HumanEval 数据集上的表现
吴恩达总结的四种 Agent 模式
'AI Agent 是一个非常混乱、动荡的领域,存在大量的研究和开源项目,很多团队做了多种多样的尝试,但我试图将其更具体的划分为四种模式'
—— 吴恩达
图 3 呈现的就是吴恩达划分的四种模式,其中,相对经典、业界广泛使用的是前两种:Reflection 和 Tool Use,而 Planning 和 Multi-agent 属于比较新颖、有前景的方式。
图 3. Agent 推理设计方案总览
1. Reflection(反思)
首当其冲的 Reflection,翻译成中文是反思,类似于 AI 的自我审视和修正。举例说明:现在让 AI 写一段定义 do_task 函数的代码,等它写好后,将生成的代码,加上类似'仔细检查这段代码的正确性、效率和结构是否良好',再次返回给 AI。这时同一个模型就可能提出其中的 bug、给出修改建议并生成更好的代码版本,如此反复,AI 就完成了自我迭代。
图 4. AI Agent 通过 Reflection 方式编程


