CRAFTS:不做端到端代码生成,七角色协同让化工模拟成功率达91.5%

CRAFTS: Collaborative Role-Adaptive Fine-Tuning of LLM Agents for Chemical Process Simulation

论文原文 ↗ 论文发布 解读发布 解读:AI前沿分享

在工业软件与科学计算的落地探索中,化工流程模拟(Chemical Process Simulation)一向被视作大语言模型的一道极高门槛。与通用的代码编写或文本生成不同,化工流程建模是一个高度耦合、对物理和数值规范近乎苛求的领域。工程师不仅需要从模糊的需求或工艺流程图(PFD)中提炼出单元操作与物流走向,还必须指定严格自洽的热力学物性包、设定操作参数以完全闭合系统的自由度(Degrees of Freedom, DoF),并在非线性求解器崩溃时进行复杂的数值调优。只要某一个流股端点接错、物性范围越界或者自由度出现欠定或超定,整个方程系统就会瞬间失效。

ArXiv URL:https://arxiv.org/abs/2608.01369

过去许多尝试将大语言模型引入工业仿真的方案,往往倾向于将任务简化为“端到端代码生成”或通用的智能体调用。然而,这类做法在严肃的工程验证中几乎全军覆没。近日提出的 CRAFTS 框架给出了截然不同的解题思路:它彻底摒弃了用单一大模型一步到位编写仿真代码的幻想,而是深度复现了资深化工工程师的分阶段工作流。该框架将建模任务解耦给七个各司其职的角色智能体,并在它们之间设置了不可逾越的确定性工程物理关卡,将松散的自然语言与图像推理收敛为强类型的中间表示(IR)。

在全新构建的开源基准 OpenIDAES-450 上,由开源模型 Qwen 驱动的 CRAFTS 实现了 91.5% 的端到端工作流成功率,在冻结的盲测集上取得了单元操作 0.815、流股 0.791 的 $F1$ 匹配度。这项研究证明,让大模型接管复杂工业软件的核心不在于端到端的参数规模,而在于面向工程机理的“角色自适应分工”与“确定性契约约束”。

从封闭模拟工作流到开放方程导向底座的范式演进

为什么端到端大模型写不好化工仿真代码?

要理解 CRAFTS 为什么要采用如此复杂的架构,必须先看清化工流程模拟的本质。工业界长期依赖 Aspen Plus 或 HYSYS 等成熟商业软件,但这些商业工具多为专有黑盒,其内部数据结构、变量关联和求解状态并不对外暴露统一且可供程序化检查的底层对象。当大模型试图直接操纵这类软件或直接编写仿真脚本时,极易陷入不可解释的盲目试错。

更为棘手的是化工建模固有的“单点崩塌”特性。在典型的方程导向(Equation-Oriented)建模中,整个流程被表述为一个庞大的非线性代数方程组(NLAE)或微分代数方程组(DAE)。如果一个流股的连接端口搞反了进出口方向,或者选定的闪蒸模型无法覆盖当前的温度压力相区,或者分配给反应器进料的自由度没有准确归零,求解器(如 IPOPT)就会直接发散甚至报错终止。在传统开发中,工程师是依靠模块化的经验、逐步检查拓扑、逐层验证自由度、设计合理的初始化初值才完成求解的。

大模型在处理这类长链条、强耦合逻辑时,极易发生“看似合理实则物理失真”的幻觉。如果把理解用户自然语言输入、阅读流程图结构、推导热力学相平衡、构建单元模型和排查非线性求解错误的全部压力都扔给一个模型,其输出的脚本往往充满语法或语义死锁。

为了突破这一瓶颈,CRAFTS 并没有寄希望于通用大模型的推理能力跃迁,而是选择扎根于美国能源部主导开发的开源化工建模底座 IDAES 与 Pyomo。在 IDAES 框架下,变量、约束、流股连接、物性模型与求解器诊断都被暴露为第一公民级别的 Python 对象。这种完全透明、可检查的“白盒”代码基座,为智能体的分步推理和确定性工程校验提供了物理落脚点。

七角色协同与非均质微调策略

CRAFTS 并没有盲目地对一个超大规模模型进行全流程调优,而是依照化工工程拆解出七个各具职责边界的智能体角色,并根据任务特性采取了“非均质(Heterogeneous)适配”策略。并非每个角色都需要重新训练,框架将需要深厚语义理解的角色与需要高精度格式输出的角色做了严格区分。

