4. 工程领域大语言模型基础
要让大语言模型在工程问答中“答得准、答得稳、答得可追溯”,需要先理解它的三层能力来源:Transformer 架构决定模型如何组织上下文与生成答案,预训练与微调决定模型具备多少通用知识与工程领域知识,提示工程决定在具体一次问答中如何把工程问题、约束条件和输出格式准确传达给模型。三者不是并列关系,而是从底层结构到领域适配再到任务调用的递进关系。
一、Transformer 架构:工程问答的“上下文组织器”
Transformer 的核心是自注意力机制。对工程问答而言,最需要关注的是它如何把问题中的多个条件关联起来。例如用户提问:“C30 混凝土、梁截面 300×600、跨度 6m、按简支梁计算,跨中最大弯矩设计值是多少?”模型需要同时关注材料等级、截面尺寸、跨度、支座条件和计算目标,而不是只匹配“弯矩”这个词。自注意力让每个词元都能参考上下文中其他词元,从而建立这种多条件关联。
工程问答中常出现长文档、规范条文、图纸说明和计算书,因此上下文窗口长度直接影响可用信息量。若把整本规范直接塞入上下文,不仅成本高,还会引入大量无关条文,干扰模型判断。更合理的做法是:先检索与问题最相关的条文、公式和参数,再按“问题—条件—依据—计算—结论”的顺序组织上下文。位置编码则帮助模型区分条文顺序和公式中的前后关系,避免把“设计值”与“标准值”混淆。
此外,Transformer 的生成是逐词预测,不是数据库查询。这意味着模型可能生成看似合理但实际错误的公式或参数。工程问答必须通过外部检索、计算校验和引用来源来约束生成结果,不能把模型输出直接当作最终设计依据。
二、预训练与微调:从通用语言能力到工程领域能力
预训练让模型学会语言规律、常识和部分通用知识,但它并不天然掌握工程规范中的大量专业表达。例如“HRB400 钢筋的抗拉强度设计值”在通用语料中出现频率远低于日常用语,模型可能给出近似但不准确的数值。因此,工程领域通常需要领域继续预训练或指令微调。
领域继续预训练是在通用模型基础上,用工程规范、设计手册、施工方案、技术交底、论文和标准图集等语料继续训练,使模型熟悉“荷载组合”“承载力极限状态”“构造柱”“后浇带”等术语的搭配与上下文。指令微调则是用“问题—答案”对训练模型遵循工程问答格式,例如要求它先列已知条件、再写公式、再代入计算、最后给出结论和依据。若采用参数高效微调(如 LoRA),可在较小显存下完成领域适配,适合企业自建知识库场景。
需要强调的是,微调不能替代检索。规范会更新,项目参数会变化,微调后的模型仍可能“记住旧值”。更稳妥的架构是:微调负责语言风格与领域表达,检索负责事实与条文,计算工具负责数值结果。三者分工明确,才能降低工程问答的幻觉风险。
三、提示工程在工程问答中的适配策略
提示工程不是“把问题写长”,而是把工程任务的结构显式化。一个有效的工程问答提示通常包含五类信息:角色与边界、已知条件、求解目标、计算与引用要求、输出格式。例如:
角色:你是结构设计辅助助手,不替代注册工程师签章。
已知:C30混凝土,梁截面300×600mm,跨度6m,简支梁,均布荷载设计值q=20kN/m。
目标:计算跨中最大弯矩设计值。
要求:写出公式、代入过程、单位;引用GB 50010相关条款;若条件不足,先列出缺失参数。
输出:分点列出“条件—公式—代入—结果—依据”。
这种提示把“模型自由发挥”压缩为“按工程计算流程输出”。对于多轮问答,还应要求模型在每轮中复述关键参数,避免上下文漂移。若问题涉及多个专业,如“基坑降水对周边管线沉降的影响”,提示中应明确专业边界和需要引用的规范,避免模型把岩土、结构和市政管线要求混在一起。
四、工程问答的适配检查清单
| 检查项 | 合格表现 | 常见问题 |
|---|---|---|
| 条件完整性 | 截面、材料、跨度、荷载、支座条件齐全 | 缺少荷载类型或支座条件,直接给结果 |
| 公式与单位 | 写出公式并逐项代入,单位一致 | 只给数值,不写单位或量纲混乱 |
| 规范引用 | 引用具体标准编号和条款 | 笼统说“按规范”,无法追溯 |
| 不确定性处理 | 条件不足时列出缺失参数并暂停计算 | 自行假设参数,未声明假设 |
| 安全边界 | 声明辅助性质,需人工复核签章 | 直接输出“可用于施工”的结论 |
综合来看,工程领域大语言模型的应用不是单一技术点,而是一条从架构理解、领域适配到提示约束的完整链路。Transformer 提供上下文关联能力,预训练与微调注入工程语言习惯,提示工程把工程任务转化为可复核的输出结构,检索与计算工具则守住事实与数值底线。只有把这条链路配合好,工程问答才可能从“像专家说话”走向“按工程逻辑可靠作答”。