agentloop

Agentloop

概念

AgentLoop(智能体循环)是AiAgent的核心机制,是思考->行动->观察的循环,直到任务完成或出发终止条件。

步骤:

  1. 接收输入。Agent拿到用户的请求或者上一轮循环的结果,把信息放到上下文中。
  2. 推理决策。基于当前的上下文进行思考、判断。
  3. 执行行动。如果模型决定调用工具,系统就执行对应的工具操作。
  4. 观察和判断。把工具的结果放到上下文中,然后继续推理。模型看到信息后再次判断下一步干啥。

循环次数的控制

设置太小复杂任务做不完,设置太大如果Agent陷入了错误的循环,会浪费token。

所以一般在提示词里会有让大模型自己判断循环次数:简单任务给少一点循环次数,复杂的给多一点,看看执行进展来决定要不要继续。

AgentLoop上下文控制

AgentLoop上下文太大会导致成本太大

  1. 结果压缩。每隔几轮就把之间的过程压缩成总结概要
  2. 活动窗口。只保留最近的几轮的完整信息。
  3. 分层存储。把工具返回的数据、详细的记忆等外部存储,上下文值放再要和引用。

Agent在循环中自我纠错

如果Agent在自我循环中一直做错误决策怎么办?

  1. 可以将报错结果直接给大模型,多数大模型会知己调整好。
  2. 添加一个反思机制,每进行一轮或几轮让大模型进行反思做的对不对。
  3. 设置专门的监督Agent,发现不对就打断他。

AgentLoop的并发

Open ai 的tool calling 可以做到,Agent可以一块 调用工具然后把所有结果一起放进上下文里。

终止条件的设置

  1. 自然终止,让Agent自己判断任务完成了,在提示词里告诉他如果觉得任务完成就直接输出答案。
  2. 设置最大循环阈值,可以是轮数、token、时间等。
  3. 操作检测,识别并打断异常问题。比如连续几次调用同一个工具切工具返回的结果相同,或者联系几轮报错没进展等。

(当Agent在快要触发硬性上限的时候刚好有了突破性进展,可以给他额外续几轮)

判断Agent是否在有效推理

  1. 把最近的工具调用和参数作去重,如果就剩下一两个,就肯呢个陷入了循环。
  2. 对比最近几轮的输出内容,如果内容相似,就说明没进展。
相关推荐
七牛开发者23 分钟前
从 GLM 到 GPT,HarnessPro 如何用 RSI 降低 Agent 成本
人工智能·gpt·agent·harness·rsi
hpoenixf2 小时前
局部改善不等于整体进步:怎样判断 Agent 真的变好了?
agent
岁月宁静5 小时前
如何设计支持 Skills 的 Agent?一套可扩展的四层架构
python·agent
岁月宁静5 小时前
CrewAI 快速上手:10 分钟搭建你的第一个 Agent 团队
python·agent
染指11106 小时前
158.Agent-LangGraph-子图(共享状态和不共享状态模式)
开发语言·人工智能·python·ui·agent·agents
奈落248 小时前
Dify 管对话、n8n 管执行:把‘大脑+手脚‘的组合架构对照三方平台资料读清楚
人工智能·架构·agent·ai 办公
郑鱼咚8 小时前
一个 Agent 能干的活,为什么非要组个团队?
agent·ai编程
阿里云云原生8 小时前
让 Agent 成为企业生产力丨Alibaba Cloud AgentCore 企业智能体构建与治理沙龙·上海站精彩回顾 & PPT 下载
云原生·agent
威哥爱编程9 小时前
HarmonyOS 7 Agent 开发实战 10:降级兜底与重试
agent·harmonyos