# Agent 是什么?把它想象成一个人

Agent 是什么?把它想象成一个人

很多人第一次接触 Agent 觉得抽象。

其实它的结构和人体一模一样。如下图所示


大脑 = LLM 推理核心

人靠大脑思考和决策。Agent 靠 LLM。

用户发来一个问题,LLM 先想:这个问题要怎么解决?需要查数据库还是调接口?分几步走?

想清楚之后,它告诉"身体"去执行。

在代码里,这就是 AgentExecutor,LLM 在里面循环推理:

复制代码
想一下 → 决定做什么 → 执行 → 看结果 → 再想一下

眼睛 = 感知层

人靠眼睛耳朵接收外部信息。Agent 靠感知层。

用户打的字、上传的文件、工具执行后的返回结果------这些都是 Agent 的"输入",通过感知层进来,交给大脑处理。

现在的 LLM 不只能读文字,还能看图、读表格,所以 Agent 的"眼睛"越来越强。


脊椎 = 规划层

人靠脊椎把大脑指令传递给四肢。Agent 靠规划层把想法变成步骤。

收到一个复杂任务,规划层负责拆解:"先做第一步,拿到结果,再做第二步。"

这就是你常听到的 ReAct------Reasoning + Acting,先推理再行动,一步一步来。


心脏 = 记忆层

心脏持续供血,让人保持活着。记忆层持续供给上下文,让 Agent 知道聊到哪了。

Agent 有两种主要记忆:

短期记忆 是当前对话的上下文,就像你和朋友聊天,知道刚才说了什么。用 ConversationBufferWindowMemory 实现,保留最近 k 轮。

长期记忆 是存在向量数据库里的知识,RAG 就是在用这个------把文档提前存进去,需要的时候检索出来给 LLM 看。

没有记忆,每次对话 Agent 都是"失忆"的。


双手 = 工具层

人靠手做事。Agent 靠工具层执行操作。

查订单、退款、发优惠券、写数据库------这些都是 Agent 的"手",每个 @tool 函数就是一个具体动作。

有一点很关键:LLM 靠读工具的描述(docstring)来决定什么时候用哪只手。描述写得清楚,Agent 就知道该拿哪个工具。描述含糊,它要么不用,要么用错。

python 复制代码
@tool
def query_order(order_id: str) -> str:
    """
    查询订单状态。
    当用户询问订单进度、是否发货时调用。
    输入格式:ORD-XXXXX
    """
    ...

五个部分合起来

一次完整的 Agent 工作过程是这样的:

用户发消息进来(眼睛接收)→ 大脑分析要做什么 → 规划层拆成步骤 → 调工具执行(双手行动)→ 结果存进记忆 → 大脑生成最终答案 → 返回给用户。

对应你现在做的客服 Agent:

人体 Agent 组件 你的项目
大脑 LLM 推理 DeepSeek · AgentExecutor
眼睛 感知层 /chat 接口收到的 input
脊椎 规划层 ReAct Prompt 模板
心脏 记忆层 ConversationBufferWindowMemory
双手 工具层 8 个 @tool 函数

总结:

Agent 不是魔法,就是一个会思考的程序,有感知、有记忆、按计划用工具完成任务。

相关推荐
踏着七彩祥云的小丑2 小时前
AI——Dify高级RAG优化
人工智能·ai
va学弟2 小时前
Agent入门开发(3):LangChain4j 应用
java·ai
Anastasiozzzz2 小时前
万字深度实战!AI Agent 接入万物的底层密码:MCP 协议传输机制与开发指南(下篇)
java·开发语言·数据库·人工智能·ai·架构
CoderJia程序员甲2 小时前
GitHub 热榜项目 - 周榜(2026-05-17)
ai·大模型·github·ai教程
紫洋葱hh2 小时前
LangChain 结构化输出详解:彻底告别大模型文本手动解析
人工智能·python·ai·langchain·llm·agent·大模型应用开发
不懂的浪漫9 小时前
Agent Knowledge Runtime:从一个 Codex 自动填工时案例看 Agent 工程化
ai·agent·codex
流离岁月10 小时前
trae运行java的main方法卡在加载插件进度条
ai·trae
叶子Talk11 小时前
xAI发布Grok Build,全球AI终端展深圳开幕:AI从云端走向终端
人工智能·ai·agent·xai·grok build·终端ai
养肥胖虎11 小时前
RAG学习笔记(2):关于rag和模型微调,同一个问题它们分别怎么处理
ai·微调·rag