Agent 知识总结

【第1节】Agent如何工作的?


1. 核心:感知,决策,行动,反馈
2. 过程:用户提问-》Agent思考行动(React 思考方式,Reasoning+Acting 的迭代式决策逻辑)-》根据意图选择工具-》执行工具-》结果加工-》输出答案;
3. Agent React 思考方式:是当前前沿多智能体系统的核心决策机制,指智能体通过 “观察 - 推理 - 行动 - 反馈” 的闭环流程,实现复杂任务的自主拆解、动态调整与高效执行。Agent React 思考方式的突破,使 AI 从 “信息提供方” 升级为 “任务执行方”。

【第2节】Agent架构组件


1. Tool(工具)
核心作用:单个功能模块,比如查天气、查汇率。每个工具专注做一件事。
特色说明:强调工具是 “解决单一任务” 的执行单元,每个工具只负责一个具体功能,不做通用推理。
2. AgentType(代理类型)
核心作用:决定 Agent 如何 “思考” 和 “推理”,常见的有 ReAct(反应式推理)。
特色说明:直接点明这是定义 Agent 的 “思考方式”,即它的推理逻辑和决策模式。
3. LLM(大模型)
核心作用:Agent 的大脑,负责理解和推理,常用模型如 qwen-turbo。
特色说明:标注 “内容”,突出大模型是整个智能代理的核心认知引擎,负责理解指令、生成逻辑、驱动决策。
4. initialize_agent(初始化代理)
核心作用:把大脑(LLM)和工具们组合起来,生成一个能跑的智能助手。
特色说明:标注 “组”,强调它是 “组装器” 的角色,将大模型与各类工具整合,形成完整可用的智能代理系统。

【第3节】LangChain与LangGraph区别


1. LangChain:大模型应用开发工具集 / 框架,提供海量组件(如数据加载、提示词、工具调用、记忆等);
2. LangGraph:基于 LangChain 构建的有状态多智能体工作流框架,专注于复杂、循环、多步骤的智能体流程编排
3. 若仅需实现简单功能(如 RAG 问答、单轮工具调用、基础对话),直接用 LangChain 即可,轻量高效;
4. 若需实现复杂流程(如多轮推理、循环重试、多智能体协作),基于 LangChain 组件,用 LangGraph 编排流程;
5. 核心区别:LangChain 是 “组件库”,覆盖大模型应用全链路;LangGraph 是 “流程编排引擎”,专注复杂闭环工作流,依赖 LangChain;
6. LangGraph 通过节点角色划分和状态共享实现多智能体交互。def researcher_agent(state):
# 调用工具获取数据,更新状态
state["research_data"] = call_search_tool(state["query"])
return state

def analyst_agent(state):
# 分析数据,生成结论,更新状态
state["analysis_result"] = analyze_data(state["research_data"])
return state

# 定义多智能体协作流程
graph.add_node("researcher", researcher_agent)
graph.add_node("analyst", analyst_agent)
graph.add_edge("researcher", "analyst")

【第6节】记忆对话的Memory的类型


1. ConversationBufferMemory:描述:存储按顺序的对话历史;适用场景:简单对话
2. ConversationBufferWindowMemory:描述:存储固定大小的对话窗口,保留最近 N 条对话;适用场景:长对话,保留最新的对话
3. ChatMessageHistory:描述:记录对话的每条消息(更细粒度的历史);适用场景:复杂聊天场景
4. EntityMemory:描述:记录和处理实体信息(如人物、地点等);适用场景:需要记住实体的场景
5. MapMemory:描述:存储键值对,适用于状态管理,适用场景:需要键值对存储的场景
6. CustomMemory:描述:自定义的记忆类型;适用场景:特定需求


【第7节】Prompt 设计原则和优化方法


