这项工作提出了一种基于大型语言模型(LLM)的代理OpenFOAMGPT,专为以OpenFOAM为中心的计算流体动力学(CFD)模拟而定制,利用了OpenAI的两个基础模型:GPT-4o和支持思想链(CoT)的o1预览模型。这两个代理都在多个任务中取得了成功。虽然o1模型的代币价格是GPT-4o的六倍,但它在处理复杂任务方面始终表现出优异的性能,从零样本案例设置到边界条件修改、湍流模型调整和代码转换。通过迭代校正循环,该代理有效地解决了单相和多相流、传热、RANS、LES和其他工程场景,通常以低tokens成本在有限的迭代次数内收敛。为了嵌入特定领域的知识,我们采用了检索增强生成(RAG)管道,展示了预先存在的仿真设置如何进一步专门化能源和航空航天等子领域的代理。尽管代理表现出色,但人为监督对于确保准确性和适应不断变化的环境仍然至关重要。随着时间的推移,模型性能的波动表明需要对关键任务应用程序进行监控。尽管我们的演示侧重于OpenFOAM,但该框架的适应性为将LLM驱动的代理开发成各种求解器和代码打开了大门。通过简化CFD模拟,这种方法有可能加速基础研究和工业工程的进步。
1、引言
最近,流体力学领域越来越多地采用数据驱动的方法,这得益于丰富的高保真仿真数据和机器学习的快速发展[1-6]。这些方法已经开发出来,用于模拟有和没有控制方程的湍流[7-12],以及解决复杂的传热问题[13,14]。此外,机器学习技术支持了实验测量[15],并促进了科学发现,例如通过在流体流动中实现因果推理[16-18]。
LLM在流体力学中的一个突出应用在于它们促进方程发现的能力。例如,Du等人[32]已经证明了LLM如何从数据中自主提取控制方程,在没有大量人为干预的情况下捕捉复杂的非线性关系。除了方程发现,LLM还被用于简化形状优化问题。例如,Zhang等人[33]介绍了一种框架,该框架利用这些模型优化几何轮廓,如翼型或轴对称配置,以实现减阻。新兴研究将这些进展扩展到微流体等领域[34],在这些领域,LLM有助于在流体流动约束下进行机器人运动规划的决策,或引导微型游泳者通过复杂的流体环境。Zhu等人[35]介绍了一种将LLM与时空感知编码器相结合的框架,用于预测非定常流体动力学,与传统的CFD方法相比,显著提高了准确性和效率。通过利用预训练的LLM和图神经网络,该模型有效地整合了空间和时间信息,在翼型和圆柱流等流体数据集的长期预测中取得了卓越的性能。Kim等人[36]评估了ChatGPT生成的MATLAB代码在基于叙述的提示下用于岩土工程应用的潜力,包括渗流分析、边坡稳定性评估和X射线断层图像处理。尽管ChatGPT不能完全取代传统编程,但它有效地优化了代码,最大限度地减少了语法错误,并在仔细阅读时提供了一个特定领域的指导的富有逻辑框架。同样重要的是LLM在自动化和编排CFD模拟中的应用。Chen等人[37]提出了一种基于LLM的多代理系统,能够通过自然语言交互自动化CFD工作流程。通过采用检索增强生成(RAG),该平台可以识别和纠正潜在错误,大大降低了通常与CFD模拟相关的技术障碍,并使非专业人员更容易使用这些工具。
2、Methodology方法
OpenFOAM(开源现场操作和操纵)是一个广泛使用的开源CFD求解器包[38]。它为广泛的应用提供了多种求解器,包括不可压缩[39-41]和可压缩流[42]、传热[43-47]和多相系统[48-50]。与商业CFD软件包不同,OpenFOAM的完全开源架构赋予用户修改现有求解器、开发新物理模型的灵活性。通过依赖于面向对象设计的C++,它确保了可维护性、可扩展性和高并行性效率,使其成为学术研究和工业工程工作流程的标准平台。其经过验证的准确性、适应性,可扩展性和高效的并行运算能力,使OpenFOAM成为与基于LLM的代理耦合的理想环境,这些代理可以交互式地指导用户完成模拟设置、执行和分析。我们在这里使用的版本是OpenFOAM-v2406版本。
3、Evaluations 实验验证
A. 零样本提示的性能
我们提出了一种基于LLM的代理OpenFOAMGPT,用于专注于OpenFOAM的计算流体动力学,集成了OpenAI的两个基础模型,即广泛使用的GPT-4(4o)和支持思想链(CoT)的o1模型。尽管o1的成本大约是代币成本的六倍,但它在处理复杂任务方面表现出了明显的优势,突显了其在专业CFD工作流程中的潜在价值。通过迭代校正循环,OpenFOAMGPT成功地解决了实际模拟任务,如零样本案例设置、初始和边界条件修改、零样本湍流模型替换、零样本代码转换等。代表性的测试场景涵盖了单相和多相流、传热、RANS、LES和各种工程案例,所有这些都是在有限数量的迭代循环内以低象征性费用解决的。