第 04 课:工具与 Agent 基础

发布时间:2026/7/9 4:19:37

第 04 课:工具与 Agent 基础
第 04 课工具与 Agent 基础配套代码仓库https://gitee.com/wang-zeyong111/lang-chain-lecture本课定位如果模型只能生成文本它就只是一个“会说话”的系统。工具让模型能够行动查数据库、算数、调用 API、检索文档、创建工单。Agent 则让模型决定什么时候调用哪个工具并根据工具结果继续推理。学习目标使用tool创建工具。理解工具名称、描述、参数 schema 的作用。创建一个基础 Agent。理解 ReAct 工具调用循环。判断链、工具调用和 Agent 的适用场景。一、工具是什么工具是一个带有元数据的可调用函数。对模型来说工具由三部分组成工具名模型选择工具时看到的名字工具描述告诉模型这个工具适合什么场景参数 schema告诉模型需要传什么参数。示例fromlangchain.toolsimporttooltooldeflookup_order(order_id:str)-str:根据订单号查询订单状态。order_id 形如 A1001。return运输中函数 docstring 不是给人看的注释那么简单它会影响模型是否正确调用工具。二、什么时候需要工具需要工具的典型场景问题涉及实时信息问题涉及私有数据需要精确计算需要访问数据库需要写入外部系统需要调用搜索、CRM、工单、支付等 API需要检索知识库。如果一个任务只需要模型根据已有上下文生成文本就不需要工具。三、工具设计原则一个工具只做一件事不要设计一个do_everything工具。模型很难判断如何使用。更好的做法是拆成lookup_order;create_refund_ticket;search_policy;escalate_to_human。工具名清楚工具名最好是动词或动宾短语。比如calculate;search_course_docs;get_weather;lookup_customer_profile。描述要说明使用时机坏描述查询信息。好描述根据订单号查询订单状态。仅当用户提供订单号并询问物流、退款或支付状态时使用。参数要有类型类型注解会变成工具 schema。没有类型模型很难稳定传参。四、Agent 的执行循环常见 Agent 遵循类似 ReAct 的循环接收用户消息调用模型模型判断是否需要工具如果需要输出工具调用系统执行工具工具结果作为 ToolMessage 回传模型继续判断最终输出答案。这就是 Agent 比普通链更灵活的原因也是它更难控制、更贵、更慢的原因。五、create_agent基础写法fromlangchain.agentsimportcreate_agent agentcreate_agent(modelopenai:gpt-5-nano,tools[lookup_order,calculate],system_prompt你是客服助手。需要查询订单时必须调用工具。,)resultagent.invoke({messages:[{role:user,content:订单 A1002 到哪了}]})result[messages]中会包含用户消息、AI 消息、工具消息和最终回复。六、链和 Agent 的选择需求推荐固定步骤摘要Runnable 链固定 RAG 问答Runnable 链固定分类抽取结构化模型调用模型需要自主选择工具Agent需要多轮工具调用Agent需要复杂状态和人工审批LangGraph经验能用链稳定解决就不要为了“智能”强行用 Agent。Agent 的价值在动态决策不在固定流程。七、工具错误处理工具可能失败参数缺失参数格式错误外部 API 超时数据库无结果权限不足。工具内部应该返回对模型有用的短消息而不是抛出长堆栈。例如未找到订单请确认订单号是否正确。而不是Traceback...在高级 Agent 中还可以用中间件统一处理工具错误。八、高风险工具某些工具会改变外部状态退款删除数据发送邮件下单修改权限提交审批。这类工具要加保护参数校验权限检查用户二次确认人工审核幂等设计操作日志。不要让模型在没有确认的情况下直接执行不可逆动作。九、常见坑工具描述太模糊模型不知道何时调用。工具参数名太抽象例如x、data。工具返回太长浪费上下文。把高风险操作直接暴露给 Agent。用 Agent 处理固定流程增加不确定性。没有记录工具调用日志出错后无法排查。十、自测清单我能把一个 Python 函数改造成 LangChain 工具。我知道 docstring 会影响模型工具选择。我能解释 Agent 的工具调用循环。我能判断固定链和 Agent 的区别。我知道高风险工具需要人工确认或权限控制。十一、课后练习定义search_policy(query)工具返回售后政策。定义escalate_to_human(summary)工具模拟转人工。设计系统提示投诉、法律风险、高金额退款必须转人工。如果有真实模型创建 Agent 并测试工具调用。

相关新闻

【claude code实践】让 Claude Code 改善命名:变量、函数与模块的语义优化

【claude code实践】让 Claude Code 改善命名:变量、函数与模块的语义优化

2026/7/9 4:19:37

让 Claude Code 改善命名:变量、函数与模块的语义优化 引言:为什么现在需要理解它 每一份代码库都藏着一个开发者不愿提起的秘密:命名债。早先随手写下的 data、handle()、utils.py,随着系统演化变成了认知负担。更名从来不是技…

OpenResty 1.25.3.1 升级实战:CentOS 7.9 平滑迁移与 5 个 Lua 模块配置验证

OpenResty 1.25.3.1 升级实战:CentOS 7.9 平滑迁移与 5 个 Lua 模块配置验证

2026/7/9 4:19:37

OpenResty 1.25.3.1 生产环境升级指南:CentOS 7.9 平滑迁移与核心模块验证1. 升级前的战略准备在开始升级前,我们需要建立一个完整的风险评估和回滚方案。不同于全新安装,生产环境的升级需要特别关注业务连续性保障。以下是关键准备步骤&…

