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
         继续下一轮
相关推荐
慎独41311 小时前
重置学习系统:唤醒孩子的“双引擎”学习力
学习
近津薪荼11 小时前
优选算法——双指针专题7(单调性)
c++·学习·算法
峥嵘life12 小时前
Android 16 EDLA测试STS模块
android·大数据·linux·学习
高铭杰12 小时前
LlamaIndex实用入门案例(可执行)
agent·llvm·rag·llamaindex
invicinble12 小时前
学习的门道和思路
java·开发语言·学习
sayang_shao13 小时前
Rust多线程编程学习笔记
笔记·学习·rust
进阶的猪13 小时前
Qt学习笔记
笔记·学习
mango_mangojuice13 小时前
Linux学习笔记 1.19
linux·服务器·数据库·笔记·学习
Leekwen13 小时前
生命的选题
学习·思考·生活·认知高度·认知带宽