Agent概述

fxz大约 28 分钟agentaiagent人工智能

Agent概述

概述

随着技术的进步,我们开始期待更多,我们所向往的是一个不仅把人工智能作为内容生成,还将人工智能作为连接更加复杂任务的关键纽带的时代。

这种愿景正是Agent 诞生的起点。

生成式人工智能需要经历的五个阶段:

层级ai应用描述
L1Tool (工具)对人类完成工作,没有显著的辅助作用。
L2Chatbot(聊天机器人)人类完成大部分工作,ai对话提供参考信息和建议。
L3Copilot (协同)和人类协同工作,人类对生成的质量做校验、修改。
L4AgentAI完成绝大部分工作,人类负责设定目标、提供资源和监督结果,以及最终决策。AI进行任务拆分、工具选择、进度控制,实现目标后自主结束工作。
L5Intelligence(智能)完全无须人类监督,AI自主拆解目标、寻找资源,选择并使用工具,完成全部工作,人类只须给出初始目标。

未来的 Agent 将不再仅仅是内容生成工具。它们将整合人工智能模型、海量数据和多种工具,能够执行多样化的任务,完成不同的工作。这些 Agent 不再局限于内容生成,而是开始涉足决策制定和行动执行等领域。

无论是解读复杂指令、规划策略、拆解任务,还是实施具体的步骤以达成目标,它们都展现出独特的自主性和适应性。更为关键的是,这些 Agent 能够接入并灵活运用多种辅助工具和数据资源,大幅拓宽其工作范围并显著提升工作效率。

期望

我们眼中的智能体,应具备听得懂、想的出、做的到、说的出4大核心能力。

智能体的底层逻辑抽象如下:

图片
图片
  1. 听得懂:Agent能够理解用户的自然语言请求(query),根据预设的句式模型准确提取出关键信息(词槽),并将其翻译为机器语言。每个用户请求称为query,句式用于解析请求内容,词槽是从句式中提取的关键信息,机器语言则是业务系统能够识别的参数。

  2. 想的出:Agent结合长期记忆和领域知识,运用大模型进行推理,并根据提示中的逻辑分支灵活编排任务执行,避免依赖固定剧本。规划过程动态调整,确保灵活应对多轮交互。

  3. 做的到:Agent能够联动多个业务系统,调用丰富的功能集合,具备强大的数据检索能力,能够支持复杂任务的高效执行。

  4. 说的出:Agent通过拟人化的自然语言与用户交互,提供精准且多样化的回应,避免呆板、机械的回复形式。

挑战

1.【听得懂】如何精准解析场景包含的全部客户需求,做到槽位不丢、填槽正确和高效是一个很大的技术挑战。

  • LLM 存在幻觉,无法稳定返回正确答案。比如:同一个 prompt 两次请求返回不一致。
  • LLM 多步推理正确率低,响应时间长。

2.【主动规划】Agent 自主规划解决实际问题比例非常低,容易陷入死循环。

  • LLM 对多个逻辑分支的推理错误率极高。类似于 AutoGPT 等 Autonomous Agent 产品 demo 看似惊艳,但是对于抽象复杂的问题,有效解决比例低(让 AI 自我规划容易产生死循环,或者会出现一步走错,步步走错的问题)。
  • 解决现实问题需大量业务知识,很难将这些全部输入到 Prompt 中,梳理业务也很困难,另外 LLM 的上下文窗口非常有限。

3.【执行能力】业务系统接口层次不齐,注释不全、不清晰、不准确。如何能被 LLM 理解正确使用业务系统,是一个非常有挑战性的问题。

  • LLM 的上下文窗口非常有限,很难将这些全部输入到 Prompt 中。
  • 人工编写 Prompt function call,工作量惊人。业务变更就需调整和优化 Prompt,维护难度极大。

4.【人格化回答】业务系统输出是结构化文本,如何将它们翻译回自然语言,并根据不同的返回展现不同的交互,是个棘手的问题。

  • 人格化回答需了解业务知识,否则 LLM 无法完全准确理解返回的结构化信息。
  • 大量业务 示例,会引发 LLM 多步逻辑推理,导致回答卡顿、用户体验极差。

什么是Agent

传统的人工智能技术通常局限于静态功能,它们只能在特定且受限的环境中执行预设任务。这类系统往往缺乏灵活性和自适应性,无法根据环境的变化自主调整行为。

