论文

CGFuse:通过深层图—语言融合生成结构感知代码

Deep Graph-Language Fusion for Structure-Aware Code Generation

模型架构混合架构

摘要

预训练语言模型 (PLM) 有潜力改变软件开发任务。然而,尽管取得了重大进展,当前的 PLM 仍难以捕获代码的结构化和关系属性,例如控制流和数据依赖性。这种限制的根源在于架构不匹配:虽然代码结构最好由图形表示,但基于 Transformer 的 LLM 将输入处理作为顺序词元模式,因此缺乏明确的结构意识。虽然最近的研究已经探索使用图形特征提取、检索增强生成和提示工程等技术来集成基于图形的代码表示,但现有方法在密集特征提取或提示编码过程中会遭受信息丢失的问题;值得注意的是,模型内部图特征深度 词元级 融合的潜力尚未得到系统探索。在本文中,我们通过引入 CGFuse 来启动这样的探索,CGFuse 是一种新颖的框架,通过将学习到的图特征直接注入到预训练语言模型的中间层,可以实现图派生表示的 词元级 集成。 CGFuse 将图神经网络 (GNN) 与语言模型相结合,以显式保留和利用代码图中的细粒度结构信息,包括抽象语法树和数据流图。我们系统地评估了多个 LLM 的 CGFuse,证明代码生成性能的 BLEU 提高了 10-16%,CodeBLEU 提高了 6-11%。这些结果凸显了深度图 PLM 集成的潜力,可推动该领域迈向更稳健、更有能力的人工智能驱动软件开发。