Agent学习——反思模式

之前关于Agent学习中,主要涉及提示链(顺序执行)、路由(动态选择)、并行(并发),这三个部分都是为了是的智能体能够应对复杂的任务,但是其输出的结果是肯定有不稳定的因素的 。所以这里接下来进一步学习反思模式(像人一样根据自身的状态进行自我纠正,自我改进,本质上是循环反馈 )故需要嵌套循环,以及依据评估结果给出终止循环的条件

反思模式一般的实现方式是:借助另外一个大模型,并给他一个提示身份(如高级建筑工程师身份),让其对另外一个直接参与内容生成的Agent输出的内容进行评估

这种方式使得各个Agent之间的职责被分离 ,用与内容生成的Agent专精于内容的产生,评估该Agent的Agent能专精于Agent的评估

其开发工具为:Langchain和Google ADK

python 复制代码
实现逻辑:
循环条件:当前轮次 < 最大轮数
每次循环:
    
    A. 生成/优化阶段
    ┌─ 如果 当前轮次 == 0:
    │     输入 = 任务描述
    │     提示 = "请完成这个任务"
    └─ 否则:
         输入 = 对话历史 + 最新反馈
         提示 = "请根据反馈优化结果"
    
    B. 调用AI生成
    ┌─ 发送输入给AI模型
    │  接收AI的回复
    │  当前结果 = AI回复内容
    └─ 记录到历史:对话历史.append({"role": "assistant", "content": 当前结果})
    
    C. 评估阶段
    ┌─ 构建评估提示:
    │  "你是一个严格的评估者。"
    │  "原始任务:[任务描述]"
    │  "当前结果:[当前结果]"
    │  "如果完美,回复'满意',否则提改进建议。"
    └─ 获取评估结果 = AI回复
    
    D. 终止判断
    ┌─ 如果 评估结果包含"满意":
    │     结束循环
    │  否则如果 当前轮次 == 最大轮数-1:
    │     结束循环
    └─ 否则:
         记录反馈到历史:对话历史.append({"role": "user", "content": 评估结果})
         当前轮次 += 1
         继续下一轮
相关推荐
努力努力再努力FFF8 小时前
运维工程师想学习AI来提升系统自动化水平,该怎么切入?
运维·人工智能·学习
木木_王8 小时前
嵌入式Linux学习 | 数据结构(Day06)全解:线性表 + 栈队列 + 静态库 / 动态库(原理 + 代码 + 编译实战 + 易错点)
linux·数据结构·笔记·学习
想ai抽8 小时前
Agent记忆架构设计剖析系列:原理、权衡与场景适配(总结)
人工智能·agent·harness
-Springer-8 小时前
STM32 学习 —— 个人学习笔记11-2(SPI 通信外设 & 硬件 SPI 读写 W25Q64)
笔记·stm32·学习
念恒123068 小时前
Python(简单判断) —— 从 if 开始
python·学习
易生一世9 小时前
Kiro CLI调用MCP servers
agent·mcp·kiro
峥嵘life9 小时前
Android 不同的蓝牙音箱连接后声音突变问题分析解决
android·学习
Willliam_william9 小时前
QEMU学习之路(12)— 使用qemu-system-riscv64测试IOMMU
大数据·学习·elasticsearch
2zcode9 小时前
基于Chaboche物理约束与LSTM残差学习的316L不锈钢循环塑性灰箱本构建模研究
学习·机器学习·lstm
my_daling9 小时前
DSMC通信协议理解,以及如何在FPGA上实现DSMC从设备(2)
学习·fpga开发