13 天前

MoTCoder:通过思维模块化提升大型语言模型在复杂编程任务中的表现

Jingyao Li, Pengguang Chen, Bin Xia, Hong Xu, Jiaya Jia
MoTCoder:通过思维模块化提升大型语言模型在复杂编程任务中的表现
摘要

大型语言模型(Large Language Models, LLMs)在处理简单编程任务时展现出令人瞩目的能力。然而,当面对更具挑战性的编程问题时,其性能往往显著下降。我们观察到,传统模型通常生成单一的、整体式的代码块,这种模式限制了其在复杂问题求解中的有效性。为克服这一局限,我们提出了模块化思维编码器(Module-of-Thought Coder, MoTCoder)。该方法引入了一种面向模块化思维(MoT)的指令微调框架,旨在引导模型将复杂任务分解为逻辑清晰的子任务与子模块。实验结果表明,通过有意识地构建与利用子模块,MoTCoder 显著提升了生成代码的模块化程度与正确性,在 APPS 数据集上实现了 5.9% 的 pass@1 性能提升,在 CodeContests 数据集上实现了 5.8% 的提升。此外,MoTCoder 在自我纠错能力方面也取得显著进展,超越当前最先进(SOTA)方法达 3.3%。我们进一步分析了问题复杂度与最优模块分解之间的关系,并评估了代码可维护性指数,结果表明 MoTCoder 生成的代码更易于理解与修改,对长期代码维护与演化具有重要价值。相关代码已开源,地址为:https://github.com/dvlab-research/MoTCoder。