Agent Skills 从入门到工程化(二):Skill、Tool、Function、Workflow、Agent 有什么区别?
2026/7/11 19:32:47 网站建设 项目流程

学习 Agent 开发时,最容易混淆的几个词就是 Function、Tool、Skill、Workflow 和 Agent。它们都和“让模型做事”有关,但抽象层次不同。

如果这些概念没分清,后面学习工具调用、多 Agent、MCP、RAG Agent 时,就容易把所有东西都叫成“工具”。这篇文章先把它们拆开。

一句话区分

可以先用一句话理解:

概念侧重点典型例子
Function代码层的普通函数search_api(query)
Tool暴露给模型调用的接口web_search工具
Skill面向任务封装的能力搜索资料并返回摘要和来源
Workflow固定步骤流程搜索 → 阅读 → 总结
Agent动态决策执行者判断是否搜索、查库、读文件

更简单地说:Function 更偏代码,Tool 更偏调用,Skill 更偏能力,Workflow 更偏流程,Agent 更偏决策。

Function:代码里的普通函数

Function 是程序员写的普通函数,只要代码能调用就行。它不一定有自然语言描述,也不一定有参数 schema,更不一定适合直接交给大模型调用。

defsearch_api(query:str):...

这个函数能执行搜索,但模型并不知道它什么时候该用、参数怎么填、返回结果如何理解。

Tool:模型可调用的接口

Tool 是把函数或 API 暴露给模型调用后的形式。它通常包含名称、描述和参数结构。

{"name":"web_search","description":"Search the web for recent information.","parameters":{"query":"string"}}

Tool 的重点是“模型能不能调用”。它解决的是调用接口问题。

Skill:面向任务的能力封装

Skill 比 Tool 更强调任务语义和工程边界。一个搜索 Tool 可能只是search(query),而搜索 Skill 应该说明:什么时候搜索、搜什么、返回几条、是否需要来源、没有结果怎么办。

所以 Skill 不只是函数包装,而是包含任务边界、输入输出、异常处理、限制条件和评估指标的能力模块。

Workflow:多个步骤的固定流程

Workflow 是预先定义好的步骤。比如:

上传文件 → 解析文件 → 提取正文 → 生成摘要 → 输出 Markdown

Workflow 的优势是稳定、可控、可测试;缺点是灵活性弱。标准化任务更适合 Workflow,而不是完全交给 Agent 自由发挥。

Agent:动态选择能力的决策层

Agent 负责理解用户意图,并根据当前任务选择合适的 Tool、Skill 或 Workflow。

例如用户问“帮我分析这份表格并给建议”,Agent 可能会判断需要读取文件、解析表格、计算指标、生成建议。具体调用哪些 Skills,不是固定写死的,而是根据任务动态决定。

实际系统里的组合关系

真实系统通常不是二选一,而是组合使用:

用户请求 ↓ Agent 判断任务 ↓ Skill Router 筛选候选 Skills ↓ Skill 调用底层 Tools / Functions ↓ 必要时执行 Workflow

也就是说,Function、Tool、Skill、Workflow、Agent 可以分层协作,而不是互相替代。

面试中怎么回答

可以这样回答:

Function 是代码层普通函数;Tool 是暴露给模型调用的接口;Skill 是面向任务封装的能力单元,会包含名称、描述、输入输出、异常处理和调用边界;Workflow 是多个步骤组成的固定流程;Agent 是根据用户任务动态选择和编排这些能力的决策层。

简单说,Tool 解决“模型能调用什么”,Skill 解决“这个能力怎么稳定完成任务”,Workflow 解决“固定流程怎么执行”,Agent 解决“当前任务下一步该做什么”。

小结

这篇文章的核心是:Skill、Tool、Function、Workflow、Agent 有什么区别?不是一个孤立概念,而是 Agent 工程化中必须讲清楚、设计清楚、验证清楚的一部分。

下一篇继续讨论:一个 Skill 应该包含哪些基本部分?

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询