论文

LeGo-Code:模块化课程学习能否推进复杂代码生成?来自 Text-to-SQL 的洞见

LeGo-Code: Can Modular Curriculum Learning Advance Complex Code Generation? Insights from Text-to-SQL

模型训练监督微调与指令调优

摘要

近年来,面向代码的大语言模型(LLM)在将自然语言翻译为可执行代码方面展现出强大能力。Text-to-SQL 是这一能力的重要应用,让非技术用户能用自然语言与关系数据库交互。然而,最先进的模型仍难以处理高度复杂的逻辑,尤其是涉及多重连接与条件的深层嵌套语句,也难以应对嘈杂或结构不良的真实数据库模式。本文研究课程学习能否提升基于代码的 LLM 在 Text-to-SQL 任务上的性能。利用 Spider 与 BIRD 等基准,我们在不同课程策略下对模型进行微调。实验表明,朴素课程——仅在单个轮次内按复杂度排序训练样本——由于灾难性遗忘而未能超越标准微调。为克服这一问题,我们提出模块化适配器组合(MAC)策略。通过在递增的复杂度层级(Easy 到 Extra-Hard)上依次训练层级专属的适配器,我们创建了脚手架式学习环境,改进了复杂查询上的性能。我们的方法不仅在 Spider 与 BIRD 基准上带来可衡量的性能提升,还提供了灵活的“乐高式”架构,可依据具体的模式难度需求来组合与部署模型。这些发现表明,对于掌握复杂代码生成的语法与逻辑,结构化、模块化的学习是优于整体式微调的选择。

LeGo-Code:模块化课程学习能否推进复杂代码生成?来自 Text-to-SQL 的洞见:论文配图
图1:多适配器课程微调示意:LeGo-Code按模块化课程分阶段训练适配器,以Text-to-SQL检验其能否推进复杂代码生成。