AI Agent入门案例 网盘下载我用夸克网盘给你分享了「langchain资料包.zip」点击链接或复制整段内容打开「夸克APP」即可获取。/137b3ZLmW0网盘链接点击下载 langchain资料包.zipAI Agent 入门案例LangChain 从零搭建智能体专栏实战教程说明Agent智能体 能感知 → 思考 → 行动的 AI 程序。本篇用 LangChain 带你从零理解 Agent 原理并完成一个可运行的入门案例带工具调用的 ReAct Agent。一、什么是 Agent一句话Agent 让 AI 自动帮你做事情。对比普通 LLMAgent交互模式你问一句它答一句自主规划、多步执行能力边界仅文本生成可调工具、查数据、算数学典型场景聊天、写作智能客服、自动化助手、数据分析传统大模型不知道实时信息、不会精确计算、无法访问你的数据库。Agent 通过Tool工具扩展能力通过推理循环决定调用顺序。二、Agent 核心架构┌──────────────┐ │ 用户输入 │ └──────┬───────┘ ↓ ┌──────────────┐ │ LLM │ ← 大脑理解意图、做决策 └──────┬───────┘ ↓ ┌────────────┼────────────┐ ↓ ↓ ↓ ┌────────┐ ┌────────┐ ┌────────┐ │ Tool A │ │ Tool B │ │ Tool C │ │ 搜索 │ │ 计算 │ │ 时间 │ └────────┘ └────────┘ └────────┘ ↓ ┌──────────────┐ │ 整合结果输出 │ └──────────────┘核心组件组件作用LLM理解问题、规划步骤、生成回答Tools外部能力搜索、计算、API 调用Agent决策逻辑选哪个 Tool、何时停止AgentExecutor执行循环控制最大迭代次数三、ReAct 模式最经典的 AgentReAct Reasoning推理Acting行动Agent 的每一步遵循Thought: 用户问了时间和计算我需要两个工具 Action: get_current_time Action Input: Observation: 2026-07-02 15:30:00 Thought: 现在调用计算器 Action: calculate Action Input: 100/7 Observation: 14.285714285714286 Thought: 我已经有足够信息了 Final Answer: 现在是 2026-07-02 15:30:00100 除以 7 约等于 14.29LangChain 内置 ReAct Prompthwchase17/react开箱即用。四、入门案例三工具 Agent4.1 环境准备pipinstalllangchain langchain-openai python-dotenv.envOPENAI_API_KEYyour-deepseek-key OPENAI_API_BASEhttps://api.deepseek.com/v1 MODEL_NAMEdeepseek-chat4.2 定义 ToolsTool 的docstring 至关重要——Agent 靠它判断何时调用fromdatetimeimportdatetimefromlangchain.toolsimporttooltooldefget_current_time()-str:获取当前日期和时间returndatetime.now().strftime(%Y-%m-%d %H:%M:%S)tooldefcalculate(expression:str)-str:计算数学表达式如 23*4 或 100/7try:allowedset(0123456789-*/.() )ifnotall(cinallowedforcinexpression):return表达式包含不允许的字符returnstr(eval(expression))exceptExceptionase:returnf计算错误:{e}tooldefsearch_knowledge(query:str)-str:搜索知识库输入关键词kb{langchain:LangChain 是 LLM 应用开发框架支持 Chain/Agent/RAG,agent:Agent 是能自主调用工具完成任务的 AI 程序,rag:RAG 通过检索相关文档增强 LLM 回答质量,}forkey,valinkb.items():ifkeyinquery.lower():returnvalreturn未找到相关信息4.3 组装 Agentimportosfromdotenvimportload_dotenvfromlangchain_openaiimportChatOpenAIfromlangchain.agentsimportcreate_react_agent,AgentExecutorfromlangchainimporthub load_dotenv()llmChatOpenAI(modelos.getenv(MODEL_NAME),temperature0)tools[get_current_time,calculate,search_knowledge]prompthub.pull(hwchase17/react)agentcreate_react_agent(llm,tools,prompt)executorAgentExecutor(agentagent,toolstools,verboseTrue,# 打印 Thought/Action/Observationmax_iterations5,# 防止死循环handle_parsing_errorsTrue,)resultexecutor.invoke({input:现在几点100除以7等于多少另外 LangChain 是什么})print(\n最终回答:,result[output])4.4 运行cdlangchain资料包/04-LangChain常用代码示例/code python 04_agent_tools.py五、实战项目中的 Agent资料包langchain-rag-agent项目将 Agent 封装为 HTTP 服务POST /api/agent/chat { message: 现在几点LangChain 是什么 }核心代码在app/agent_service.py三个 Toolget_current_time/calculate/search_knowledgeAgentService类封装 Executor懒加载通过 FastAPI 对外提供 REST 接口启动项目cdlangchain资料包/05-AI项目实战案例源码/langchain-rag-agent python main.py# 访问 http://127.0.0.1:8000/docs 测试 /api/agent/chat六、Agent vs Chain什么时候用哪个场景推荐方案固定流程翻译→总结Chain需要根据输入选工具Agent知识库问答RAG Chain复杂多步 工具调度Agent多 Agent 协作LangGraph进阶简单规则步骤固定用 Chain步骤动态用 Agent。七、自定义 Tool 实战7.1 调用 HTTP APIimportrequeststooldeffetch_weather(city:str)-str:查询指定城市的天气信息# 替换为真实 APIreturnf{city}今天晴25°C湿度 60%7.2 查数据库tooldefquery_orders(user_id:str)-str:查询用户的最近订单输入用户 ID# 连接数据库查询returnf用户{user_id}最近 3 笔订单...7.3 Tool 编写规范规范说明docstring 清晰描述功能 参数格式 示例输入校验过滤非法字符防止注入错误处理返回可读错误信息不要抛异常单一职责一个 Tool 只做一件事返回字符串Agent 需要文本形式的 Observation八、常见问题Q1Agent 一直循环不停止设置max_iterations3~5检查 Tool 是否返回了有效结果。Q2Agent 选错 Tool优化 Tool 的 docstring名称要有语义calculate比tool1好。Q3Agent 比 Chain 慢很多Agent 每步都要 LLM 推理多轮 Tool 调用 多次 API 请求。简单任务优先用 Chain。Q4如何给 Agent 加 Memory在AgentExecutor外包装 Memory Chain或使用 LangGraph 管理状态。Q5下一步学什么把search_knowledge换成真实 RAG 检索 → RAG Agent学习 LangGraph 做多 Agent 协作阅读同目录《LangChain 项目实战源码》九、验收清单序号任务通过标准1跑通 04_agent_tools.py终端打印 Thought/Action 链路2自定义 1 个 ToolAgent 能正确调用3测试复合问题一次对话调用多个 Tool4启动实战项目Swagger 测试 /api/agent/chat5理解 ReAct 格式能读懂 verbose 输出资料包下载Agent 代码示例、实战项目、Prompt 模板均在网盘中 点击下载 langchain资料包.zip04-LangChain常用代码示例/code/04_agent_tools.py ← 本篇入门案例 05-AI项目实战案例源码/langchain-rag-agent/ ← Agent HTTP 服务 03-Prompt工程100模板合集/ ← Agent/RAG Prompt本文配套 langchain资料包 Agent 模块网盘链接见文首。