什么是大模型 Agent

单纯的大模型,只会基于自身知识生成文本,存在两个明显短板:

  • 知识有截止时间,无法获取实时信息;
  • 不能操作外部环境,没法读写文件、执行计算、调用接口。

而 Agent(智能体),就是给大模型装上「手脚」和「思考决策能力」。

简单总结:

Agent = 大模型 + 思考决策逻辑 + 外部工具集

它不再是被动问答,而是可以自主判断、自主选择工具、分步完成复杂任务。

我们本次实战的代码,就是最经典的 ReAct 架构 Agent,也是目前工业界使用最广的智能体模式。

技术栈说明及使用环境

LangChain:1.3.2
LangGraph:1.2.2
模型:DeepSeek 通用大模型

整体架构拆解(四大核心模块)

先看整体结构,我们的 Agent 一共由 4 个部分组成,缺一不可:

  1. 大模型 LLM:负责思考、判断、生成调用指令
  2. 自定义 Tools 工具集:外部可执行能力(文件、计算、查询等)
  3. @tool 装饰器:LangChain 标准工具封装方式
  4. ReAct Agent 调度器:串联「思考→调用工具→汇总结果」全流程

大模型 LLM

apikey=
"sk-xxxxxxx"
baseurl=
"https://api.deepseek.com/v1"
llm = ChatOpenAI(
model="deepseek-chat",
temperature=0.5,
api_key=apikey,
base_url=baseurl
)

Tool 工具(Agent 的手脚)

工具是 Agent 能落地业务的关键。

LangChain 统一使用 @tool 装饰器 来定义工具,这是官方标准写法。

@tool
def 工具名(入参: 类型) -> 字符串:
"""     工具描述(非常重要!模型靠这段文字理解工具用途)
:param 参数名: 参数说明     """
# 业务逻辑
return "执行结果"

ReAct 调度器(核心执行逻辑)

# 所有定义工具加入tools数组
tools = [write_to_file,write_file,list_files,delete_file,calculate,get_weather]
# 绑定agent
agent = create_react_agent(llm, tools)

这一行代码,背后就是整个 Agent 的决策循环逻辑

**ReAct = Reason(推理思考) + Act(执行动作)**也是整个智能体最核心的运行机制。

ReAct Agent 完整执行流程

示例:命令 今天的深圳天气怎么样,帮信息存在weather.txt

步骤 1:接收用户输入

用户提问被封装为消息格式,送入 Agent:

{"messages": [("user", "今天的深圳天气怎么样,帮信息存在weather.txt")]}

步骤 2:大模型「推理 Reason」

模型收到三类信息:

  • 用户原始问题
  • 所有工具的名称、功能描述、入参要求
  • 历史执行记录

模型自主判断:

这个任务无法直接回答,需要调用工具 → 选择 delete_file 工具 → 提取参数 file_name="poem.txt"

然后输出工具调用指令,而非自然语言回答。

步骤 3:执行动作 Act(调用工具)

Agent 调度器解析模型的调用指令,找到对应工具函数,传入参数并本地执行代码

  1. 校验文件路径是否在安全目录
  2. 判断文件是否存在
  3. 执行删除逻辑
  4. 返回工具执行结果(成功 / 失败信息)

步骤 4:结果回传给大模型,二次汇总

工具执行结果再次发回大模型。模型拿到执行状态后,不再调用新工具,整理信息,生成最终自然语言回答返回给用户。

完整个代码如下

import os
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
from langchain_core.tools import tool
from langgraph.prebuilt import create_react_agent
# 1. 加载环境变量
load_dotenv()
# 2. 定义安全工作目录(沙箱隔离)
WORK_DIR = r"safe_files"
os.makedirs(WORK_DIR, exist_ok=True)
# 3. 初始化大模型(Agent 大脑)
api_key = "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
base_url = "https://api.deepseek.com/v1"
llm = ChatOpenAI(
model="deepseek-chat",
temperature=0.5,
api_key=api_key,
base_url=base_url
)
# ---------------------- 自定义工具集(Agent 手脚) ----------------------
@tool
def write_to_file(file_name: str, content: str) -> str:
"""将内容写入指定文件,仅允许写入安全目录内的文件"""
file_path = os.path.abspath(os.path.join(WORK_DIR, file_name))
if not file_path.startswith(os.path.abspath(WORK_DIR)):
return "❌ 错误:禁止写入安全目录外的文件!"
try:
with open(file_path, "w", encoding="utf-8") as f:
f.write(content)
return f"✅ 成功写入文件:{file_path}"
except Exception as e:
return f"❌ 写入失败:{str(e)}"
@tool
def list_files() -> str:
"""列出安全目录下所有文件"""
try:
files = os.listdir(WORK_DIR)
return "当前目录文件:\n" + "\n".join(files)
except Exception as e:
return f"列出失败: {str(e)}"
@tool
def delete_file(file_name: str) -> str:
"""删除安全目录内指定文件"""
file_path = os.path.abspath(os.path.join(WORK_DIR, file_name))
if not file_path.startswith(os.path.abspath(WORK_DIR)):
return "错误:禁止删除安全目录外的文件"
if not os.path.exists(file_path):
return "错误:文件不存在"
try:
os.remove(file_path)
return f"已成功删除文件: {file_name}"
except Exception as e:
return f"删除失败: {str(e)}"
@tool
def calculate(expression: str) -> str:
"""计算数学表达式,示例:(10+20)*5"""
try:
result = eval(expression, {"__builtins__": None}, {})
return f"计算结果: {expression} = {result}"
except Exception as e:
return f"计算失败: {str(e)}"
@tool
def get_weather(city: str) -> str:
"""查询指定城市天气"""
data = {
"北京": "晴天 25℃,湿度40%",
"上海": "多云 27℃,湿度65%",
"广州": "小雨 30℃,湿度85%",
"深圳": "晴转多云 28℃,湿度70%"
}
return data.get(city, f"{city} 暂无天气数据")
# 注册所有工具
tools = [write_to_file, list_files, delete_file, calculate, get_weather]
# 4. 创建 ReAct 智能体(调度核心)
agent = create_react_agent(llm, tools)
# 5. 启动测试
if __name__ == "__main__":
print("Agent 已启动,请等待任务执行...")
# 可自行修改测试指令
user_input = "帮删除 safe_files 中的 poem.txt"
response = agent.invoke({
"messages": [("user", user_input)]
})
print("\n==== 最终回答 ====")
print(response["messages"][-1].content)

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

在这里插入图片描述

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