一、 设计原则
清晰明确:界定任务目标、输出格式、约束条件,无歧义表述。
指令前置:核心指令置于开头,优先引导模型聚焦任务。
上下文适配:提供必要的背景信息、领域知识或对话历史。
格式约束:明确输出格式,降低后续处理成本。
简洁性:剔除无关信息,避免注意力分散。
可验证性:要求输出附带依据、来源或推理过程。
二、 优化方法
迭代式优化:测试 - 反馈 - 调整,循环提升 Prompt 质量。
角色设定:赋予模型专业角色,锚定知识范围与语言风格。
Few-Shot 提示:嵌入输入 - 输出示例,传递任务逻辑。
任务拆解:拆分复杂任务为简单子任务,分步引导完成。
约束强化:明确禁止项与边界条件,限定内容范围、长度、合规要求。
关键词强调:标注核心关键词,引导模型重点关注。

【第8节】ReAct Agent 概念


一、 定义
ReAct Agent 是一种基于大语言模型的智能体框架,通过交替执行推理(Reasoning)和行动(Acting)的循环(TAO 循环)来完成任务。其核心设计源自 2023 年 ICLR 会议论文《ReAct: Synergizing Reasoning and Acting in Language Models》。
二、 核心原理与设计
1. TAO 循环机制
思考(Thought):分析问题并规划行动路径。
行动(Action):调用工具(如搜索引擎、API 等)执行具体操作。
观察(Observation):评估行动结果并反馈至下一轮循环,直至任务完成。
2. 优势
结合内部推理与外部工具,减少模型幻觉。
具备动态决策能力,支持多工具协同和实时环境适应。

【第9节】ReAct Agent 图解

ReAct (Reasoning + Acting)是目前最经典的智能体模式。它的逻辑很像人类解决陌生问题:思考 -> 行动 -> 观察 -> 再思考

核心Prompt设计

ReAct的灵魂在于Prompt,你必须教会它“按格式说话”:

REACT_PROMPT = """ 尽你所能回答以下问题。你可以使用以下工具: [Search]: 用于搜索未知信息 请严格遵循以下格式: Question: 需要回答的问题 Thought: 你现在的思考过程 Action: [Search] Action Input: 搜索的关键词 Observation: 工具返回的结果 ... (重复 Thought/Action/Observation) Final Answer: 最终答案 """

它不是一次性把事做完,而是像走迷宫一样,一步步试探。

核心代码逻辑

这就是ReAct的“引擎”部分,一个简单的while循环就能实现:

def react_agent(question): prompt = REACT_PROMPT + f"\nQuestion: {question}" while True: # 1. 让LLM思考并决定行动 response = get_completion(prompt) # 2. 如果LLM决定结束,直接返回 if "Final Answer:" in response: return response.split("Final Answer:")[-1] # 3. 解析LLM想调用的工具和参数 action, action_input = parse_action(response) # 简单的正则提取 # 4. 执行工具(Hands) observation = search(action_input) # 5. 将执行结果反馈给LLM(闭环关键!) prompt += f"\n{response}\nObservation: {observation}"

点评:ReAct最强的地方在于容错。如果第一步搜错了,LLM看到Observation不对,会在下一轮Thought里自我纠正。

【第10节】MCP 解析

MCP 的本质是通过客户端将用户的 Prompt 与可用工具列表一并发送给 LLM。LLM 在理解意图后,会返回需要调用的工具名称及其对应参数。随后,MCP 客户端通过定义好的统一接口调用对应工具,完成实际执行。

用户输入 Query │ ▼ MCP 客户端构造请求(Prompt + 工具列表) │ ▼ LLM │ ▼ 解析 Prompt,返回工具名 + 参数 │ ▼ MCP 客户端通过统一接口调用对应工具 │ ▼ 工具执行并返回结果复制

以官方的client 代码举例,通过self.session.list_tools()方法获取所有的tool,然后构建一个Claudi api call,让大语言模型去判断是否调用工具

"""Process a query using Claude and available tools""" messages = [ { "role": "user", "content": query } ] response = await self.session.list_tools() available_tools = [{ "name": tool.name, "description": tool.description, "input_schema": tool.inputSchema } for tool in response.tools] # Initial Claude API call response = self.anthropic.messages.create( model="claude-3-5-sonnet-20241022", max_tokens=1000, messages=messages, tools=available_tools )

