当前位置: 首页 > news >正文

Agent概念

目录

  • 一、Agent概念
  • 二、ReAct模式
  • 三、Plan-And-Execute-Agent模式

一、Agent概念

LLM本身只能基于输入得到一段输出文本,无法获取和修改外部文件,但我们可以根据模型输出编写业务Host来操作外部文件。这种在LLM基础上增加Host针对模型的输出结果实现能感知和改变模型外部环境的项目就称为Agent。

Agent 的概念、原理与构建模式

二、ReAct模式

  1. ReAct模式下LLM与Host基于XML格式,LLM会按照系统提示词的要求严格输出Thought+Action格式,Thought记录思考的过程、Action记录要执行的命令

  2. Host得到LLM输出后会根据Action执行对应的指令,并将执行结果拼接Prompt作为Observation再次输入给LLM,LLM继续输出Thought+Action。

  3. 当经过多轮输入输出,LLM推理任务已完成,那么会将任务结果拼接到Final_answer标签上输出。

上述整个过程实际上是由系统提示词约束LLM的输出格式,就像给了LLM一个剧本,举个系统提示词的例子如下,可以看到对LLM的输出进行了严格的限制:

你需要解决一个任务。为此,你需要将任务分解为多个步骤。对于每个步骤,首先使用<thought>思考要做什么,然后使用<action>调用一个工具,工具的执行结果会通过<observation>返回给你。持续这个思考和行动的过程,直到你有足够的信息来提供<final_answer>。 所有步骤请严格使用以下 XML 标签格式输出:<task>: 用户提出的任务<thought>: 思考<action>: 采取的工具操作<observation>: 工具或环境返回的结果<final_answer>: 最终答案 示例:<task>帮我找一个简单的番茄炒蛋食谱,并看看家里的冰箱里有没有西红柿。</task><thought>这个任务分两步。第一步,找到番茄炒蛋的食谱。第二步,检查冰箱里是否有西红柿。我先用 find_recipe 工具获取食谱。</thought><action>find_recipe(dish="番茄炒蛋")</action><observation>简单的番茄炒蛋食谱:将2个鸡蛋打散,2个番茄切块。热油,先炒鸡蛋,盛出。再热油,炒番茄至软烂,加入盐调味,最后倒回鸡蛋翻炒均匀即可。</observation><thought>好的,我已经有食谱了。食谱需要西红柿。现在我需要用 check_fridge 工具看看冰箱里有没有西红柿。</thought><action>check_fridge(item="西红柿")</action><observation>冰箱检查结果:有3个西红柿。</observation><thought>我找到了食谱,并且确认了冰箱里有西红柿。可以回答问题了。</thought><final_answer>简单的番茄炒蛋食谱是:将2个鸡蛋打散,2个番茄切块。热油先炒鸡蛋至定型后盛出,再热油炒番茄至软烂,加盐调味后倒回鸡蛋翻炒均匀。冰箱里有3个西红柿,材料足够制作这道菜。</final_answer>可用工具 read_file(file_path): 用于读取文件内容 write_to_file(filename, content): 将指定内容写入指定文件。成功时返回 “写入成功”。 run_terminal_command(command): 用于执行终端命令 注意事项<task>标签由用户提供,请不要擅自生成。 你每次回答都必须包括两个标签,第一个是<thought>,第二个是<action><final_answer>。 输出<action>后立即停止生成,等待真实的<observation>,擅自生成<observation>将导致错误。 如果<action>中的某个工具参数有多行的话,请使用\n来区分

Agent(LLM+Host)执行的完整执行流程如下:

三、Plan-And-Execute-Agent模式

PAEA模式需要多个LLM协同,其中Plan模型跟你局用户的问题列出完整的执行计划,由执行模型依次执行每个步骤,其中执行模型可以基于ReAct模式实现。执行模型得到结果后由Re-Plan模型根据执行结果和原执行计划给出新的执行计划。

http://www.jsqmd.com/news/544967/

相关文章:

  • 第一步:你只需要改这里的所有参数
  • 6.差分(快速区间 / 子矩阵更新)
  • 给黑帮写反侦测系统:他们在暗网给我立生祠
  • 多语言混合编程的架构实践与性能突围
  • GitHub Desktop终极中文汉化指南:3分钟实现全界面本地化
  • 2026年聚能管生产厂家推荐:盐城聚之能环保科技,V型/Π型/B型/C型聚能管全系解决方案 - 品牌推荐官
  • 【架构师老王】AI真的在“杀死”软件吗?从系统烟囱到Agent时代的非侵入式重构
  • ai全程护航:让快马智能助手帮你搞定proteus安装与初学难题
  • PowerBuilder老系统维护指南:PB12.5连接现代数据库(如MySQL 8.0)的避坑实操
  • 2026年Q355B工字钢/H型钢/镀锌工字钢厂家推荐:河南北岸金属材料全系钢材供应 - 品牌推荐官
  • Meshroom三维重建实战指南:从图像到模型的全流程解析
  • WarcraftHelper终极指南:5大核心功能让魔兽争霸3在现代系统完美运行
  • 抖音视频批量下载终极指南:4步快速掌握高效下载技巧
  • RAG技术
  • 告别B站千篇一律界面:BewlyBewly焕新定制方案提升浏览效率
  • OpenClaw 部署指南 (Linux)版本原始安装。
  • 如何通过Vial-QMK打造专属键盘体验:从入门到精通的个性化定制指南
  • MCP(Model Context Protocol):AI 应用的“USB-C 接口”
  • BDInfo:蓝光媒体技术解析的专业级引擎
  • 数据不出域,决策在边缘:2026年船舶专用边缘计算盒子推荐 - 品牌2026
  • TestDisk与PhotoRec技术架构深度解析:480+文件格式恢复机制与磁盘修复原理剖析
  • Windows风扇控制终极指南:用FanControl打造安静高效的电脑散热系统
  • 10分钟搭建企业级人脸识别系统:CompreFace零代码实战指南
  • 鸿蒙 HarmonyOS 4.0+ 音乐播放器企业级完整实现(后台播放 + 系统播控中心 + 全功能)
  • YimMenu功能增强指南:GTA V游戏体验优化实现方案
  • DXVK如何为老旧系统注入现代图形处理能力?
  • OpenClaw配置优化:GLM-4.7-Flash长文本处理性能提升30%
  • 基于ESP32与OneNET的微信小程序环境监测系统实战
  • 俄罗斯商品“通关密码”:诚信标签KIZ
  • 别再用串口打印了!用STM32F407驱动0.96寸OLED做个实时系统状态监视器(附源码)