上一篇我们介绍了Prompt 和 Skill【AI应用】从 Prompt 到 Skill:AI 到底“会什么”?-CSDN博客https://blog.csdn.net/dfraetaem/article/details/165364646?spm=1001.2014.3001.5501简单来说:Prompt 是指令,Skill 是能力。但即使 AI 已经知道应该怎么处理一项任务,它仍然可能无法真正执行。例如:读取一个 Excel 文件 ↓ 分析其中的数据 ↓ 查询相关信息 ↓ 生成分析结果AI 知道这些步骤应该怎么做,但如果没有对应的执行能力,它依然无法直接读取文件、运行 Python 或查询数据库。这时候就需要:Tool(工具)而当多个 Tool 按照一定顺序组合起来,就形成了:Workflow(工作流)一、工具 Tool:让 AI 拥有执行能力Tool 通常翻译为工具。在 AI 应用中,可以简单理解为:Tool 是 AI 调用外部能力、执行实际操作的接口。例如:文件工具 数据库工具 Python 工具 HTTP API 搜索工具这些能力原本并不属于大语言模型本身。例如:AI 可以理解“请分析这个 Excel”,但它本身不一定能够直接读取你电脑上的 Excel。如果给 AI 提供一个文件读取 Tool:AI ↓ 文件 Tool ↓ 读取 Excel ↓ 返回数据 ↓ AIAI 就获得了实际操作文件的能力。同样:AI ↓ Python Tool ↓ 执行 Python ↓ 返回计算结果 ↓ AI或者:AI ↓ 数据库 Tool ↓ 查询数据库 ↓ 返回查询结果 ↓ AI所以可以简单记忆:Skill 解决“怎么处理”,Tool 解决“怎么执行”。一个简单的代码例子假设我们提供一个 Python 工具:def run_python(code): # 执行 Python 代码 result = execute(code) return resultAI 可以根据任务调用:run_python(""" import pandas as pd df = pd.read_excel("data.xlsx") print(df.head()) """)这时候,AI 不再只是告诉你:“你可以使用 pandas 读取 Excel。”而是可以真正调用工具去完成操作。这就是 Tool 的意义。二、工作流 Workflow:把多个 Tool 组合起来如果只有一个 Tool,AI 只能完成一个具体操作。但实际任务往往需要多个步骤。例如:读取文件 ↓ 处理数据 ↓ 查询数据 ↓ 生成结果我们可以把这些步骤组合成一个固定流程:读取文件 ↓ Python 数据处理 ↓ 查询数据库 ↓ 生成分析报告这就是Workflow(工作流),可以理解为:将多个步骤和工具按照预先定义好的顺序组合起来,形成一个可以重复执行的流程。例如:数据分析 Workflow ① 读取 Excel ↓ ② Python 清洗数据 ↓ ③ 查询数据库 ↓ ④ 生成分析结果每一步都可以使用不同的 Tool。一个简单的 Workflow 代码不使用复杂框架,也可以简单理解成:def data_analysis_workflow(file): # 1. 读取文件 data = read_excel(file) # 2. 数据处理 data = process_data(data) # 3. 查询数据库 result = query_database(data) # 4. 生成结果 report = generate_report(result) return report这里的:read_excel() process_data() query_database() generate_report()都可以看成不同的 Tool。而把它们按照:读取 → 处理 → 查询 → 输出组合起来,就是 Workflow。因此:Tool 是一个个具体的执行能力,Workflow 是把这些能力组织起来的流程。三、Tool 和 Workflow 有什么区别?两者最简单的区别就是:Tool 是“工具”,Workflow 是“流程”。可以这样理解:ToolWorkflow中文工具工作流核心执行能力流程组合作用完成一个具体操作完成一整套任务组成一个具体工具/接口多个步骤、Tool、模型等执行方式单次调用按流程执行重点能做什么按什么步骤做例如:Tool: 读取 Excel 执行 Python 查询数据库 调用 API它们分别提供具体能力。而:Workflow: 读取 Excel ↓ 执行 Python ↓ 查询数据库 ↓ 生成报告则把这些能力组合成了一个完整流程。Skill、Tool、Workflow 可以放在一起理解到这里,我们已经可以把前两篇的内容连接起来:Skill ↓ 告诉 AI 如何理解和处理任务 Tool ↓ 让 AI 获得实际执行能力 Workflow ↓ 把多个 Tool 按固定流程组合起来例如一个数据处理任务:用户输入 ↓ Skill 理解任务和处理规则 ↓ Workflow 按照固定步骤执行 ↓ Tool 读取文件 / 执行 Python / 查询数据库 ↓ 最终结果这也是一个比较典型的 AI 应用结构。那么,AI 调用 Python 算不算 Agent?这是实际开发中非常容易混淆的问题。例如:用户: 帮我分析这个文件 AI: 调用 Python ↓ Python 返回结果 ↓ AI: 整理结果这不一定是 Agent。因为这里可能只是:用户 ↓ AI ↓ Python Tool ↓ AI ↓ 结果AI 只是调用了一个工具。如果整个执行过程已经被开发者固定为:读取文件 ↓ 执行 Python ↓ 生成结果那么它更接近:Tool + Workflow而不是 Agent。Agent 的关键并不是:“AI 能不能调用工具。”而是:AI 能不能根据目标和当前结果,自主决定下一步应该做什么。例如:用户: 帮我分析这份数据。 Agent: 先检查文件 ↓ 发现数据缺少字段 ↓ 决定查询数据库 ↓ 发现数据异常 ↓ 决定运行 Python 进一步分析 ↓ 分析完成 ↓ 决定生成报告这里的下一步不是完全提前写死的,而是 AI 根据当前情况进行判断。这才开始接近:Agent(智能体)所以可以记住:Tool 让 AI 能做事,Workflow 规定 AI 怎么做事,而 Agent 让 AI 自己决定下一步做什么。小结本文主要介绍了两个概念。Tool工具,为 AI 提供实际执行能力。例如:读取文件 执行 Python 查询数据库 调用 API 搜索信息Workflow工作流,将多个步骤和 Tool 按照固定顺序组合起来,形成完整流程。可以把整个关系简单理解为:Skill ↓ 怎么理解、怎么处理 Tool ↓ 具体能执行什么 Workflow ↓ 按照什么步骤执行而它们与 Agent 的区别,则可以进一步概括为:Tool “我能做什么?” Workflow “按照什么步骤做?” Agent “下一步应该做什么?”到这里,AI 已经从最开始的:Prompt → 回答问题逐渐变成:Skill → 理解任务 ↓ Tool → 执行操作 ↓ Workflow → 完成流程但如果流程越来越复杂,所有步骤都提前写死,也会产生新的问题:如果下一步应该做什么,开发者无法提前确定怎么办?这就进入了下一篇的主题——Agent(智能体)【AI技术】Agent:AI 为什么需要“自主决策”?-CSDN博客https://blog.csdn.net/dfraetaem/article/details/165632410?sharetype=blogdetail&sharerId=165632410&sharerefer=PC&sharesource=dfraetaem&spm=1011.2480.3001.8118
上一篇我们介绍了Prompt 和 Skill【AI应用】从 Prompt 到 Skill:AI 到底“会什么”?-CSDN博客https://blog.csdn.net/dfraetaem/article/details/165364646?spm=1001.2014.3001.5501简单来说:Prompt 是指令,Skill 是能力。但即使 AI 已经知道应该怎么处理一项任务,它仍然可能无法真正执行。例如:读取一个 Excel 文件 ↓ 分析其中的数据 ↓ 查询相关信息 ↓ 生成分析结果AI 知道这些步骤应该怎么做,但如果没有对应的执行能力,它依然无法直接读取文件、运行 Python 或查询数据库。这时候就需要:Tool(工具)而当多个 Tool 按照一定顺序组合起来,就形成了:Workflow(工作流)一、工具 Tool:让 AI 拥有执行能力Tool 通常翻译为工具。在 AI 应用中,可以简单理解为:Tool 是 AI 调用外部能力、执行实际操作的接口。例如:文件工具 数据库工具 Python 工具 HTTP API 搜索工具这些能力原本并不属于大语言模型本身。例如:AI 可以理解“请分析这个 Excel”,但它本身不一定能够直接读取你电脑上的 Excel。如果给 AI 提供一个文件读取 Tool:AI ↓ 文件 Tool ↓ 读取 Excel ↓ 返回数据 ↓ AIAI 就获得了实际操作文件的能力。同样:AI ↓ Python Tool ↓ 执行 Python ↓ 返回计算结果 ↓ AI或者:AI ↓ 数据库 Tool ↓ 查询数据库 ↓ 返回查询结果 ↓ AI所以可以简单记忆:Skill 解决“怎么处理”,Tool 解决“怎么执行”。一个简单的代码例子假设我们提供一个 Python 工具:def run_python(code): # 执行 Python 代码 result = execute(code) return resultAI 可以根据任务调用:run_python(""" import pandas as pd df = pd.read_excel("data.xlsx") print(df.head()) """)这时候,AI 不再只是告诉你:“你可以使用 pandas 读取 Excel。”而是可以真正调用工具去完成操作。这就是 Tool 的意义。二、工作流 Workflow:把多个 Tool 组合起来如果只有一个 Tool,AI 只能完成一个具体操作。但实际任务往往需要多个步骤。例如:读取文件 ↓ 处理数据 ↓ 查询数据 ↓ 生成结果我们可以把这些步骤组合成一个固定流程:读取文件 ↓ Python 数据处理 ↓ 查询数据库 ↓ 生成分析报告这就是Workflow(工作流),可以理解为:将多个步骤和工具按照预先定义好的顺序组合起来,形成一个可以重复执行的流程。例如:数据分析 Workflow ① 读取 Excel ↓ ② Python 清洗数据 ↓ ③ 查询数据库 ↓ ④ 生成分析结果每一步都可以使用不同的 Tool。一个简单的 Workflow 代码不使用复杂框架,也可以简单理解成:def data_analysis_workflow(file): # 1. 读取文件 data = read_excel(file) # 2. 数据处理 data = process_data(data) # 3. 查询数据库 result = query_database(data) # 4. 生成结果 report = generate_report(result) return report这里的:read_excel() process_data() query_database() generate_report()都可以看成不同的 Tool。而把它们按照:读取 → 处理 → 查询 → 输出组合起来,就是 Workflow。因此:Tool 是一个个具体的执行能力,Workflow 是把这些能力组织起来的流程。三、Tool 和 Workflow 有什么区别?两者最简单的区别就是:Tool 是“工具”,Workflow 是“流程”。可以这样理解:ToolWorkflow中文工具工作流核心执行能力流程组合作用完成一个具体操作完成一整套任务组成一个具体工具/接口多个步骤、Tool、模型等执行方式单次调用按流程执行重点能做什么按什么步骤做例如:Tool: 读取 Excel 执行 Python 查询数据库 调用 API它们分别提供具体能力。而:Workflow: 读取 Excel ↓ 执行 Python ↓ 查询数据库 ↓ 生成报告则把这些能力组合成了一个完整流程。Skill、Tool、Workflow 可以放在一起理解到这里,我们已经可以把前两篇的内容连接起来:Skill ↓ 告诉 AI 如何理解和处理任务 Tool ↓ 让 AI 获得实际执行能力 Workflow ↓ 把多个 Tool 按固定流程组合起来例如一个数据处理任务:用户输入 ↓ Skill 理解任务和处理规则 ↓ Workflow 按照固定步骤执行 ↓ Tool 读取文件 / 执行 Python / 查询数据库 ↓ 最终结果这也是一个比较典型的 AI 应用结构。那么,AI 调用 Python 算不算 Agent?这是实际开发中非常容易混淆的问题。例如:用户: 帮我分析这个文件 AI: 调用 Python ↓ Python 返回结果 ↓ AI: 整理结果这不一定是 Agent。因为这里可能只是:用户 ↓ AI ↓ Python Tool ↓ AI ↓ 结果AI 只是调用了一个工具。如果整个执行过程已经被开发者固定为:读取文件 ↓ 执行 Python ↓ 生成结果那么它更接近:Tool + Workflow而不是 Agent。Agent 的关键并不是:“AI 能不能调用工具。”而是:AI 能不能根据目标和当前结果,自主决定下一步应该做什么。例如:用户: 帮我分析这份数据。 Agent: 先检查文件 ↓ 发现数据缺少字段 ↓ 决定查询数据库 ↓ 发现数据异常 ↓ 决定运行 Python 进一步分析 ↓ 分析完成 ↓ 决定生成报告这里的下一步不是完全提前写死的,而是 AI 根据当前情况进行判断。这才开始接近:Agent(智能体)所以可以记住:Tool 让 AI 能做事,Workflow 规定 AI 怎么做事,而 Agent 让 AI 自己决定下一步做什么。小结本文主要介绍了两个概念。Tool工具,为 AI 提供实际执行能力。例如:读取文件 执行 Python 查询数据库 调用 API 搜索信息Workflow工作流,将多个步骤和 Tool 按照固定顺序组合起来,形成完整流程。可以把整个关系简单理解为:Skill ↓ 怎么理解、怎么处理 Tool ↓ 具体能执行什么 Workflow ↓ 按照什么步骤执行而它们与 Agent 的区别,则可以进一步概括为:Tool “我能做什么?” Workflow “按照什么步骤做?” Agent “下一步应该做什么?”到这里,AI 已经从最开始的:Prompt → 回答问题逐渐变成:Skill → 理解任务 ↓ Tool → 执行操作 ↓ Workflow → 完成流程但如果流程越来越复杂,所有步骤都提前写死,也会产生新的问题:如果下一步应该做什么,开发者无法提前确定怎么办?这就进入了下一篇的主题——Agent(智能体)【AI技术】Agent:AI 为什么需要“自主决策”?-CSDN博客https://blog.csdn.net/dfraetaem/article/details/165632410?sharetype=blogdetail&sharerId=165632410&sharerefer=PC&sharesource=dfraetaem&spm=1011.2480.3001.8118