接下来如果返回内容中content的类型是tool_use,则获取tool的名称及入参,然后调用call_tool方法(mcp库提供),进行方法调用,并获得最终的结果

assistant_message_content = [] for content in response.content: if content.type == 'text': final_text.append(content.text) assistant_message_content.append(content) elif content.type == 'tool_use': tool_name = content.name tool_args = content.input # Execute tool call result = await self.session.call_tool(tool_name, tool_args)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1180956.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Frappe框架终极指南:5分钟快速部署企业级应用开发平台

Frappe框架终极指南:5分钟快速部署企业级应用开发平台 【免费下载链接】frappe frappe/frappe: Frappe 是一套全面的Web应用程序开发框架,基于Python和MariaDB数据库,主要用于创建ERP系统和其他企业级应用。其核心产品包括ERPNext&#xff0c…

3大实战技巧:用OpenCode彻底提升编程效率的完整方案

3大实战技巧:用OpenCode彻底提升编程效率的完整方案 【免费下载链接】opencode 一个专为终端打造的开源AI编程助手,模型灵活可选,可远程驱动。 项目地址: https://gitcode.com/GitHub_Trending/openc/opencode 你是否曾经在深夜调试代…

AI应用开发终极指南:使用AI SDK快速构建智能聊天机器人

AI应用开发终极指南:使用AI SDK快速构建智能聊天机器人 【免费下载链接】ai Build AI-powered applications with React, Svelte, Vue, and Solid 项目地址: https://gitcode.com/GitHub_Trending/ai/ai 项目亮点速览 还在为AI应用开发的复杂性而烦恼吗&…

fft npainting lama推理延迟优化:TensorRT加速部署可行性探讨

fft npainting lama推理延迟优化:TensorRT加速部署可行性探讨 1. 背景与问题提出 在图像修复领域,fft npainting lama(以下简称 Lama)因其出色的结构保持能力和纹理生成质量,被广泛应用于物品移除、水印清除、瑕疵修…

Edge TTS终极指南:Python文本转语音的完整解决方案

Edge TTS终极指南:Python文本转语音的完整解决方案 【免费下载链接】edge-tts Use Microsoft Edges online text-to-speech service from Python WITHOUT needing Microsoft Edge or Windows or an API key 项目地址: https://gitcode.com/GitHub_Trending/ed/edg…

中文NLP常见问题全解:RexUniNLU避坑指南

中文NLP常见问题全解:RexUniNLU避坑指南 1. 引言:中文NLP落地的现实挑战 在实际项目中,中文自然语言处理(NLP)面临诸多工程化难题。传统模型往往需要针对命名实体识别、关系抽取、情感分析等任务分别训练和部署多个模…

零基础入门DeepSeek-R1:1.5B模型保姆级安装教程

零基础入门DeepSeek-R1:1.5B模型保姆级安装教程 1. 引言 1.1 学习目标 本文旨在为零基础用户提供一份完整、可操作的 DeepSeek-R1-1.5B 模型本地部署指南。通过本教程,您将能够: 在无需 GPU 的普通电脑上成功运行大语言模型理解模型参数规…

Cherry Studio AI助手:30分钟快速部署完整指南

Cherry Studio AI助手:30分钟快速部署完整指南 【免费下载链接】cherry-studio 🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端 项目地址: https://gitcode.com/CherryHQ/cherry-studio 还在为复杂的AI工具配置而头疼吗?Che…

Z-Image-Turbo真实体验:中英文提示词都能精准渲染

Z-Image-Turbo真实体验:中英文提示词都能精准渲染 在AI生成内容(AIGC)快速发展的今天,文生图模型正从实验室走向实际应用。然而,大多数开源模型在生成速度、图像质量与语言支持能力之间难以兼顾——要么响应慢&#x…

从安装到生产:Qwen3-Embedding-4B全流程部署手册

