Skip to content

第一阶段进阶:Agent / 工具型 AI 规划【让模型“能干活”】 ​

在你会用 LLM 提效之后,这一篇帮你规划:怎么让模型调用工具、帮你做事,而不是只会聊天。


1. 不同学习目的下,这一阶段要做到哪里 ​

  • 目的 A:只想用现成的 Agent 提升效率

    • 目标:会配置/使用现成的 Agent 工具(如一些“工作流”类产品),能根据自己需求组合步骤。
    • 输出物:1~2 个你日常真在用的自动化流程(比如自动整理学习笔记、自动生成日报)。
  • 目的 B:想做自己的小 Agent 工具 / 产品

    • 目标:理解 Agent 的基本概念,会用一个简单框架(如 LangChain)实现“模型 + 工具调用”的逻辑。
    • 输出物:1 个你自己写的简单 Agent(比如:投资小助手、面试题助手)。
  • 目的 C:以后考虑往 AI 工程/平台方向走

    • 目标:熟悉任务规划(Task Planning)、多步执行、错误重试等概念。
    • 输出物:一个稍复杂一些的 Agent 流程 Demo。

对你目前的情况,做到 B 就已经非常够用。


2. 核心概念规划:什么是 Agent? ​

可以把 Agent 理解成三件事的组合:

  1. 大脑(LLM):负责理解指令、生成计划和解释结果。
  2. 工具(Tools):API / 数据库 / 文件系统 / 浏览器等能力。
  3. 执行框架(Framework):负责“反复调用 LLM + 工具”,直到达到目标。

规划时不要一上来就选好几个复杂框架,先挑一个你顺手的(Python/TS 版本都行),只做一个简单用例。


3. 关键概念速记:System Prompt / User Prompt / Tools / Function Calling / MCP ​

这一节把你最常见、最容易混的几个词一次讲清楚,并给出推荐学习顺序。

3.1 System Prompt vs User Prompt(你到底在“控制”什么) ​

  • System prompt:给模型的“最高优先级规则/角色/边界”。
    • 作用:定人设、定目标、定输出格式、定安全边界(例如“必须用中文回答”“不要编造”“输出用 Markdown 三级标题”)。
  • User prompt:用户本次输入的具体任务/问题。
    • 作用:描述当前要做的事(例如“把这篇笔记总结成 5 点,并给我面试话术”)。

实战建议:

  • 把“稳定不变的规则”放进 system prompt;把“每次变化的任务”放进 user prompt。
  • 你做自己的小工具/网站时,system prompt 可以固化为“站点写作规范/输出模板”,user prompt 就是用户的具体需求。

3.2 Agent Tools(工具)是什么? ​

Agent tools 本质是:让模型在必要时能“调用外部能力”。常见工具包括:

  • HTTP API:天气/行情/你的业务接口
  • 文件系统:读取/写入 Markdown(比如自动生成新页面)
  • 数据库/向量库:检索资料(RAG)
  • 搜索/浏览器:查最新信息(按需)

记住一句话:LLM 负责“想”,Tools 负责“做”。

3.3 Function Calling(工具调用)是什么?和 Tools 的关系? ​

Function calling 是一种“让模型以结构化方式选择工具并给出参数”的机制(很多平台/SDK把它叫 tools / functions)。

你可以把它理解为:

  • Tools:你提供的一组可调用能力(函数列表/接口列表)
  • Function calling:模型输出“我要调用哪个工具 + 参数是什么”的结构化结果

为什么它重要?

  • 不靠模型“随便输出一段文字”,而是让它输出可执行的参数
  • 方便做权限控制、日志审计、错误重试
  • 让 Agent 更稳定(尤其是多步骤任务)

3.4 AI Agent(Agent)到底是什么? ​

当你把这些拼起来,就得到一个 Agent:

  • System prompt:规则与边界(怎么做、怎么输出、什么时候该停)
  • User prompt:当前任务
  • Function calling:决定调用哪个工具以及参数
  • Agent tools:实际执行动作(查数据、写文件、入库)
  • 循环与状态:执行 → 观察结果 → 再规划/再执行(直到完成)

3.5 MCP 是什么?解决什么问题? ​

MCP(Model Context Protocol) 可以理解为:一种把“工具/数据源”标准化接入模型/Agent 的协议。

它要解决的核心痛点是:

  • 你不想为每个 Agent 框架/每个模型 SDK 重复写一遍工具接入
  • 希望把工具以“服务”的方式统一管理(可复用、可权限控制、可观测)

