大模型进阶:手把手教你构建具备多次调用能力的智能Agent(收藏版)

张开发
2026/4/14 17:28:12 15 分钟阅读

分享文章

大模型进阶:手把手教你构建具备多次调用能力的智能Agent(收藏版)
本文深入探讨了Agent为何需要多次调用大模型从简单问答到复杂任务如天气查询、数据分析、机票预订、软件开发的调用次数需求分析阐述了控制层与模型层的分离架构设计。核心聚焦于ReAct模式通过实例解析其工作流程并详细介绍了Function Calling机制的关键特性。此外还探讨了多智能体协作模式的优势以及工程实践中上下文管理、重试与自我纠错机制等关键问题。最后提出了性能优化与成本控制的多层次策略旨在帮助读者全面掌握构建高效、稳定、可扩展的智能Agent的核心理念与实践方法。1、引言为什么Agent需要多次调用大模型单次调用的大模型如同一个“聪明但健忘的顾问”——你可以问它一个问题它给出答案但无法主动执行操作、无法从环境中获取反馈、无法自我修正。Agent的核心突破在于 赋予大模型行动能力和循环思考能力 而这必然需要多次调用简单问答场景 仅需 1 次调用即可完成。用户提问模型直接回答无需额外操作。查询天气并推荐穿衣场景 需要 2 至 3 次调用。第一次调用获取天气数据第二次调用基于天气给出穿衣建议可能还需要第三次调用进行最终整理。自动数据分析场景 需要 5 至 10 次调用。包括读取数据、数据清洗、统计分析、图表生成、结果解读等多个步骤每个步骤都可能涉及工具调用和结果反馈。多轮对话式预订机票场景 需要 10 至 20 次调用。涉及日期查询、航班比价、乘客信息填写、支付确认等多个环节每个环节都需要与用户确认和系统交互。全自动软件开发场景 需要数十至上百次调用。包括需求分析、代码编写、单元测试、代码审查、修复bug、文档生成等完整开发流程。2、总体架构控制层与模型层的分离1 设计图Agent核心架构设计要点控制器Orchestrator 纯代码实现的状态机是整个系统的“大脑中枢”负责维护循环状态、判断何时终止、处理异常情况。它不依赖大模型保证了控制的确定性和稳定性。模型层 仅负责决策是系统的“思考器官”。每次调用只做一件事——基于当前上下文决定下一步该做什么。模型不执行任何实际操作也不存储任何状态。工具层 封装所有外部能力是系统的“手脚”。包括API调用、数据库操作、代码执行、文件读写等。工具层对模型完全透明模型只需知道工具的名称和用途无需了解实现细节。记忆模块 管理短期对话历史和长期知识存储。短期记忆维护当前任务的完整上下文长期记忆通过向量数据库实现相关知识的检索与注入。3、核心驱动力ReAct模式1 流程图单次循环的标准流程2 ReAct模式示例[调用 1]Thought: 用户想知道北京天气我需要先查询天气APIAction: get_weather(city北京)--- 系统中断执行工具返回结果 --- [调用 2]Observation: 北京晴天温度25°C湿度40%Thought: 我已获取天气信息现在可以给出穿衣建议Action: recommend_clothing(temperature25, weather晴天)--- 系统中断执行工具 --- [调用 3]Observation: 建议穿着短袖T恤、薄外套Thought: 所有信息已齐备可以回答用户Final Answer: 北京今天天气晴朗温度25°C建议穿短袖T恤早晚可加薄外套。4、关键技术实现1 功能图Function Calling机制2 Function Calling工作原理Function Calling是现代大模型如GPT-4、Claude 3.5、Gemini的原生能力其核心价值在于确定性输出 模型输出结构化的tool_calls对象而非自由文本彻底解决了输出解析的不可靠问题强制中断机制 当模型决定调用工具时API 会返回结构化的对象而不是继续生成普通文本。系统可以在本轮调用结束后立即执行工具并将结果追加到对话历史中从而实现明确的“思考-行动”分离。类型安全 工具参数通过JSON Schema定义模型输出的参数自动符合类型约束减少了类型转换错误3 工具定义示例工具定义的JSON Schema结构如下所示包含工具名称、功能描述和参数定义三个核心部分工具定义示例{ type: function, function: { name: get_weather, description: 获取指定城市的天气信息, parameters: { type: object, properties: { city: { type: string, description: 城市名称如北京 } }, required: [city] } }}当模型决定调用工具时返回的tool_calls对象包含调用ID、工具名称和参数JSON模型返回的tool_calls示例{ tool_calls: [{ id: call_abc123, function: { name: get_weather, arguments: {/city/: /北京/} } }]}系统执行工具后需要构造一条tool角色的消息将执行结果与调用ID关联追加回对话历史工具执行结果的消息格式{ role: tool, tool_call_id: call_abc123, content: 北京晴天温度25°C}5、多智能体协作模式当单个Agent无法高效处理复杂任务时多智能体系统Multi-Agent System成为更优选择。每个Agent拥有独立的角色、工具集和提示词通过协作完成复杂任务。1 设计图主管-工作者架构2 多智能体调用流程以下是一个“开发计算器应用”任务的完整协作时序展示了6次大模型调用如何在多个Agent之间流转3 多智能体架构的核心价值角色专业化 每个Agent专注于特定领域提示词可以高度定制工具集可以精准配置输出质量更高任务并行化 相互独立的任务可以由不同Agent同时执行显著提升整体效率自我纠错能力 通过审查Agent的介入可以在正式交付前发现并修复问题形成自我完善的闭环可扩展性 新增能力只需增加对应的专业Agent无需修改现有系统6、工程实践中的关键问题1 上下文管理多次调用会导致历史消息迅速膨胀必须实施管理策略策略一摘要压缩当历史消息超过预设阈值如20条消息或10000 Token时系统会调用大模型对早期对话生成摘要。摘要保留核心信息和关键决策点替代原始消息后续调用只保留摘要加最近几轮完整对话。策略二滑动窗口只保留最近N轮完整的“思考-行动-观察”循环丢弃更早的内容。这种策略实现简单但可能丢失重要上下文适用于对历史依赖不强的任务。策略三RAG检索增强将所有历史消息向量化存入数据库。每次调用前根据当前问题检索最相关的历史片段动态注入上下文。这种方式在长周期任务中表现优异但实现复杂度较高。策略四混合策略实际系统中通常采用组合策略滑动窗口保证近期的完整性摘要压缩处理中等距离的历史RAG检索处理跨会话的知识。2 重试与自我纠错机制在实际运行中各种错误难以避免API限流、网络波动、模型输出格式异常、工具执行失败等。一个健壮的Agent必须具备完善的错误处理能力。错误类型与应对策略API限流错误 采用指数退避策略首次等待1秒后续依次等待2秒、4秒、8秒……直到达到最大重试次数。不同API的限流规则不同需要针对性配置。模型输出格式错误 当模型未按预期输出结构化内容时系统会构造一条纠错提示如“你输出的格式不符合要求请按照{格式说明}重新输出”将这条提示作为新的系统消息追加后重试。工具执行失败 工具执行过程中可能抛出异常如API密钥失效、参数类型错误等。系统会捕获异常将错误信息包装为Observation如“工具返回错误无效的城市名称”让模型尝试修正参数后重试。无意义循环检测 当模型连续多次执行相同操作且无进展时系统会强制中断返回当前已获得的最佳结果避免无限循环和资源浪费。7、性能优化与成本控制随着调用次数增加延迟和成本呈线性增长。以下是三个层面的优化策略1 调用层面优化流式输出 通过SSEServer-Sent Events逐步返回模型生成内容用户感知的首字延迟从秒级降至毫秒级显著提升交互体验并行调用 识别相互独立的子任务如同时查询天气和航班信息在同一轮循环中并发执行多个工具将串行耗时变为并行耗时缓存机制 对于重复的查询如相同的天气查询、固定的计算任务建立请求-响应缓存相同输入直接返回缓存结果避免重复调用2 模型层面优化模型路由 建立模型选择器简单任务如格式转换、文本提取使用小模型如GPT-3.5或本地部署的7B模型复杂推理任务使用大模型。这种方式可降低60%以上的成本Prompt压缩 精简系统提示词移除冗余描述合并相似指令将提示词Token消耗降低30%-50%量化推理 使用量化版本的模型如INT8、INT4量化在推理速度和成本上获得显著提升对部分任务场景精度影响可控3 架构层面优化异步执行 将模型调用设计为异步非阻塞模式同一进程中可同时处理多个任务的等待状态提高系统吞吐量智能终止 构建早停机制当模型连续多次输出的置信度较低或连续多轮无实质进展时提前结束循环返回结果批处理 对于可批量处理的独立请求如批量数据标注将多个请求合并为一次调用利用模型的原生批处理能力单次成本远低于多次调用的总和优化策略全景图 总结Agent实现多次调用大模型本质上是构建了一个 认知循环架构 将大模型从“一次性回答工具”升级为“持续决策与行动系统”。核心要素总结循环控制 通过ReAct模式将单次推理扩展为“思考-行动-观察”闭环配合状态机实现可控的多次迭代决策输出 借助Function Calling或结构化输出约束确保模型输出可被程序精确解析消除自由文本带来的不确定性工具集成 设计标准化的工具接口将模型决策转化为实际执行赋予模型操作外部世界的能力记忆管理 通过摘要压缩、滑动窗口、RAG检索等策略解决长对话上下文膨胀带来的成本和窗口限制问题多智能体 采用主管-工作者架构分解复杂任务通过专业化分工和协作提升系统整体能力上限未来趋势展望随着大模型技术的持续演进Agent的多次调用机制将呈现以下趋势更长上下文 百万级Token的上下文窗口正在成为主流单次调用即可承载更多历史信息减少因窗口限制导致的额外调用更强的推理 模型原生推理能力的增强将减少部分“为了思考而思考”的冗余调用更智能的规划 模型将具备更高级的任务规划能力能够一次性规划完整执行路径减少试错和回溯带来的调用次数更自然的交互 模型将在调用工具时自动判断何时需要用户确认、何时可以自主执行使多轮调用更接近人类助理的自然交互方式如何学习大模型 AI 由于新岗位的生产效率要优于被取代岗位的生产效率所以实际上整个社会的生产效率是提升的。但是具体到个人只能说是“最先掌握AI的人将会比较晚掌握AI的人有竞争优势”。这句话放在计算机、互联网、移动互联网的开局时期都是一样的道理。我在一线互联网企业工作十余年里指导过不少同行后辈。帮助很多人得到了学习和成长。我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限很多互联网行业朋友无法获得正确的资料得到学习提升故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】为什么要学习大模型我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年人才缺口已超百万凸显培养不足。随着AI技术飞速发展预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。大模型入门到实战全套学习大礼包1、大模型系统化学习路线作为学习AI大模型技术的新手方向至关重要。 正确的学习路线可以为你节省时间少走弯路方向不对努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划带你从零基础入门到精通2、大模型学习书籍文档学习AI大模型离不开书籍文档我精选了一系列大模型技术的书籍和学习文档电子版它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。3、AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。4、大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。5、大模型大厂面试真题面试不仅是技术的较量更需要充分的准备。在你已经掌握了大模型技术之后就需要开始准备面试我精心整理了一份大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。适用人群第一阶段10天初阶应用该阶段让大家对大模型 AI有一个最前沿的认识对大模型 AI 的理解超过 95% 的人可以在相关讨论时发表高级、不跟风、又接地气的见解别人只会和 AI 聊天而你能调教 AI并能用代码将大模型和业务衔接。大模型 AI 能干什么大模型是怎样获得「智能」的用好 AI 的核心心法大模型应用业务架构大模型应用技术架构代码示例向 GPT-3.5 灌入新知识提示工程的意义和核心思想Prompt 典型构成指令调优方法论思维链和思维树Prompt 攻击和防范…第二阶段30天高阶应用该阶段我们正式进入大模型 AI 进阶实战学习学会构造私有知识库扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架抓住最新的技术进展适合 Python 和 JavaScript 程序员。为什么要做 RAG搭建一个简单的 ChatPDF检索的基础概念什么是向量表示Embeddings向量数据库与向量检索基于向量检索的 RAG搭建 RAG 系统的扩展知识混合检索与 RAG-Fusion 简介向量模型本地部署…第三阶段30天模型训练恭喜你如果学到这里你基本可以找到一份大模型 AI相关的工作自己也能训练 GPT 了通过微调训练自己的垂直大模型能独立训练开源多模态大模型掌握更多技术方案。到此为止大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗为什么要做 RAG什么是模型什么是模型训练求解器 损失函数简介小实验2手写一个简单的神经网络并训练它什么是训练/预训练/微调/轻量化微调Transformer结构简介轻量化微调实验数据集的构建…第四阶段20天商业闭环对全球大模型从性能、吞吐量、成本等方面有一定的认知可以在云端和本地等多种环境下部署大模型找到适合自己的项目/创业方向做一名被 AI 武装的产品经理。硬件选型带你了解全球大模型使用国产大模型服务搭建 OpenAI 代理热身基于阿里云 PAI 部署 Stable Diffusion在本地计算机运行大模型大模型的私有化部署基于 vLLM 部署大模型案例如何优雅地在阿里云私有部署开源大模型部署一套开源 LLM 项目内容安全互联网信息服务算法备案…学习是一个过程只要学习就会有挑战。天道酬勤你越努力就会成为越优秀的自己。如果你能在15天内完成所有的任务那你堪称天才。然而如果你能完成 60-70% 的内容你就已经开始具备成为一名大模型 AI 的正确特征了。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多文章