大模型技术 Agents 概述

在 LangChain 的世界里,智能体(Agents) 是最令人兴奋的高级特性。如果说"链(Chains)"是预先设定的"流水线",那么"智能体"就是一个拥有决策权的"虚拟员工"


一、 什么是智能体 (Agents)?

简单来说,智能体是使用大语言模型(LLM)作为推理引擎来决定如何行动的系统。

  • 链 (Chains):动作序列是硬编码在代码里的。比如:先翻译,再总结。
  • 智能体 (Agents):模型自己决定需要采取哪些步骤,以及调用的顺序。它会根据用户的输入,不断进行"思考 -> 行动 -> 观察"的循环,直到任务完成。

核心公式:智能体 = 大脑 (LLM) + 手脚 (Tools) + 规划逻辑 (Control Loop)


二、 智能体的三大核心组件

  1. 大脑 (LLM): 负责逻辑推理、意图识别和决定下一步该做什么。
  2. 工具 (Tools): 智能体可以调用的外部功能。例如:谷歌搜索、计算器、数据库查询接口、Python 代码解释器等。
  3. 代理执行器 (Agent Executor / LangGraph): 控制智能体运行的运行时环境。它负责循环调用 LLM,解析其输出,执行工具,并把工具结果反馈给 LLM。

三、 经典模式:ReAct

大多数智能体遵循 ReAct (Reason + Act) 模式。其执行过程类似人类思考:

  1. Thought (思考):LLM 思考"我现在的目标是什么?为了实现目标,我需要调用什么工具?"
  2. Action (行动):选择一个工具并生成调用参数。
  3. Observation (观察):运行工具,获取返回结果(如搜索结果或计算值)。
  4. Repeat (循环):根据观察到的新信息,回到步骤1再次思考。

四、 代码示例:构建一个具备搜索和计算能力的智能体

我们将创建一个能上网查资料并进行计算的智能体(使用 OpenAI 模型和 Tavily 搜索工具)。

python 复制代码
import os
from langchain_openai import ChatOpenAI
from langchain_community.tools.tavily_search import TavilyAnswer
from langchain.agents import create_tool_calling_agent, AgentExecutor
from langchain_core.prompts import ChatPromptTemplate

# 1. 定义工具
# Tavily 是目前最适合智能体的搜索接口
search_tool = TavilyAnswer()
tools = [search_tool]

# 2. 初始化模型
# 必须使用支持工具调用(Tool Calling)的模型,如 GPT-4o 或 Claude 3
llm = ChatOpenAI(model="gpt-4o", temperature=0)

# 3. 创建提示词模板
prompt = ChatPromptTemplate.from_messages([
    ("system", "你是一个非常强大的助手。"),
    ("human", "{input}"),
    # 占位符:用于存放中间步骤的"思考过程"
    ("placeholder", "{agent_scratchpad}"),
])

# 4. 构建智能体
agent = create_tool_calling_agent(llm, tools, prompt)

# 5. 实例化执行器(负责循环运行直到出结果)
agent_executor = AgentExecutor(agent=agent, tools=tools, verbose=True)

# 6. 测试
response = agent_executor.invoke({"input": "谁是2024年诺贝尔物理学奖得主?他们主要的贡献是什么?"})
print(response["output"])

五、 现代演进:从 AgentExecutor 到 LangGraph

在 2024 年以后的 LangChain 开发中,官方更推荐使用 LangGraph 来构建智能体。

  • AgentExecutor:是一个"黑盒"循环,对于复杂的任务(如循环、回溯、多智能体协作)控制力较弱。
  • LangGraph :将智能体的行为定义为有向图
    • 节点 (Nodes):是具体的步骤(如"调用 LLM"或"执行工具")。
    • 边 (Edges):决定了流程如何流转(如"如果工具结果是错误,则重试")。
    • 状态 (State):可以在步骤间共享和修改。
    • 优势:支持"人工干预"(Human-in-the-loop),允许你在 AI 执行敏感操作(如发邮件)前暂停并确认。

六、 智能体的应用场景

  1. 自动化调研:输入一个主题,智能体自动搜索多篇文档、对比差异并汇总报告。
  2. 客服支持:自动查询订单数据库、物流接口,并根据退换货政策做出决定。
  3. 代码/数据分析:自动读取 CSV 文件,编写并运行 Python 代码生成图表。
  4. 智能助理:帮你查看日历、安排会议、并在多个应用间同步数据。

总结

智能体让 AI 从"聊天机器人"变成了**"行动者"**。它不再只是回答问题,而是通过调用外部工具主动解决问题。虽然目前智能体的稳定性和成本仍有挑战,但它是大模型通往 AGI (通用人工智能) 的关键路径。

相关推荐
元Y亨H1 小时前
大模型技术 RAG 概述
llm
元Y亨H1 小时前
大模型技术 Agent添加MCP工具
langchain·llm
元Y亨H1 小时前
大模型技术-RAG 向量存储和检索 概述
langchain·llm
元Y亨H1 小时前
大模型技术 LangChain使用MCP
langchain·llm
chaors1 小时前
DeepResearchSystem 0x07:搜索缓存
llm·agent·ai编程
starzy19909 小时前
LangChain深度解析:模型、链、Agent三大核心,解锁大模型落地的正确姿势
chatgpt·langchain
mingo_敏11 小时前
DeepAgents : 检索(Retrieval)
人工智能·深度学习·langchain
DLYSB_12 小时前
AIOps 大模型实战:基于 LangChain 运维 Agent 的根因诊断与现场声光播报闭环
运维·langchain·报警灯
phltxy15 小时前
多智能体系统架构设计:从单体代理到协作网络
python·langchain·系统架构