LeGo-Code: Can Modular Curriculum Learning Advance Complex Code Generation? Insights from Text-to-SQL
作者: Salmane Chafik, Saad Ezzini, Ismail Berrada
分类: cs.AI, cs.DB, cs.SE
发布日期: 2026-04-20
备注: 7 pages, 3 figures, 4 tables
💡 一句话要点
提出模块化课程学习方法LeGo-Code,提升LLM在Text-to-SQL复杂代码生成任务上的性能。
🎯 匹配领域: 支柱二:RL算法与架构 (RL & Architecture) 支柱九:具身大模型 (Embodied Foundation Models)
关键词: Text-to-SQL 代码生成 课程学习 大型语言模型 模块化学习
📋 核心要点
- 现有Text-to-SQL模型在处理复杂逻辑(如深度嵌套语句和多重连接)以及噪声数据库模式时面临挑战。
- 论文提出模块化适配器组合(MAC)策略,通过课程学习,逐步提升模型处理复杂查询的能力。
- 实验表明,MAC策略在Spider和BIRD基准上取得了性能提升,并提供了一种灵活的模型组合方式。
📝 摘要(中文)
近年来,面向代码的大型语言模型(LLMs)在将自然语言翻译成可执行代码方面表现出强大的能力。Text-to-SQL是这项能力的重要应用,它使非技术用户能够使用自然语言与关系数据库进行交互。然而,最先进的模型仍然难以处理高度复杂的逻辑,特别是涉及多个连接和条件的深度嵌套语句,以及具有噪声或结构不良的真实世界数据库模式。在本文中,我们研究了课程学习是否可以提高基于代码的LLM在Text-to-SQL任务上的性能。我们使用包括Spider和BIRD在内的基准,在不同的课程策略下对模型进行微调。我们的实验表明,简单的课程学习,即仅按复杂性对训练样本进行排序,无法超越标准微调,因为存在灾难性遗忘。为了克服这个问题,我们提出了一种模块化适配器组合(MAC)策略。通过在递增的复杂性级别(从易到超难)上顺序训练特定层的适配器,我们创建了一个支架式学习环境,从而提高了复杂查询的性能。我们的方法不仅在Spider和BIRD基准上产生了可衡量的性能提升,而且还提供了一种灵活的“乐高式”架构,允许根据特定的模式难度要求来组合和部署模型。这些发现表明,对于掌握复杂代码生成的语法和逻辑,结构化的模块化学习是优于整体微调的。
🔬 方法详解
问题定义:论文旨在解决Text-to-SQL任务中,现有大型语言模型在处理复杂查询时性能不足的问题。具体来说,模型难以处理包含深度嵌套、多表连接以及复杂条件的SQL语句,并且容易受到数据库模式噪声的影响。现有的微调方法通常采用整体式训练,难以有效学习复杂逻辑,并且容易发生灾难性遗忘。
核心思路:论文的核心思路是采用课程学习的思想,将训练数据按照SQL语句的复杂程度进行排序,并逐步训练模型。为了避免灾难性遗忘,论文提出了模块化适配器组合(MAC)策略,为每个复杂程度的SQL语句训练一个特定的适配器。这样,模型可以通过组合不同的适配器来处理不同复杂度的查询。
技术框架:整体框架包括以下几个阶段:1) 数据准备:将训练数据按照SQL语句的复杂程度进行排序,划分为不同的难度等级(例如,Easy, Medium, Hard, Extra-Hard)。2) 适配器训练:为每个难度等级训练一个特定的适配器。适配器通常是小型神经网络,可以插入到预训练语言模型的特定层中。3) 适配器组合:在推理阶段,根据输入SQL语句的复杂程度,选择合适的适配器进行组合,从而生成最终的SQL代码。
关键创新:论文的关键创新在于提出了模块化适配器组合(MAC)策略。与传统的整体式微调方法相比,MAC策略可以更好地学习复杂逻辑,并且避免了灾难性遗忘。此外,MAC策略还提供了一种灵活的模型组合方式,可以根据不同的应用场景选择合适的适配器。
关键设计:在适配器训练阶段,论文采用了特定的损失函数来优化适配器的参数。例如,可以使用交叉熵损失函数来衡量生成SQL代码与真实SQL代码之间的差异。此外,论文还探索了不同的适配器结构和训练策略,例如,可以使用不同的神经网络层作为适配器,并采用不同的优化算法进行训练。
🖼️ 关键图片
📊 实验亮点
实验结果表明,提出的MAC策略在Spider和BIRD基准上取得了显著的性能提升。与传统的微调方法相比,MAC策略在复杂查询上的性能提升尤为明显。此外,实验还验证了MAC策略的灵活性,可以通过组合不同的适配器来适应不同的应用场景。
🎯 应用场景
该研究成果可应用于智能数据库交互、自然语言查询系统等领域,使得非技术人员可以通过自然语言更方便地访问和操作数据库。未来,该方法可以扩展到其他代码生成任务,例如将自然语言翻译成Python代码或Java代码,从而降低软件开发的门槛。
📄 摘要(原文)
Recently, code-oriented large language models (LLMs) have demonstrated strong capabilities in translating natural language into executable code. Text-to-SQL is a significant application of this ability, enabling non-technical users to interact with relational databases using natural language. However, state-of-the-art models continue to struggle with highly complex logic, particularly deeply nested statements involving multiple joins and conditions, as well as with real-world database schemas that are noisy or poorly structured. In this paper, we investigate whether curriculum learning can improve the performance of code-based LLMs on Text-to-SQL tasks. Employing benchmarks including Spider and BIRD, we fine-tune models under different curriculum strategies. Our experiments show that naive curriculum, simply ordering training samples by complexity in a single epoch, fails to surpass standard fine-tuning due to catastrophic forgetting. To overcome this, we propose a Modular Adapter Composition (MAC) strategy. By sequentially training tier-specific adapters on incremental complexity levels (Easy to Extra-Hard), we create a scaffolded learning environment that improves performance on complex queries. Our approach not only produces measurable performance gains on the Spider and BIRD benchmarks but also provides a flexible, "Lego-like" architecture, allowing models to be composed and deployed based on specific schema difficulty requirements. These findings demonstrate that structured, modular learning is a superior alternative to monolithic fine-tuning for mastering the syntax and logic of complex code generation.