这正是 Agent 概念的出发点。Agent 旨在推动 AI 从静态、被动的存在,转变为动态、主动的实体。简而言之,Agent(智能体)是一种具有自主性的人工智能系统。更具体地说,Agent 是能够感知环境、做出决策并采取行动的系统。

这三步是agent典型的执行流程

  • 感知环境:指的是 Agent 能够接收来自外部环境的信息。例如,自动驾驶 Agent 可以感知周围的交通状况、道路信息等。
  • 做出决策:指的是 Agent 根据感知到的信息制定下一步的行动计划。例如,自动驾驶 Agent 根据当前路况决定是否加速、减速或转弯。
  • 采取行动:指的是 Agent 根据决策执行相应的操作。例如,自动驾驶 Agent 会根据决策控制油门、刹车和方向盘等系统。

Agent 能够独立完成特定任务,其具有以下四大特性

  • 自主性:Agent 能够根据自身的知识和经验,独立做出决策并执行相应的行动,无需外部干预。
  • 适应性:Agent 具备学习和适应环境的能力,能够在不断变化的环境中调整自身行为,提高执行任务的效果。
  • 交互性:Agent 能够与人类进行互动,提供信息或服务,进行有效的沟通与协作。
  • 功能性:Agent 能够在特定领域内执行专门的任务,展现出在特定情境中的专业能力。

从技术角度来看,Agent 通常包括以下核心组件

  • 感知器:Agent 通过感知器接收关于环境的信息。这些信息可以通过传感器获取的实时数据,也可以是从数据库或互联网获取的相关数据。
  • 知识库:Agent 通过知识库存储和管理有关环境和自身状态的信息,并根据目标和以往的经验做出判断。
  • 决策引擎:Agent 分析感知到的信息,结合知识库中的数据,通过决策引擎做出行动方案或计划。
  • 执行器:Agent 通过执行器在环境中采取行动。这些行动可以是物理动作(例如机器人移动手臂),也可以是虚拟动作(如在线服务发送信息)。

从架构层面看,Agent通常包含一下四大要素

  • 规划:Agent 需要具备规划和决策能力,以有效执行复杂任务。这包括子目标的分解、连续的思考、自我反思和批评,以及对过去行动的回顾与调整。

  • 记忆:包括短期和长期记忆。短期记忆与上下文学习相关,属于提示工程的一部分;长期记忆则涉及信息的长时间存储和检索,通常借助外部存储和快速检索系统。

  • 工具:Agent 能调用各种外部工具,如代码解释器和搜索引擎。这些工具扩展了 Agent 的能力,弥补了大模型预训练后知识边界的限制,帮助其完成更复杂的任务。

  • 行动:Agent 基于规划和记忆执行具体行动,可能与外部世界互动或通过调用工具完成任务。

流程图

  • 接收任务:Agent 通过读取提示信息(查询、附加知识和角色指示)来接收并理解需要处理的任务。
  • 记忆更新:根据具体任务,Agent 会更新系统记忆,确保所有相关信息都是最新的,以便在处理任务时使用。
  • 记忆检索:由于记忆量可能较大,Agent 需要从记忆中检索相关信息,或者进行必要的截断,以确保高效处理。
  • 任务规划:基于结构化工具、记忆和查询提示,Agent 生成一个任务计划,列出后续步骤和所需调用的工具及参数。
  • 工具执行:如果任务规划产生了完成信号,Agent 将结束任务并生成结论;否则,系统调用并执行指定工具,将结果整合到任务记忆中。
  • 总结:系统最后总结出最终答案,完成任务处理流程。

规划决策

大模型赋予 Agent 的规划和决策能力至关重要。规划是将复杂任务分解成更小、易于管理的子任务的过程,有助于更好地理解和完成任务。

研究人员提出了多种规划技术,包括任务分解、结合外部规划器、自我反思等。

任务分解的主要技术包括:

  • 思维链:通过提示模型逐步思考,将大任务拆解为小任务,并解释其思考过程。
  • 思维树(Tree of Thoughts, ToT):在每个步骤探索多种推理可能性,形成树状结构,使用广度优先搜索(BFS)或深度优先搜索(DFS)等方法来评估各步骤,通过提示或投票决定下一步。
  • 任务分解:还可以通过简单提示、特定任务指令或人工手动进行任务分解。

结合外部规划器的方法,例如“大模型 + P”,使用 PDDL(Planning Domain Definition Language)来描述问题。首先,大模型将问题转化为 PDDL,再由外部规划器生成计划,最后将计划转换回自然语言。这种方法常用于机器人领域,将复杂的规划步骤外包给外部工具完成。

