agent领域的常见名词梳理(llm/functioncalling/mcp/skill)
本文梳理了AI智能体(Agent)相关的核心概念与演进过程。从语言模型到LLM的转变开始,分析了Agent如何通过记忆(Memory)实现多轮对话,以及通过Function Calling和MCP协议与LLM、工具服务交互。文章对比了LangChain、WorkFlow和Skill的区别,指出Skill可能成为前两者的替代方案。最后总结了Agent的本质是处理不需要智能的固定程序部分,而将模糊逻辑
1. 写在前面
最近agent 爆火,与之相关的名词也层出不穷,作为一个AI小白,怎么能快速的入门学习一些agent的知识以及使用好agent呢? 我觉得应该先从名词开始。
这篇文章用一个框架,把常用的基本名词给梳理一下,主要参考的 这个视频,把我学习过程中的笔记整理,分享给大家。 更详细的内容可以参考上面视频链接。
一张图总结:
大纲如下
ok, let’s go!
2. 演进
语言模型的发展, 在chatgpt时刻出现 拐点,涌现出智能。
在这个时间点,为了和之前语言模型有区分, 加了⼀个L, 到了LLM时代。
LLM 本⾝只能文字接龙,看起来是个智障
人为分开角色(user, agent),划分成一问一答,就实现了对话。

注意:只能一问一答,不能追问。
如果想追问怎么办?
- 把每次的对话历史放到context部分,作为上下文
- 伪装成多轮对话, 这些特殊的上下文 起了个名字 叫 memory

记忆 还可以 进⼀步调用大模型总结,对记忆做压缩
大模型现在没有上网查资料能力? 写⼀段能上网的程序。
于是继续演进成下面这样:
3. 聚焦交互
3.1 Agent <-> LLM
3.1.1 FunctionCalling
如果用自然语言沟通,不太可控大模型的操作,所以需要约定⼀些规范。

大模型与agent对话 之间的约定格式,叫 function calling
具体agent 和 LLM 对话的时候,应该是会把 目前能用的⼯具 以及 说明 给到大模型,让大模型自己选。
3.1.2 MCP
mcp全称是model context protocol, 意思是模型上下文协议。
智能体 能用的各种工具,单独抽出来, 在agent 与 ⼯具之间,定义⼀套调用规范)
agent是⼀个传话筒, 在大模型 与 工具调用之间进行传话。
3.1.3 MCP VS FunctionCalling
Functioncalling:
- Agent 与 大模型之间沟通的约定
- 目的是 让大模型的回答符合⼀定的格式,方便程序解析
Mcap:
• Agent 与 ⼯具服务之间调用的约定
• 目的 是像接口文档 ⼀样,约定怎么调用,怎么传参,怎么接收返回值
3.2 Agent <-> User
3.2.1 交互形式诞生各种产品

3.2.2 LangChain or WorkFlow or Skill
假设有这样的⼀个稳定的任务:
没有必要每次都让智能体进⾏规划,非常麻烦也非常浪费token。
所以可以把稳定的流程固化下来, 提取 和 保存 设置成脚本, 翻译部分和大模型对话。
- 编程角度编写链式任务: Langchain
- 用户角度 实现链式任务: workflow(dify)
再看输入和输出部分,如果 输入不止⼀种格式,输出也不止⼀种格式。
且 不牺牲 用户自然语言 触发的体验(if else 写程序 会打破这种体验)。
设计思路:

给agent下达指令之前,增加
优化空间: 提前约定好某个指定位置,agent中写死⼀段程序,读取这个目录下面的所有skill.md,
把 skill_name, skill_description 信息拿出来。 把这些给到大模型让它自己选用哪个skill。
于是乎现在就变成了:
3.2.3 SubAgent
对于⼀个复杂的任务,agent的上下文可能会变得非常大。
所以 把任务拆分开 ⼀些独立的子任务, 分配给SubAgent来干。
本质是上下文隔离, 子agent任务中产生的上下文,不会保留在主agent中。
3.2.4 Skill VS Mcp
Skill:
• 本质是 prompt的加载器
• 唯⼀需要的是skill.md,其他不做要求
• 和mcap 不是⼀个维度的东西,能完成 mcap 的功能,但不⼀定适合完成
◦ 把mcp服务中提供的⼯具,放在skill 里面
3.2.5 Langchain vs workflow vs skill vs agent

Skill 把 langchain和workflow 由 程序 控制的流程走向,变成了由智能体自行控制。
提前写好说明文档 和 可运行的脚本等,更灵活。
未来可能 会 是 langchain和workflow的 替代品。
但这里突然也想补充个问题: 如果agent自行控制了, 如何才能检验agent的工作效果 以及 如何保证agent是按照我们的预期在做事情呢?
未来,感觉程序员重点做的是充当架构师的思维,设计架构,然后分配工作给agent做,然后设计方法检验是否符合预期。
4. 小总

本质上 是 往 提示词里面 增加上下文信息。 比如 skill, rag, search。
Agent 是所有不需要智能的地方构成的部分:
- ⼀个流程中,所有能用固定程序解决的,而不需要问大模型的地方是agent发挥作用的地方
- 把模糊的分流逻辑交给⼤模型,根据语义识别用户想做a 还是 b
- 把确定的分流逻辑 交给程序,比如提取文本,…
5 参考
更多推荐



所有评论(0)