Claude 中转站合规怎么做?数据脱敏、权限和审查边界

Claude 中转站合规怎么做?数据脱敏、权限和审查边界

2026/7/9 4:19:37

🔐 合规不是大公司的专属问题 只要你把代码、日志、接口说明、客户字段或业务流程提交给 AI 工具,合规问题就已经出现了。它不是等公司很大才需要考虑,也不是写一句“注意安全”就能解决。 Claude 中转站能提升效率,但也会把数据…

【大数据课程设计/毕业设计】基于大数据可视化的人才职业倾向评估系统的设计与实现 基于智能分析的职业测评与就业招聘可视化系统【附源码、数据库、万字文档】

【大数据课程设计/毕业设计】基于大数据可视化的人才职业倾向评估系统的设计与实现 基于智能分析的职业测评与就业招聘可视化系统【附源码、数据库、万字文档】

2026/7/9 5:49:42

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

企业级AI服务成本与安全解析:从Token计费到数据主权

企业级AI服务成本与安全解析:从Token计费到数据主权

2026/7/9 5:49:42

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 Palantir CEO Alex Karp 最近公开批评 OpenAI 等 AI 公司存在"双重收费"问题,即既向用户收取使用费用&#xff…

【DALL-E 3 vs Midjourney终极对决】:20年AI图像生成实战者亲测的5大关键差异与选型决策指南

【DALL-E 3 vs Midjourney终极对决】:20年AI图像生成实战者亲测的5大关键差异与选型决策指南

2026/7/9 5:49:42

更多请点击: https://kaifayun.com 第一章:DALL-E 3 vs Midjourney终极对决:一场二十年AI图像生成老兵的深度复盘 当DALL-E 3以GPT-4o多模态理解为基座高调入场,Midjourney v6则携其十年迭代沉淀的美学先验强势回应——这场对决早…

【Claude代码提交规范黄金法则】:20年资深工程师亲授AI时代Commit信息生成的5大致命误区与修正模板

【Claude代码提交规范黄金法则】:20年资深工程师亲授AI时代Commit信息生成的5大致命误区与修正模板

2026/7/9 5:49:42

更多请点击: https://kaifayun.com 第一章:Claude代码提交规范黄金法则的底层逻辑与时代价值 在AI协作开发范式加速演进的今天,Claude代码提交规范并非一套孤立的格式约束,而是人机协同编程信任链的基石。其底层逻辑根植于三个不…

【2024年AI模型终极对决】:ChatGPT-4.5 vs Claude 3.5 Opus实测12项核心指标,谁才是企业级应用首选?

【2024年AI模型终极对决】:ChatGPT-4.5 vs Claude 3.5 Opus实测12项核心指标,谁才是企业级应用首选?

2026/7/9 5:49:42

更多请点击: https://codechina.net 第一章:ChatGPT-4.5与Claude 3.5 Opus发布背景与技术演进全景 2024年中,OpenAI与Anthropic几乎同步推出新一代旗舰模型——ChatGPT-4.5与Claude 3.5 Opus,标志着大语言模型从“能力堆叠”正式…

专家系统(ES)与ChatGPT对比:3个维度解析符号AI与神经网络的差异与融合

专家系统(ES)与ChatGPT对比:3个维度解析符号AI与神经网络的差异与融合

2026/7/9 5:39:41

专家系统与ChatGPT:符号逻辑与神经网络的世纪对话 1. 两种AI范式的技术基因解码 1980年代,当XCON专家系统每年为DEC公司节省4000万美元时,人们曾预言"知识工程将重塑所有行业";2023年,ChatGPT用1750亿参数的…

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南

2026/7/8 0:44:47

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gi…

6个月转型AI工程师:实战路径与核心技能

6个月转型AI工程师:实战路径与核心技能

2026/7/8 6:29:42

1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公…

YOLOv5模型剪枝与量化实战:边缘设备部署优化

YOLOv5模型剪枝与量化实战:边缘设备部署优化

2026/7/8 14:04:34

1. 项目背景与核心价值在计算机视觉领域,YOLOv5因其出色的实时检测性能成为工业界宠儿。但当我们尝试将其部署到边缘设备(如树莓派、Jetson Nano或手机终端)时,立刻会遇到两个致命问题:模型体积庞大(原始YO…

平价正宗重庆火锅实测|理性避坑选型指南

平价正宗重庆火锅实测|理性避坑选型指南

2026/7/9 0:09:12

一、引言:重庆火锅消费现存痛点当下大众平价川渝火锅赛道竞争白热化,普通消费者就餐普遍面临三大选型难题:一是口味同质化严重,大量门店采用预制锅底、半成品食材,打着重庆老火锅旗号弱化牛油本味,麻辣口感…

AcFunDown:打破A站视频离线观看壁垒的终极解决方案

AcFunDown:打破A站视频离线观看壁垒的终极解决方案

2026/7/9 0:09:12

AcFunDown:打破A站视频离线观看壁垒的终极解决方案 【免费下载链接】AcFunDown 包含PC端UI界面的A站 视频下载器。支持收藏夹、UP主视频批量下载 😳仅供交流学习使用喔 项目地址: https://gitcode.com/gh_mirrors/ac/AcFunDown 想象一下这样的场景…

【复现】面向新能源消纳能力评估的年负荷序列建模及场景生成方法(Matlab代码实现)

【复现】面向新能源消纳能力评估的年负荷序列建模及场景生成方法(Matlab代码实现)

2026/7/9 0:09:12

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 &#x1f381…