近日,来自ServiceNow的研究团队Orlando Marquez Ayala、Patrice Bechard、Emily Chen、Maggie Baird和Jingfei Chen在2025年5月30日发表了一篇题为"Fine-Tune an SLM or Prompt an LLM? The Case of Generating Low-Code Workflows"的研究论文。这项研究针对一个实际应用场景进行了深入探索:在生成低代码工作流程时,到底是微调小型语言模型更有效,还是直接提示大型语言模型更划算?随着大型语言模型(LLM)如GPT-4o等的不断发展和每个token成本的降低,微调小型语言模型(SLM)的优势似乎变得不那么明显。那么在实际应用中,这两种方法哪一种更胜一筹呢?让我们一起来看看ServiceNow团队的发现。
一、研究背景:工作流自动化的挑战
想象一下,你是一家企业的IT管理员,每天都需要处理大量重复但复杂的流程。比如"当用户变为非活跃状态时,找出该用户负责的所有事件工单,并将它们分配给用户的经理"。这看似简单的任务,实际上需要系统执行多个步骤:检测用户状态变化、查找相关工单、循环处理每个工单、更新工单信息等。
在企业环境中,这类重复性任务通常通过"工作流"来自动化处理。虽然现代企业系统提供了低代码界面来创建这些工作流,但用户仍然需要了解系统的专业知识。就像你想要使用家庭自动化系统,即使有图形界面,你也需要知道哪些设备可以连接,以及如何设置它们之间的关系。
ServiceNow团队正在开发一个名为"Flow Generation"的应用,它能根据用户的文字需求自动生成这些低代码工作流。这就像是给你一个智能助手,你只需说"当我离家时,关闭所有灯并锁上门",它就能自动创建完整的家庭自动化流程。
但是,创建这样的工作流面临着几个主要挑战:
首先,每个系统环境中可用的步骤各不相同,就像不同品牌的智能家居设备提供不同功能一样。用户甚至可以添加自定义步骤,进一步增加了复杂性。
其次,工作流必须遵循严格的结构规则,包括条件(如IF语句)和循环(如FOREACH)等概念,就像编程一样需要遵循语法规则。
再者,每个步骤会产生特定类型的输出数据(如整数或布尔值),这些输出可用于后续步骤,形成一个连贯的数据流。
最后,步骤的输入可以引用数据库表、列和值。例如,在查找事件记录的步骤中,需要匹配事件表中"assigned_to"列的值与触发步骤中的用户记录值,这就像在Excel中使用VLOOKUP函数查找相关数据。
二、研究方法:微调小模型 VS 提示大模型
面对这样复杂的任务,ServiceNow团队探索了两种主要方法:直接使用现成的大型语言模型(LLM)通过精心设计的提示来生成工作流,或者微调一个小型语言模型(SLM)以专门处理这项任务。
想象一下,这就像是在两个选择之间权衡:是聘请一位经验丰富的通用咨询顾问(大模型)并向他详细解释你的企业需求,还是培训一位新员工(小模型)专门处理你公司的特定任务。通用顾问可能知识面更广,但可能需要更多时间来理解你的具体需求;而经过专门培训的员工虽然知识面不那么广,但对你的业务流程可能更加熟悉。
研究团队的方法很直接:他们创建了一个小型但具有代表性的训练数据集,用于微调Mistral-Nemo-12B-Base模型(这个模型有120亿参数,相比之下,GPT-4o等大模型可能有数万亿参数)。这就像是给新员工提供一套精心设计的培训材料,涵盖公司的各种典型场景。
为了测试效果,他们标注了大约一千个来自十个不同领域的工作流(每个领域约100个)。此外,他们还邀请企业用户专家与该工具交互,收集了真实使用场景生成的数据。这相当于既准备了标准测试案例,又进行了实际用户测试。
在评估指标方面,团队开发了一个名为"Flow Similarity"(FlowSim)的度量标准,这是一种树编辑距离的变体,将工作流表示为树结构来比较生成结果与预期结果的相似度。想象成比较两张家谱树的相似程度,看看节点和连接有多少是匹配的。
三、数据集与模型:从理论到实践的跨越
为了确保研究结果的可靠性,研究团队精心准备了多个数据集。他们从内部部署的企业系统中提取了1,512个工作流,并由专业团队将这些工作流用自然语言描述出来,就像用户可能提出的需求一样。由于现有工作流通常是完整的,而用户在实际使用中可能会先创建简单版本再逐步添加复杂性,团队还使用领域专业知识创建了766个较简单的合成工作流。
这就像是同时准备了专业级和入门级的烹饪食谱,以测试AI系统能否适应不同复杂度的需求。
评估数据分为两部分:一部分是从10个客户部署中提取的约1,000个工作流(OOD集),涵盖零售、银行等不同领域;另一部分是邀请专家用户模拟与应用交互生成的108个工作流(TEST集)。前者代表了完整的专业工作流,后者更接近真实用户的使用场景。
在模型选择方面,研究团队考虑了多个小型语言模型,最终选择了Mistral-Nemo-12B-Base,主要是因为这个模型架构在企业系统中得到了良好支持和优化。作为基线,他们使用了同样架构和大小但没有在工作流领域数据上微调的Mistral-Nemo-12B-Instruct模型。
他们还比较了多种大型语言模型: - 封闭源码模型:GPT-4o-mini、GPT-4o和Gemini-2.0-Flash - 开源模型:Llama-3.3-70B-Instruct - 推理增强模型:o3-mini(配置为中等推理水平)
为了让这些模型处理工作流生成任务,研究团队设计了两个提示模板,分别用于生成工作流大纲和填充步骤输入。这些模板包含上下文信息、任务定义、输入数据、指南、约束条件和输出格式等部分。在提示大型语言模型之前,这些模板会根据系统数据和检索到的建议进行动态填充。
四、研究流程:分解复杂任务为简单步骤
由于工作流是复杂的结构化输出,需要在步骤和输入中使用各种数据,研究团队设计了一个依赖检索增强生成(RAG)的流水线,通过让语言模型逐步解决子任务来迭代生成工作流。
这个过程就像是拆解一个复杂的乐高积木组装任务。首先,你需要整体规划(生成工作流大纲),然后再逐步处理每个细节(生成每个步骤的具体输入)。
具体来说,工作流生成被分解为两个主要阶段:
第一阶段:根据用户的自然语言需求,生成工作流的计划或大纲,确定步骤名称、执行顺序,并从需求中提取每个步骤的注释(描述)。
第二阶段:对于大纲中的每个步骤,使用其注释从环境中收集必要的数据,并生成步骤输入。
连接这两个阶段的关键是"注释",它们不仅解释了生成的步骤,还允许模型填充步骤详情。当系统检索表名或列名等数据时,这些注释是搜索输入的重要组成部分。
在实际系统架构中,用户界面接收用户需求并显示生成的工作流;AI层包含语言模型和检索器;数据层存储索引的数据源,检索器从中向语言模型提供步骤和数据元素建议。数据层可以在系统的每次安装中被替换,允许语言模型为每个客户生成特定的输出。
五、研究结果:数据胜于规模的明显证据
研究团队的结果令人深思。总的来说,微调的小型语言模型在这个领域特定任务上确实表现出了优势,平均提高了约10%的质量。
当我们查看具体数字时,在小型TEST数据集上,微调的Mistral-Nemo-12B-Base模型在生成完整工作流(大纲和输入)时实现了67.8%的FlowSim分数,而GPT-4o为59.8%,Gemini-2.0-Flash为60.6%。在更大的OOD数据集上,差距更为明显:微调模型达到79.8%,而GPT-4o为67.4%。
这就像是比较一位经过专门培训的新员工和一位经验丰富的通用顾问的表现。虽然通用顾问知识面更广,但在特定领域任务上,专门培训的员工能更准确地完成工作。
更值得注意的是结构错误方面的差异。在TEST数据集上,GPT-4o生成的工作流中有12.0%存在至少一个结构错误(如在没有IF的情况下使用ELSE步骤),而微调的SLM只有5.6%。这表明微调的模型更好地理解了工作流的结构规则。
研究团队还进行了另一项实验,看看检索增强生成(RAG)的质量对结果的影响。他们发现即使使用"完美RAG"(所有预期工作流中的步骤都包含在建议中),改进也只有最多4%,这表明大多数错误来自模型本身,而不是检索质量不佳。
六、错误分析:理解模型的局限性
为了更深入地了解各个模型的表现,研究团队进行了系统的错误分析。他们首先通过定性错误分析,识别出了训练数据集中影响模型输出的特征,然后将这些特征组织成一个二元矩阵(1表示特征存在,0表示不存在)。
这种方法就像是医生分析多个病例,找出共同的症状模式,从而更好地理解疾病。通过这种方式,研究团队可以快速评估新模型运行的表现,而无需逐个样本进行评审。
他们在TEST数据集上重点关注了三类特征: 1. 结构(STRUCTURE):包含结构逻辑特征,如FOREACH、PARALLEL和TRY/CATCH 2. 输入(INPUT):包含输入相关特征,如工作笔记/描述、触发条件和多条件 3. 企业(ENTERPRISE):包含特定于企业系统的特征,如服务级别协议(SLA)、服务目录和Glide日期时间
研究发现,微调的SLM在包含结构逻辑步骤的工作流上表现不如大型语言模型。进一步分析表明,SLM经常错过与这些结构相关的依赖步骤(例如,FOREACH通常与之前的look_up_records步骤配对,PARALLEL应该始终包含多个分支)。
然而,微调的SLM在其余两个子集上始终优于大型语言模型。最大的差距出现在ENTERPRISE集上,微调SLM的平均FlowSim分数比GPT-4o高12.16%,比Gemini-2.0-Flash高5.35%。研究团队推测,通过示例学习比在提示中包含复杂指令更有效,这是由于工作流领域的复杂性和特殊性。
最后,研究团队观察到,TEST数据集中的工作流步骤和条件通常以隐含方式表达。例如,需求"查找事件任务并关闭它们"暗含了一个FOREACH和更新步骤,但并未明确说明。结果表明,微调的SLM在处理这类例子时远优于大型语言模型,FlowSim分数为65.1,而Gemini的为57.6,GPT-4o的为58.5。这表明标注过程的价值,因为这类例子是基于应用程序预期使用方式的标注指令的一部分。
七、结论与未来展望
ServiceNow团队的研究为人工智能在企业软件中的应用提供了重要见解。他们证明,对于生成低代码工作流这类领域特定的结构化输出任务,微调小型语言模型比使用更大的通用语言模型更有效,平均质量提高约10%。
这项研究的意义在于,它挑战了"更大就是更好"的常见观念。就像一个专注于特定领域的专家往往比知识面广但深度不够的通才更擅长解决该领域的问题一样,经过领域特定数据微调的小型模型可以在特定任务上超越更大的通用模型。
研究团队还展示了一种系统的错误分析方法,揭示了模型的局限性并补充了定量指标。这种方法可以帮助开发人员识别模型的弱点并有针对性地改进。
未来的工作可能包括改进自定义指标和解决错误分析方法识别的差距。例如,研究团队可能会探索如何改进小型语言模型在处理结构逻辑步骤方面的能力,或者开发更复杂的评估方法,考虑到一个需求可能有多个有效的工作流实现方式。
总的来说,这项研究表明,尽管大型语言模型在许多任务上表现出色,但对于特定领域的复杂任务,精心微调的小型模型仍然具有明显优势。这不仅可以提高质量,还可能带来更快的推理速度和更低的成本,这对于实际部署至关重要。
正如研究团队所示,在人工智能应用开发中,模型大小并不是唯一重要的因素;数据质量、领域适应性和任务分解策略同样重要,甚至可能更为关键。
好文章,需要你的鼓励
这项研究利用大语言模型解决科学新颖性检测难题,南洋理工大学团队创新性地构建了闭合领域数据集并提出知识蒸馏框架,训练轻量级检索器捕捉想法层面相似性而非表面文本相似性。实验表明,该方法在市场营销和NLP领域显著优于现有技术,为加速科学创新提供了有力工具。
un?CLIP是一项创新研究,通过巧妙反转unCLIP生成模型来增强CLIP的视觉细节捕捉能力。中国科学院研究团队发现,虽然CLIP在全局图像理解方面表现出色,但在捕捉细节时存在不足。他们的方法利用unCLIP生成模型的视觉细节表示能力,同时保持与CLIP原始文本编码器的语义对齐。实验结果表明,un?CLIP在MMVP-VLM基准、开放词汇语义分割和视觉中心的多模态任务上显著优于原始CLIP和现有改进方法,为视觉-语言模型的发展提供了新思路。
这项研究介绍了RPEval,一个专为评估大语言模型角色扮演能力而设计的新基准。研究团队从法国里尔大学开发的这一工具专注于四个关键维度:情感理解、决策制定、道德对齐和角色一致性,通过单轮交互实现全自动评估。研究结果显示Gemini-1.5-Pro在总体表现上领先,而GPT-4o虽在决策方面表现出色,但在角色一致性上存在明显不足。这一基准为研究人员提供了一个可靠、可重复的方法来评估和改进大语言模型的角色扮演能力。
这篇论文介绍了LegalSearchLM,一种创新的法律案例检索方法,将检索任务重新定义为法律要素生成。研究团队构建了LEGAR BENCH数据集,涵盖411种犯罪类型和120万案例,并开发了能直接生成关键法律要素的检索模型。实验表明,该模型在准确率上超越传统方法6-20%,且在未见犯罪类型上展现出强大泛化能力。这一突破为法律专业人士提供了更高效、精准的案例检索工具。