AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


人工智能的下一步发展是什么:AI Agent工作流?
发布日期:2024-04-18 20:51:54 浏览次数: 2000


阅读本文你将了解如下内容:

1. AI Agent的定义和能力:目前对于什么构成 AI 代理并没有达成共识,术语“AI 代理”和“自主代理”经常被互换使用。然而,定义特征包括利用 LLMs 等技术进行推理和行动的能力,保持短期和长期记忆,并利用 API 通过外部工具进行任务,例如网页浏览和支付。

2. 从独立产品到集成功能的演变:这一趋势正在从独立的人工智能代理产品转向将它们作为更大应用程序中的隐形功能。这包括个人助理和 GitHub 助手等,表明代理技术的复杂性和整合程度正在增加。

3. 企业使用可靠性方面的挑战:企业要求高可靠性(~99.9%),这是目前人工智能代理很难满足的标准,原因包括测试、调试、延迟和监控等问题。此外,隐私、安全和数据保留的担忧进一步增加了复杂性。

4. 针对特定的 SDK 和框架的需求:开发人员使用传统软件解决方案和特定于代理的工具来解决人工智能代理独特的挑战。然而,该领域缺乏标准工具和框架,使得开发变得繁琐。

5. 标准化的社区努力:关于建立自主代理标准以帮助进行基准测试、安全考虑和性能评估的讨论日益增多。相关工作包括代理协议,旨在标准化与代理的交互。

6. 趋势向专业化和垂直市场发展:AI 代理的初步广泛探索正在让位于旨在完善特定功能的专业应用,例如编码或个人任务管理。这种专业化表明未来的应用程序将由多个专门的 AI 代理共同运行。


导言

相信大多数人最近都听说过 Devin AI,它作为世界上第一个 AI 软件开发者吸引了很多关注。

现在我们又有一个来自印度的类似AI,叫做 Devika。那么问题来了:这是 AI 发展的未来吗,AI Agent?

我们来深入了解一下什么是 AI 代理,它们是如何发展的,以及它们将如何改变 AI 开发的工作流程。

最重要的是,这是否将成为通往 AGI 或 AGI 本身的下一步?不多废话,让我们直接进入 AI 代理(Agent)和 AI 代理工作流程(AI Agent Workflow)

一般来说,AI 代理是一个通过传感器感知其环境,并根据其感知、内部状态和经验利用执行器对环境进行作用,以实现特定目标的系统。

但在本文中,我们特别讨论基于 LLM 的AI Agent 

它们在互联网或主机(操作系统)上自主运行,可以从它们的互动中学习,并做出决策来追求它们的目标,通常会针对特定标准进行优化。


目录

•AI 代理的历史

•改进提示

•赋予 LLMs 自我反思能力

•使用工具自主运行

•理解人工智能代理

•主动工作流程

•结论    

AI 代理的历史

2016 年,RL Agent是炒作,人们试图创建不同类型的 RL 代理来玩 Atari 等类似游戏。那时还没有 AI 代理的概念。

然而,OpenAI 的一些研究人员,包括 Jim Fan,Karpathy 和 Tim Shee,想要利用这些 RL 代理来完成一些当前 AI 代理正在做的事情。该项目被称为比特世界,并且他们的想法是创建一个能够在网页上处理小请求,比如订购披萨等的代理程序。

他们希望通过一个代理程序来操作操作系统。但是他们远远领先于游戏,技术还没有被发明出来,他们无法使其正常工作。

缺少了LLMs

他们距离创造更普遍的智能行为基础还有 5 年的时间。LLM 擅长的是理解语言,以至于他们能够根据指令修改他们的输出和行为。LLM 成为了一个正确的配方,可以用人类语言进行指导,并最终被赋予创建工作流程的任务。创建一个主动的工作流程是最合乎逻辑的下一步。

建立AI Agent的一点警告

这并不像人们现在可能认为和炒作的那么简单。就像自动驾驶汽车一样,很容易想到,很容易创建一个概念验证,但要真正让它可用却非常困难。

经过数十年的研究和数十亿美元的投入,我们仍然没有完全自动驾驶的汽车。另一个类似的技术是虚拟现实(VR),自 2000 年代末以来,我们就有了 VR 的想法和概念验证,但它仍然无法大规模应用。    

