agent小记
·
插播:也许有人想看谷歌5-Day AI Agent的学习笔记吗?博主疯狂整理中 (╯▔皿▔)╯
这是写demo的时候注意到的一张图,比较清晰所以先总结了一下!

基于大语言模型(LLM)的Agent框架中,查询的处理以及插件如何通过回调机制与Agent交互的过程。
Agent工作流解释
阶段一:查询输入与启动
- 输入查询(Input Query)
用户输入一个查询,这个查询被发送给Runner。
Runner充当整个系统的入口和调度器,负责接收用户输入、初始化上下文并启动代理。 - before_agent_callback 触发
在Runner实际调用 ResearchPaperFinderAgent之前,它会检查是否有配置的插件具有before_agent_callback方法。
如果Runner执行过程中发现CountInvocationPlugin拥有此方法,则立即调用它。
目的 为了在任务开始时记录一次“Agent运行”事件。 - Agent启动
Runner正式将任务交给ResearchPaperFinderAgent,Agent接管任务,并思考如何执行。
以ResearchPaperFinderAgent为例:
- 分析意图:用户想要查找论文
- 工具选择:Agent可能会决定需要使用一个搜索工具或调用LLM来规划下一步
阶段二:LLM调用与插件互动
- before_model_callback触发
Agent在处理查询时,确定需要调用LLM来进行推理、工具选择或生成响应。
在Agent真正向LLM发送请求前,再次检查是否有插件具有before_model_callback方法。
目的 在每次消耗LLM资源之前进行精确计数。 - LLM执行
Agent正式向LLM发送请求。
LLM接收到请求,进行推理:
- 如果是工具调用,LLM返回要调用的工具名称和参数。
- 如果是最终响应,LLM返回文本答案。
阶段三:结果返回
- Agent返回结果
LLM处理完毕后,将结果返回给Research Paper Finder Agent。Agent会根据LLM的输出采取进一步行动(例如执行搜索工具),或将结果整理成最终答案。
回传:Agent将最终整理好的结果返回给Runner。 - Runner响应
Runner接收到Agent返回的最终结果。
Runner将这个结果格式化后,作为Response返回给用户。
总结:非侵入式的监控
整个流程的关键在于 插件(CountInvocationPlugin) 通过 回调函数(Callback) 在关键时间点介入,实现了非侵入式的监控:
-
before_agent_callback (2): 介入 Runner 调用 Agent 之前,用于统计整个任务的开始。
-
before_model_callback (4): 介入 Agent 调用 LLM 之前,用于统计生成式 AI 资源的消耗。
更多推荐


所有评论(0)