从安装到生产:Qwen3-Embeding-4B全流程部署手册 1. 引言 随着大模型在搜索、推荐和语义理解等场景中的广泛应用,高质量的文本嵌入(Text Embedding)能力已成为构建智能系统的核心基础。Qwen3-Embedding-4B 作为通义千问系列最新推…

斯坦福四足机器人开发指南:从零构建智能运动平台

斯坦福四足机器人开发指南:从零构建智能运动平台 【免费下载链接】StanfordQuadruped 项目地址: https://gitcode.com/gh_mirrors/st/StanfordQuadruped 在人工智能与机器人技术快速发展的当下,斯坦福四足机器人项目为技术爱好者和研究人员提供了…

WVP-PRO视频监控平台终极指南:构建企业级安防系统的完整解决方案

WVP-PRO视频监控平台终极指南:构建企业级安防系统的完整解决方案 【免费下载链接】wvp-GB28181-pro 项目地址: https://gitcode.com/GitHub_Trending/wv/wvp-GB28181-pro 在当前数字化转型浪潮中,企业如何以最低成本实现最高效的视频监控系统部署…

广告法合规检查新思路:Qwen3Guard-Gen-WEB实战应用

广告法合规检查新思路:Qwen3Guard-Gen-WEB实战应用 1. 背景与挑战:广告合规的语义困境 在数字营销高速发展的今天,企业对自动化内容生成的需求日益增长。然而,随之而来的广告法合规风险也愈发突出。根据《中华人民共和国广告法》…

在Debian系Linux系统上部署Zotero文献管理工具

在Debian系Linux系统上部署Zotero文献管理工具 【免费下载链接】zotero-deb Packaged versions of Zotero and Juris-M for Debian-based systems 项目地址: https://gitcode.com/gh_mirrors/zo/zotero-deb 对于科研工作者和学术研究者而言,Zotero是一款不可…

Docker容器化部署:3分钟构建机械动力模组服务器全攻略

Docker容器化部署:3分钟构建机械动力模组服务器全攻略 【免费下载链接】docker-minecraft-server Docker image that provides a Minecraft Server that will automatically download selected version at startup 项目地址: https://gitcode.com/GitHub_Trending…

深入解析Intel主板USB3.0接口定义与引脚分配

深入解析Intel主板USB3.0接口:从引脚定义到实战设计你有没有遇到过这样的情况——机箱前置USB3.0接口插上移动固态硬盘,系统却只识别为USB2.0?传输速度卡在40MB/s以下,白白浪费了高速设备的性能。更糟的是,偶尔还伴随系…

本地语音合成神器:ChatTTS-ui免费离线文字转语音方案

本地语音合成神器:ChatTTS-ui免费离线文字转语音方案 【免费下载链接】ChatTTS-ui 匹配ChatTTS的web界面和api接口 项目地址: https://gitcode.com/GitHub_Trending/ch/ChatTTS-ui 还在为语音合成服务收费高、需要联网而烦恼吗?现在,你…

如何高效阅读Altium Designer生成的PCB电路图

如何高效“读懂”Altium Designer的PCB电路图:从识图到分析的实战指南你有没有过这样的经历?打开一张密密麻麻的多层PCB图,满屏走线像蜘蛛网一样交织,BGA底下布满了盲孔和绕线,想找一条IC信号却花了半小时也没定位到源…

MIST实战攻略:macOS安装器下载的终极秘籍

MIST实战攻略:macOS安装器下载的终极秘籍 【免费下载链接】Mist A Mac utility that automatically downloads macOS Firmwares / Installers. 项目地址: https://gitcode.com/GitHub_Trending/mis/Mist 还在为找不到合适的macOS系统安装文件而头疼吗&#x…

iOS平台Minecraft启动器完整使用指南:移动设备畅玩Java版我的世界

iOS平台Minecraft启动器完整使用指南:移动设备畅玩Java版我的世界 【免费下载链接】PojavLauncher_iOS A Minecraft: Java Edition Launcher for Android and iOS based on Boardwalk. This repository contains source code for iOS/iPadOS platform. 项目地址: …