在整条流水线中,输入理解角色(Input Understanding)首先消化用户杂乱甚至欠缺约束的自然语言需求,提取出核心生产目标与工艺约束;意图路由角色(Intent Router)则结合精选的化工领域知识库,将用户意图映射到合理的反应与分离概念上。这两个前端角色负责打通工程常识,直接采用开源的 Qwen3.6-27B 配合高质量化工知识提示词驱动即可胜任。

真正考验结构精度的,是紧随其后的三个“格式与物理骨架角色”:

  1. 视觉专家(Visual Agent):基于 Qwen3-VL-8B-Instruct,通过 LoRA 监督微调,专门负责从流程草图(PFD)中精准提取图形基元,生成视觉图中间表示(VisualGraphIR)。

  2. 拓扑专家(Topology Agent):基于代码大模型 Qwen2.5-Coder-7B-Instruct 进行 LoRA 微调,负责融合视觉结果与需求语义,构建出具有严格工程拓扑含义的 TopologyIR,敲定所有单元操作类型及其互联关系。

  3. 设定专家(Specification Agent):同样基于微调后的 Qwen2.5-Coder-7B-Instruct,在合法拓扑之上生成 SpecIR,精准配置进料组分、温度压力等操作条件,并从数学上严格闭合自由度。

将微调预算收拢在视觉、拓扑与设定这三个“结构关键角色”上,是 CRAFTS 极为精明的架构取舍。通用的代码模型无法稳定输出完全合规的领域特定模式,而通过针对特定强类型数据模式进行微调,可以令小参数量模型在自己的专属工位上表现出极高的确定性。至于后端的调试修复角色(Debug Agent)与优化建议角色(Optimization Agent),则再次交由具备大上下文推演能力的 Qwen3.6-27B 担当,在既定的结构框架下进行故障分析与操作变量搜索。

CRAFTS 工作流概览与甲苯脱烷基化(HDA)案例演进

强类型中间表示与不可逾越的“确定性关卡”

在以往的多智能体研究中,系统最脆弱的一环往往是智能体之间的自然语言对话——上游产生的细微歧义会在下游被逐级放大,最终导致代码无法运行。CRAFTS 彻底终结了智能体之间的自然语言漫游,取而代之的是纯粹的强类型中间表示(Typed Intermediate Representations, IR)和确定性物理校验关卡(Deterministic Gates)。

整个流水线严格遵循阶段递进。从需求生成的结构化要求 $G_i$ 开始,如果有图像输入,则编译出包含实体与连接关系的 VisualGraphIR $V_i$;拓扑专家随后将其转化为严谨的 TopologyIR $T_i$。此时,系统并不会直接启动代码编写,而是将 $T_i$ 提交给纯代码编写的确定性拓扑校验器。该校验器就像一位严苛的质检员,无情地核验设备端口是否存在、进出口类型是否配对、物性模型是否支持该单元、全流程是否存在悬挂孤立节点。只要校验未过,该状态就绝不会被晋升(Promoted)到下一阶段。

当拓扑通过检验后,设定专家介入生成 SpecIR $S_i$。确定性自由度校验器会立刻启动符号与数值分析,测算系统方程数与已知变量数是否相等。只有在拓扑与参数均通过确定性门禁后,系统内置的确定性编译器才会将这些 IR 翻译为实际的构建计划 BuildPlan $B_i$,进而自动组装出标准的 IDAES/Pyomo 建模代码。

这种设计的精妙之处在于“大模型负责创造性推理,确定性程序负责不可动摇的物理定律”。大模型绝不越俎代庖去直接猜测数值计算结果,IDAES 的核心求解器(如用于求解非线性方程的 IPOPT)在完全确定性的沙盒环境中运行。求解完成后输出的 SolveReport $E_i$ 会记录自由度结算、残差水平、求解器终止状态和潜在的奇异矩阵诊断,作为整个流程坚实的物理证据。

定点局部修复:不做无意义的全局重写

在实际的化工工程中,几乎没有哪个复杂的非线性流程模型能在第一次求解时就顺利收敛。数值发散、初值偏离吸引盆、循环流股未初始化是家常便饭。如果采用传统的 LLM Agent 方案,一旦求解报错,智能体往往会尝试从头重新生成整段代码,这种漫无目的的全局重试极难收敛。

CRAFTS 引入了阶段局域化的受限修复(Bounded Stage-Specific Repair)机制。由于系统在每一步都保留了类型化资产的快照,当运行时关卡捕获到求解器抛出的数值异常或自由度不匹配时,失败信息被严格限制在特定的层次。