所以,AI Agent可能也是如此: 做个demo3天, 要上限估计半年。


自动改进Prompt PromptBreeder

创建一个好的代理的第一步是给它提供良好的提示。但是人类真的擅长创建良好的提示吗?对于一个特定的主题,专家可能能够创建一个优化的提示,但其他人呢?因此,有一种叫做PROMPTBREEDER它是一个自我改进的系统,可以为特定领域生成不断演化的提示:

  • 使用 LLMs,它根据多次迭代的训练数据调整和评估任务提示

  • PROMPTBREEDER 还调整了指导任务提示调整的规则(突变提示)。这导致了双重层面的自我改进:优化提示和优化方法(自指)。

  • PROMPTBREEDER 在算术和推理测试中表现优于领先的策略。

  • 它还可以为复杂挑战创建详细的提示,比如仇恨言论分类。


赋予 LLMs 自我反思能力

为了赋予 LLMs 自我反思能力,我们首先需要了解当前 LLMs 存在的问题。

  • 大模型会给出了非常笼统的回答,通常缺乏细微差别。有时会重复自己。

  • 有很多啰嗦和不必要的话,没有表达任何意思。

  • 经常试图以政治正确的方式表达事情,并且无法从特定世界观中提出良好的论点。

  • 产生幻觉,并且在复杂问题上经常出错,这可能需要回答超过 8k 或 16k 个标记。

  • 内存不足以存储给定问题的相关上下文。    

幻觉是 LLM 的最大问题之一。但这些幻觉究竟是什么?

看看OpenAI Leader对大模型的看法。    

   

幻觉的可能解决方案是让系统在回应之前多思考一下。这就是我们有几种策略,比如思维链、思维树和思维算法。具体可以参见:大模型 细节综述

自我反思的理念是让系统在回答任何问题之前探索不同的路径。

给定的系统应该具有一定的能力在其路径上进行回溯,并重新评估自己的回应。思维树/算法使用基于树或图的数据结构来浏览所有知识图。


赋予 LLMs 自我反思能力

但我个人对这些提示策略有些谨慎。我们经常认为 LLM 在通过这些高级提示策略进行提示时会有更好的规划。但一些研究人员已经表明,我们在这些提示策略中无意中透露了答案或答案的提示。    

一个 AI 代理肯定需要有能力使用不同类型的工具,没有这种能力,我们就无法拥有能够操作我们的计算机并完成特定任务的 AI 代理。

但是为什么我们需要工具,为什么不能直接将所有知识直接提供给 LLM 呢?

LLM 在进行数学计算方面表现得很差。

以前它们甚至无法访问互联网,现在却可以了。但为什么他们甚至在基本计算方面都表现不佳呢?在 LLMs 中精确地嵌入信息是非常困难的,这就是为什么与其让 LLM 自己计算数学答案,不如使用计算器或类似工具更好。


但问题是 LLM 如何知道何时使用工具?

新版本的 LLMs 不仅可以生成文本,而且还可以使用不同的工具。例如,LLMs 已经具备了搜索互联网的能力,并利用这些信息提供更新更好的答案。

这就是它的工作原理:


理解 AI Agent

目前,AI 代理在 LLM 的背景下被使用。它们被视为 RAG Pipeline的未来或者通往 AGI 的下一步。下面的图表总结了 AI 代理的内容:

一个“Agent”是一个自动推理和决策引擎。它接收用户输入/查询,并可以做出内部决策来执行该查询,以返回正确的结果。关键的代理人组件可以包括但不限于:

  • 将一个复杂问题分解成更小的问题

  • 选择一个外部工具并确定调用该工具的参数

  • 规划一组任务

  • 将先前完成的任务存储在内存模块中

我们有不同类型的代理人,可以执行从简单到非常复杂的任务,比如动态规划。或者让我纠正一下自己,RaoK将其放置后,可以帮助生成计划,稍后可以使用自动规划器进行可行性检查。    


   

主动Workflow

让我们看看如何让 LLM 思考得更多一些。但真正的问题是,将问题分解为更简单的问题是否会让 LLM 变得更聪明。

答案是肯定的