记忆

大模型形成记忆的机制可以总结为以下几种。

  1. 预训练记忆:大模型通过在大量包含世界知识的数据集上进行预训练,调整神经元权重以学习和生成语言。这一过程形成了大模型的长期记忆,帮助其掌握广泛的世界知识。

  2. 上下文互动:大模型在执行任务时,将长期记忆与当前上下文(提示信息)结合。如果上下文与模型的记忆知识存在冲突,理想情况下,大模型会优先考虑上下文,以生成更具上下文特定性的回应。

  3. 微调:通过针对特定任务的数据集进行微调,大模型可以提升其在特定任务上的性能。例如,针对某类问题的数据集微调后的模型,在处理该问题时表现更加熟练。

  4. 外部记忆整合:大模型与外部记忆系统整合,提供长期记忆支持。这增强了大模型的性能,使其能够回忆过去的互动并提供个性化服务,涉及动态个性理解和记忆更新机制。(rag和工具调用可以补充模型数据)

工具

在现实世界中,人类通过使用各种工具扩展能力。同样,Agent 通过调用外部工具来提升自身能力和效率。调用工具的能力被视为Agent的核心技能之一。这些工具可以提供额外的数据、处理能力、专业知识或其他资源,使Agent能够应对更复杂的任务。通过灵活运用这些工具,Agent可以突破自身限制,执行超出其内部能力范围的任务,实现更高效的工作流程。

Multi-Agent

概述

四种主要的Agent设计模式:

Reflection(反思):让 Agent 审视和修正自己生成的输出;

Tool use(工具使用):LLM 生成代码、调用 API 等进行实际操作;

Planning(规划):让 Agent 分解复杂任务并按计划执行;

Multi-agent collaboration(多智能体协作):多个 Agent 扮演不同角色合作完成任务;

这些模式共同构成了 AI Agent 工作流的核心架构。

第四种模式(多智能体协作),在这种模式下,每个智能体都有自己的角色和职责,它们通过通信和协作来共同达成目标。

这种协作可以提高系统的效率和智能性,因为不同的智能体可以专注于它们最擅长的任务。

在多智能体系统中,个体智能体评估其他智能体的需求和能力,并寻求与他们的协作行动和信息共享。这种方法可以提高任务效率、改进集体决策、解决单个智能体无法独立解决的复杂现实问题,最终实现协同互补。

让智能体更优秀:

  • 角色扮演:给定模型指定的角色以及目标。
  • 专注:不应该把所有的事情让一个agent来做,而是让多个智能体进行协作,否则模型可能会丢失关键信息。
  • 工具。
  • 协作:这里指的是多个智能体之间的协作,彼此平衡之间的想法。
  • 护栏:这里指的是工程上的防护措施,比如agent陷入死循环,以及预期外的错误导致系统异常。
  • 记忆:agent利用记忆可以做出决策。短期记忆:agent执行上下文中产生,智能体间共享;长期记忆:可以理解为进行了持久化,agent执行完也会有。

对比

img
img

实现架构

1、模型层采用“大小模型协同”架构,大模型 query 尽量走长期记忆,解决【听不懂】和【问答卡顿呆板】的问题

  • 有些小任务不需要大模型,小模型不用1s,效果还更稳定。
  • 必须通过大模型处理的 query,对查询结果长期记忆。长期记忆可以通过离线处理来预热、填充和修正。持续一段时间后,这些请求全部走长期记忆,保证了高效准确。

2、基于领域 SOP 的多智能体协作,解决【无法自主规划】和【执行能力弱】的问题

  • 实际业务问题非常复杂,直接通过大模型自主规划基本无解。类似人类解决问题“分而治之”,我们将一个大任务拆解为多个子任务,并将各个子任务交给领域专家去解决。
  • 基于企业 SOP,将复杂问题拆解给多个智能体协作解决,有效降低了大模型的推理难度,从而达到了生产环境要求的响应速度和稳定性。标准操作程序(SOPs)编码作为智能体 Prompt,指导大模型按照结构化流程工作并协调智能体各个环节,允许具有领域专长的智能体验证输出并减少复合错误,有效避免大模型的幻觉。

3、利用长期记忆和自学习策略,解决【无法自主规划】,驱动客户增量表达。

  • 建设完整的动态规划机制,允许智能体局部试错、回溯,强化 Agent 的生成质量。
  • 建设长期记忆+Self-Learning 结合的长效机制,使得 Agent 因为长期记忆的积累和自学习策略越用越强。