)
【人工智能】AI基础知识第十五节什么是工作流【人工智能】AI基础知识第十五节什么是工作流【人工智能】AI基础知识第十五节什么是工作流一. 引出问题二. 工作流是什么三. 工作流是怎么保证稳定性的1.状态的持久化2.幂等性3.错误处理与重试四. 工作流与多轮会话是同一回事吗五. 如何定义一个工作流1. 必须写明上下文传递2. 分支判断要写明确的条件3. 不要在一个Skill塞无限多节点4. Skill里的工作流是“逻辑编排”不是底层代码执行5.必须加上约束规则六. 尝试写一个测试工程师工作流一. 引出问题在使用AI时我们常常会遇到AI答非所问或输出结果不稳定的情况。为了解决这一问题我们可以引入工作流的概念。二. 工作流是什么简单来说工作流就是将一项任务拆解为一系列有序的步骤来完成。每个步骤都有明确的目标、输入和输出。从技术视角看工作流通常包含以下四个核心组件触发器Trigger启动任务的事件例如用户输入。状态State表示当前执行所处的阶段。动作Action具体执行的操作例如生成文本、调用接口等。转换Transition在满足特定条件时驱动状态从一个切换到下一个。以AI撰写市场调查报告的工作流为例它可以划分为输入、搜索、分析和邮件发送四个步骤分别对应上述的触发器、状态、动作和转换。如果某个步骤执行失败系统会触发预设的失败条件并自动转入相应的错误处理分支。AI工作流通过将多个SubAgent、Skill工具、代码执行、文档读取以及结果汇总等组件按照预定义的编排顺序串联起来从而实现“自动分步完成复杂业务”的自动化执行流程。简而言之工作流就是为复杂任务设定一套清晰的执行蓝图明确规定“先做什么、再做什么、遇到不同情况如何应对”从而构建出一条高效、可靠的自动化流水线。三. 工作流是怎么保证稳定性的工作流的稳定主要靠三个机制来保证。1.状态的持久化工作流会记录每一步执行的结果。即使出现意外中断它也能从中断点继续执行而无需从头开始。这类似于玩游戏时的存档机制每次存档后下次游戏便可以从存档点继续无需重复已完成的流程。2.幂等性同一操作执行多次其结果保持一致。例如让AI搜索2026年的市场数据无论搜索多少次返回的核心数据都是一致的尽管表达方式可能略有不同。这种特性确保了工作流的可重复性和结果可靠性。3.错误处理与重试当某一步骤执行失败例如HTTP超时或API返回错误时工作流会自动根据预设规则进行重试或启用备用方案。这好比快递员上门送货时若收件人不在家他会改期再次配送而不是直接放弃。工作流的错误处理机制同样旨在确保任务最终能够完成而非因单次失败而中断。四. 工作流与多轮会话是同一回事吗很多人容易将工作流与多轮会话混淆但二者本质不同。多轮会话是指与AI进行多轮交互对话逐步澄清问题、探索答案其优势在于灵活性强但缺乏固定的执行路径——就像与朋友闲聊话题可能随时发散。而工作流则是按照预先定义好的步骤序列来执行任务其特点是路径固定、目标明确如同按照菜谱做菜每一步都有清晰的操作说明。如果你的任务符合以下特征建议采用工作流来处理任务复杂度高任务重复性高需要多角色或模块协作。简而言之简单任务适合用会话方式处理复杂任务则更适合通过工作流来执行。五. 如何定义一个工作流一个典型的工作流定义包含一系列有序的步骤。以C语言代码测试为例其流程可概括为读取C源码 → 调用静态扫描Skill → 调用生成测试用例Agent → 调用cppunit执行用例 → 汇总输出测试报告。若执行用例时出错流程可回退至第二步重新调用生成测试用例。由此可见工作流通过一条明确、有序的链路来处理复杂的系列任务。在设计工作流时请务必遵循下文列出的原则。1. 必须写明上下文传递不加这句话AI每一步都会清空前面的数据工作流断裂。话术模板“将上一步的输出作为下一步的输入保留会话上下文”2. 分支判断要写明确的条件不要写模糊的“有问题就停下来”要量化若静态扫描出现≥3个高危MISRA缺陷终止后续流程3. 不要在一个Skill塞无限多节点一条工作流建议控制在36个步骤过长就拆成子Skill再由总工作流调用。4. Skill里的工作流是“逻辑编排”不是底层代码执行它是AI按照你写的流程指令去调用其他SubAgent/Skill并不是运行程序脚本。5.必须加上约束规则执行约束所有步骤顺序不可随意调换中间结果持久化在当前会话上下文不要重复读取文件每一步完成后简要输出小结不要大段冗余文字遇到异常输出异常信息并优雅终止不要无限循环。六. 尝试写一个测试工程师工作流【工作流执行规则】本工作流采用串行执行模式每一步的输出将自动作为下一步的输入确保上下文信息在流程中持续传递避免中间数据丢失。步骤1解析输入接收参数源码文件夹路径子Agent代码解析Agent动作遍历所有.c文件提取函数列表、接口定义及全局变量输出函数清单文档步骤2静态MISRA扫描子Agent静态扫描Skill输入步骤1生成的函数清单 源代码动作运行 cpptest 静态规则检查生成缺陷报告输出静态扫描报告步骤3动态测试用例生成子AgentTestcase生成Agent输入步骤1的函数列表 步骤2的缺陷信息动作为业务函数生成边界值测试用例及恢复场景测试用例输出C单元测试代码文件步骤4运行动态测试用例子AgentTestCase执行Agent输入步骤3生成的C单元测试代码文件与源代码文件动作执行测试用例验证其是否可以正确运行输出测试用例执行结果步骤5汇总整合报告子Agent文档整理Agent输入步骤1、2、3的所有输出产物动作将各阶段结果合并为一份结构化的测试报告Markdown格式输出最终综合测试报告分支规则若步骤2的静态扫描发现高危错误则立即终止整个流程输出告警信息并跳过后续的测试用例生成与执行步骤。