简单理解:

  • 没有 MCP:你的应用里直接接各种工具(HTTP/DB/文件),接入方式五花八门
  • 有 MCP:工具以 MCP Server 的形式统一暴露,你的 Agent 通过协议统一调用

你现阶段不需要“先精通 MCP”,但要知道它是把工具工程化、平台化的关键一环。

3.6 推荐学习顺序(从最有产出到最工程化) ​

  1. System/User prompt:先把输出变稳定(格式、口吻、边界)。
  2. 单工具 Tools:先接 1 个工具(HTTP API 或写文件)。
  3. Function calling:把“调用工具”从自然语言变成结构化参数。
  4. Agent(多步任务):加上循环、状态、失败重试,做一个能闭环的流程。
  5. MCP(可选进阶):当你工具多了、服务化需求强了,再把工具统一成 MCP Server。

3.7 最小可落地 Demo(建议直接写进你的项目里) ​

  • Demo 1(Prompt):固定 system prompt(写作规范),user prompt(总结某篇笔记)。
  • Demo 2(Tools):提供一个 “write_markdown(path, content)” 工具,让模型生成面试题并落盘到 docs/。
  • Demo 3(Function calling):让模型输出结构化参数来调用 write_markdown / search_notes。
  • Demo 4(Agent):多步任务:“读取某模块文档 → 生成学习计划 → 生成 10 道题 → 写入新页面”。
  • Demo 5(MCP,可选):把 “读写文档/检索” 做成 MCP Server,让不同小工具复用同一套能力。

4. 针对不同目的的学习安排 ​

4.1 只想用现成 Agent(目的 A) ​

时间:1~3 天,重点在“配置能力”而非“编码能力”。

  • 选 1 个可视化/现成的 Agent 平台(如一些工作流自动化工具):
    • 能拖拽节点:输入 → 调用 LLM → 调用第三方 API → 输出。
  • 结合你现在的学习/面试场景,设计流程:
    • 示例 1:每天固定时间,把你当天的学习记录(写在某个文档/表格里),自动总结成复盘。
    • 示例 2:根据你文档库里的内容,自动生成第二天的学习计划。

这一块主要是培养你“把工作拆成步骤,再让工具替你执行”的习惯。

4.2 想自己写 Agent(目的 B/C) ​

时间:约 1~2 周(可以穿插在你现在 Java/面试学习之间)。

步骤建议:

  1. 选定语言和框架:

    • 熟悉 Python 的,可以用 LangChain。
    • 熟悉 TypeScript/Node 的,可以用 LangChain.js 或类似框架。
  2. 先做最简单的单工具 Agent:

    • 场景:投资/行情查询助手(简版)
    • 流程:
      1. 用户输入:某只股票或币种的名字/代码。
      2. LLM 分析出需要调用“行情 API”。
      3. 框架调用 API 获取价格和涨跌数据。
      4. LLM 根据行情和你的提示词,输出一段“中立分析 + 风险提示”。
  3. 再尝试多步骤任务(Task Planning):

    • 比如:“帮我安排这周的学习计划”:
      1. LLM 先根据你的 Java/数据库/框架现状,给出目标拆解(阶段/模块)。
      2. 再按天生成安排表。
      3. 最后用另一个 Tool(如写入文件/发邮件)保存结果。

5. 项目建议:和你现有的文档库结合 ​

为了和你现在的 Java 面试文档更贴近,推荐这样设计项目:

  • 项目:我的“面试学习 Agent”
    • 数据:你当前这个 VitePress 文档库(Java、数据库、Redis、框架…)。
    • Agent 能做的事:
      1. 根据某个模块,自动生成学习计划(如“3 天搞定 Redis 高频题”)。
      2. 从对应 Markdown 中抽取重点,生成 Quiz 或面试 Q&A。
      3. 把结果以 Markdown 的形式保存到指定目录,直接变成新页面。

这样一来,你在继续扩展面试库的同时,也在练 Agent 落地,学习目标统一了。


6. 这一阶段的“合格线” ​

对你来说,可以把这阶段的“完成”定义为:

  • 能清楚解释什么是 Agent、模型 + 工具 + 执行框架的关系。
  • 至少动手做过:
    • 一个简单的单工具 Agent DEMO(如行情助手)。
    • 一个与自己学习/面试相关的 Agent 小工具(如面试题生成/学习计划助手)。

当你能自然地向别人描述:“我现在用一个小 Agent,每天帮我基于文档库生成学习计划和面试题”,就说明这一阶段已经很不错了。