华为-北大-中科院软件所联合提出双部语法感知领域预训练方法 ,提升XML-SQL代码更新智能化

日期 2025/07/31

华为云PaaS技术创新Lab联合北京大学、中国科学院软件研究所,围绕数据库自动化更新场景,共同提出了“Bipartite-Grammar Aware(BGA)”领域预训练方法,并发布大规模TwinXSQL数据集,在XML-SQL代码自动更新任务上取得进展,成果已被软件工程国际顶级期刊TOSEM 2025接收。

ACM Transactions on Software Engineering and Methodology

行业背景与挑战

企业级开发中,XML-SQL已成为数据库访问、数据集成和配置管理的主流方式。开发者往往需在XML文件中重复维护结构极其相似的SQL片段,带来大量低效、重复性劳动。如何借助预训练大模型实现XML-SQL代码的高效自动生成与智能维护,已成为产业界与学界的共同难题。

然而,现有主流大模型(如CodeT5、PLBART等)主要面向Python、Java等主流语言,对于结构化极强的XML-SQL代码普遍适应性差。具体困境体现在:

        - 领域语法特性明显,通用模型无法精准刻画;

        - 公开XML-SQL代码数据极为稀缺,难以训练专属模型;

        - 企业实际开发中,XML-SQL更新涉及大量“复制-粘贴-微调”,亟需更智能的代码更新支持。

双部语法感知领域预训练方案

上述研究成果《Bipartite-Grammar Aware Pretraining for XML-SQL Code Updating》被TOSEM 2025接收,欢迎大家了解学习,可从 https://dl.acm.org/doi/10.1145/3731752 获取论文,有合作意向欢迎联系 liangguangtai@huawei.com, zhoujianyi2@huawei.com

创新方案:“双部语法感知”领域预训练方法

为解决上述难题,项目组首次提出面向XML-SQL领域的代码自动更新任务,并创新性地设计了“双部语法感知(BGA)”预训练框架。其核心设计包括:

       - 结构-取值双部建模:系统分解XML-SQL代码的“结构成分”(标签、属性、节点)和“取值成分”(表名、字段、参数),分别建模其语法规律;

       - 三类预训练任务:分别对结构扰动、取值扰动与结构-取值链接扰动进行无监督预训练,显著增强模型对XML-SQL语法结构的理解和迁移能力;

       - 语法链接捕捉:通过模拟企业真实开发流程,着重学习结构与取值间的深层“语法链接”,解决通用模型对XML-SQL“水土不服”的难题。

双部语法感知预训练核心设计

数据集与实验结果

团队构建了TwinXSQL大规模数据集,收集自16394个MyBatis企业项目,全面覆盖真实XML-SQL代码块及其演化过程。每组数据包含原始代码、目标代码、代码注释及引用片段,真实还原开发者“复制-修改”流程。TwinXSQL已成为领域首个系统支持XML-SQL代码自动更新的大型基准数据集。 在工程实现上,BGA模型以CodeT5为底座,通过无监督预训练与下游微调相结合,有效突破了领域数据稀缺带来的壁垒,实现了通用模型向企业XML-SQL领域的高效迁移。

TwinXSQL数据集示例

实验系统对比了BGA(XSQLT5)与CodeT5、PLBART、CodeReviewer、CoditT5等同规模主流模型及ChatGPT、GPT-3.5-turbo等大模型的代码更新能力。XSQLT5-base(220M)在Exact Match、BLEU、METEOR、SARI、GLEU等所有主流指标上显著领先,准确率较CodeT5-base提升13.8%。在EM、METEOR、GLEU等指标均达到统计显著性提升(p < 0.05)。 尤其值得关注的是,即使与数十亿参数的ChatGPT等模型对比,BGA专属领域小模型也在EM等关键指标大幅超越,充分证明了领域大模型的必要性与价值。 消融实验进一步验证了结构扰动、取值扰动、链接扰动三大预训练任务的协同关键作用。BGA方法的通用性也已初步验证,可迁移至其他结构嵌套代码(如配置文件、DSL查询等)场景,为企业结构化代码智能演化提供了新思路。

总结与展望

本项工作率先提出XML-SQL代码自动更新任务及“双部语法感知”领域预训练新范式,有效解决了数据稀缺与领域迁移的痛点,显著提升了企业级XML-SQL代码的智能维护水平。相关方法和数据集有望拓展至更多结构化代码自动化场景,助力软件工程智能化升级。

PaaS技术创新Lab隶属于华为云,致力于综合利用软件分析、数据挖掘、机器学习等技术,为软件研发人员提供最先进的核心引擎和智慧大脑,聚焦软件工程、软件安全领域的硬核能力,并持续为华为云相关产品孵化并交付高价值商业特性核心技术!

有合作意向欢迎联系 liangguangtai@huawei.com, zhoujianyi2@huawei.com。