记住,虽然我们仍然使用相同的 LLM,那么为什么性能会提高呢?

答案在于上下文


当我们将问题分解为更简单的问题时,LLM 将会回答所有这些问题,并在解决整体问题时增加更多的上下文。    


但无意中我们自己告诉了 LLM 如何分解问题,因此是我们在进行规划。LLM 无法理解哪个计划更好,哪个不好。

但在接下来的几个月里,我们可以训练或指导 LLM,让它首先将问题分解为子问题。然后利用这些子问题来增加更多的上下文,然后解决问题。但问题就在这里,它本身不知道它提出的子问题是否正确。

目前,人类必须决定使用哪些子问题来解决主要任务。


现在,我知道这听起来有点不合理,但请看一下https://twitter.com/rao2z他将详细解释为什么 LLM 看起来像在规划,但实际上无法真正规划。

在最好的情况下,它们只能为类似问题提出平均的计划。

我们经常看到,当被提示到某些话题时,这种修订后的行为经常会出现故障。    

看看这个关于 LLM 局限性的精彩讲座:

             

 

人工智能代理确实可以帮助我们进行规划,但它们本身无法创建自洽的计划。

我不是唯一一个持有相似想法的人,甚至 Lecun 也同意 LLMs 无法自我反思。

无论如何,让我们看看对于 LLMs 的规划和推理能力以及更重要的是对于 AI 代理的其他方面有什么说法。

反思

反思的想法是有两个 LLMs,其中一个充当评论家,另一个是编码 LLM。现在已经证明,这至少在 HumanEval 编码基准上大大提高了编码性能。    

实现这个工作流程非常容易,这正是我们在使用 GPT 应用时所做的。我们一遍又一遍地询问它,直到它得到正确的答案。现在在使用这个应用的时候,我们决定给定的迭代答案是否正确。

但对于编码 AI 代理来说,我们可能会把答案存储在某个地方,这样 GPT 提供的脚本就可以在某个 VS code 或其他地方运行,产生一个输出,然后将该输出与正确答案进行匹配。

工具使用

工具使用有助于减少错误答案。在上面的部分已经解释了关于工具的内容。  

 

规划

Planing 仍然远未达到可用的程度,它时好时坏,因为它不知道何时停止。

它需要依赖外部规划者,来判断生成的计划是否正确。


多智能体协作

这就是 Devin 的工作,它可以在软件工程领域扮演不同的角色。不同的代理可以扮演测试人员、开发人员等角色。    


Agentic Workflow 在未来几个月甚至几年内将会变得非常庞大,但这并不意味着 LLMs 本身变得更加智能。这就像自动化首次引入一样,但针对的是 LLMs。自动化本身并不聪明,它只是让 LLMs 看起来更聪明。


结论

1. AI Agent的定义和能力:目前对于什么构成 AI 代理并没有达成共识,术语“AI 代理”和“自主代理”经常被互换使用。然而,定义特征包括利用 LLMs 等技术进行推理和行动的能力,保持短期和长期记忆,并利用 API 通过外部工具进行任务,例如网页浏览和支付。

2. 从独立产品到集成功能的演变:这一趋势正在从独立的人工智能代理产品转向将它们作为更大应用程序中的隐形功能。这包括个人助理和 GitHub 助手等,表明代理技术的复杂性和整合程度正在增加。

3. 企业使用可靠性方面的挑战:企业要求高可靠性(~99.9%),这是目前人工智能代理很难满足的标准,原因包括测试、调试、延迟和监控等问题。此外,隐私、安全和数据保留的担忧进一步增加了复杂性。

4. 针对特定的 SDK 和框架的需求:开发人员使用传统软件解决方案和特定于代理的工具来解决人工智能代理独特的挑战。然而,该领域缺乏标准工具和框架,使得开发变得繁琐。

5. 标准化的社区努力:关于建立自主代理标准以帮助进行基准测试、安全考虑和性能评估的讨论日益增多。相关工作包括代理协议,旨在标准化与代理的交互。

6. 趋势向专业化和垂直市场发展:AI 代理的初步广泛探索正在让位于旨在完善特定功能的专业应用,例如编码或个人任务管理。这种专业化表明未来的应用程序将由多个专门的 AI 代理共同运行。



53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询