Debug Agent 会协同分析错误调用栈、求解器诊断日志以及当前所处的 IR 阶段,确定故障根源究竟出在拓扑层还是参数设定层。随后,确定性故障路由器(Failure Router)会依据白名单规则,将模型状态精确回滚到对应的上游角色。例如,若错误仅仅是因为再沸器负荷初始猜测值过高导致相平衡计算崩溃,系统只需让 Specification Agent 重新生成局部 SpecIR,而完全不必重绘已经通过校验的拓扑结构。

这种“保留已验证资产、仅修补失效层”的策略,最大限度地捍卫了大模型系统的可控性。在设定了固定重试预算的前提下,即便达到上限,系统也会安全闭合(Fail-Closed),避免在错误的基础上产生更离谱的连环幻觉。

Web 控制台界面展示的天然气联合循环(NGCC)轨迹审计

OpenIDAES-450 上的极限大考

为了给这套严密的体系提供客观公正的评测基准,研究团队构建了 OpenIDAES-450 基准数据集。该数据集包含了 450 个工业级 IDAES 建模任务,涵盖反应器设计、精馏分离、闪蒸换热、循环流股处理以及全流程优化等复杂场景。更重要的是,测试集固定了 82 个盲测案例,其余 368 个案例用于开发与微调,并且在评估过程中完全屏蔽了测试用例的标准答案(Ground Truth),确保评估环境具有无污染的严苛性。

评估维度不仅考量传统智能体研究偏爱的文本相似度,而是直接考核仿真物理成效:

实验结果显示,完整的 CRAFTS 架构取得了 91.5% 的极高工作流成功率(82 个案例中成功解决 75 个),其单元操作、流股和有向连接的 $F1$ 值分别达到了 0.815、0.791 和 0.782。作为对比,如果移除框架内的三个专门 LoRA 适配器、直接使用未微调的底模,工作流成功率会大幅下滑;而如果强行使用单一闭源商业大模型统揽所有角色,其在有向拓扑匹配和求解收敛上的表现均明显逊色于分工协同架构。

消融实验进一步揭示了工程建模的硬核规律。当研究人员尝试关闭 Debug 修复机制时,系统的成功率瞬间雪崩。深入的日志审计揭示了一个惊人的事实:在全部 82 个测试案例中,有 75 个案例在首次尝试中均未能直接解通,全部经历了至少一次确定性报错与定向回溯修复。这一数据强有力地击碎了“依靠更大参数量模型就能单次直出复杂工业代码”的盲目乐观——在复杂的工程领域,带有防御机制的迭代纠错不是附加功能,而是任务能够成立的固有组成部分。

甲苯脱烷基化闪蒸分离段审计证据束(Audit Bundle)

从消融数据中还可以观察到另一个核心趋势:拓扑连接指标(CC)和流股指标(SC)的提升幅度,远远超过了单纯识别单元操作(UC)的提升幅度。这表明,大模型在化工领域的真正瓶颈,从来不是“认不出这是一个精馏塔还是一台换热器”,而是在于“如何精确维系整个流程的拓扑守恒与物流关系”。CRAFTS 依靠中间表示和阶段门禁,精准补足了大模型在图关系建模上的软肋。

工业级智能体的下一代范式

CRAFTS 展现出来的技术路线,对当前方兴未艾的垂直领域大模型应用具有强烈的示范效应。

长久以来,AI 赋能传统工程学科的路径往往陷入两极化:要么是用深度学习做完全替代机理模型的代理模型(Surrogate Model),但面临泛化性差和物理不可解释的问题;要么是用大语言模型作为花哨的自然语言接口,底层依然严重依赖人工编写逻辑。CRAFTS 则走出了一条兼具二者优势的第三条路:用大语言模型去承担最需要弹性、理解力与常识的语义与拓扑抽象工作,但把真正的方程组立、物性推演与数值计算毫无保留地归还给严谨的物理求解器。

这种“大模型生成结构化假设,确定性内核执行物理判决,局部回溯完成容错闭环”的设计,不仅使全本地化部署(依靠几张工业级 A40 GPU 即可运行开源 Qwen 架构)成为可能,满足了化工厂区对数据安全与离网部署的严苛要求,更为高风险工业软件的自动化开辟了可信路径。

从笨重封闭的商业仿真包,到完全由代码定义、具备自我诊断与修复能力的自动化仿真流水线,CRAFTS 证明了一件事:当大模型学会像工程师一样分阶段思考、遵守物理边界并正视错误排查时,AI 才能真正推开工业核心领域的大门。