MFTCoder: 一个高效准确的代码大语言模型多任务微调框架

RayRay
MFTCoder多任务微调代码大语言模型CodeFuseHumanEvalGithub开源项目

MFTCoder: 推动代码大语言模型性能的多任务微调利器

在人工智能和大语言模型快速发展的今天,代码智能生成和理解已经成为一个重要的研究方向。为了进一步提升代码大语言模型的性能,蚂蚁集团AI Native团队开发了MFTCoder多任务微调框架,并将其开源,为整个AI社区带来了宝贵的技术贡献。

MFTCoder的核心优势

MFTcoder作为一个专注于代码大语言模型的多任务微调框架,具有以下几个突出特点:

  1. 多任务学习: MFTCoder支持在多个任务上同时进行微调,有效平衡不同任务间的学习,甚至可以泛化到全新的未见任务。这种方法充分利用了不同编程任务之间的内在联系,提高了模型的通用性和鲁棒性。

  2. 多模型支持: 该框架集成了多个主流的开源大语言模型,如CodeLlama、Qwen、StarCoder等。这种广泛的兼容性使得研究人员可以方便地在不同模型上进行实验和比较。

  3. 高效微调: MFTCoder支持LoRA、QLoRA等高效参数微调技术,以及全参数微调。这使得即使在有限的计算资源下,也能对大型模型进行有效的微调。

  4. 多框架支持: 框架同时支持Accelerate(配合DeepSpeed和FSDP)以及ATorch,为用户提供了灵活的训练选择。

MFTCoder框架图

突破性的性能表现

通过MFTCoder的微调,研究团队在多个基准测试上取得了令人瞩目的成绩。以HumanEval为例,多个基于MFTCoder微调的模型展现出色的表现:

  • CodeFuse-DeepSeek-33B: 在HumanEval上达到78.7%的pass@1分数(2024年1月)
  • CodeFuse-CodeLlama-34B: 达到74.4%的pass@1分数(2023年9月)
  • CodeFuse-StarCoder2-15B: 达到73.2%的pass@1分数(2023年5月)

这些成绩不仅超越了许多同规模的模型,甚至在某些指标上超过了GPT-4等更大规模的模型。

开源共享,推动技术进步

MFTCoder项目的一个重要特点是其开源性质。研究团队不仅开源了框架本身,还发布了多个经过微调的代码大语言模型,以及高质量的代码相关指令数据集。这种开放共享的态度,极大地促进了整个AI社区在代码智能领域的研究和应用。

开源的模型包括:

  • CodeFuse-DeepSeek-33B
  • CodeFuse-Mixtral-8x7B
  • CodeFuse-CodeLlama-34B
  • CodeFuse-StarCoder-15B
  • CodeFuse-QWen-14B等

开源的数据集包括:

  • Evol-instruction-66k: 一个高质量的代码指令数据集
  • CodeExercise-Python-27k: Python代码练习指令数据集

这些资源的开放极大地降低了其他研究者和开发者进入这一领域的门槛,推动了整个社区的技术进步。

持续发展与未来展望

MFTCoder项目正在持续快速发展中。最新版本(v0.4)引入了QLoRA + DeepSpeed Zero3和QLoRA + FSDP等新特性,支持了更多新模型如Qwen2、Qwen2-MoE、Starcoder2、Gemma等。这些更新进一步提升了框架的性能和灵活性。

同时,项目团队也在积极探索新的研究方向,如解决多任务学习中的数据不平衡、任务难度差异和收敛速度不一致等问题。这些努力将进一步推动代码大语言模型的性能边界。

结语

MFTCoder的出现和持续发展,为代码大语言模型的研究和应用带来了新的可能。通过多任务微调,我们看到了模型性能的显著提升。这不仅有助于提高软件开发的效率,还可能在代码理解、程序修复等多个方面产生深远影响。

随着更多研究者和开发者参与到这个开源项目中来,我们可以期待看到更多创新性的应用和突破。MFTCoder正在成为推动代码智能化的重要力量,为AI赋能软件开发开辟了广阔的前景。

MFTCoder GitHub仓库

编辑推荐精选

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

TRELLIS

TRELLIS

用于可扩展和多功能 3D 生成的结构化 3D 潜在表示

TRELLIS 是一个专注于 3D 生成的项目,它利用结构化 3D 潜在表示技术,实现了可扩展且多功能的 3D 生成。项目提供了多种 3D 生成的方法和工具,包括文本到 3D、图像到 3D 等,并且支持多种输出格式,如 3D 高斯、辐射场和网格等。通过 TRELLIS,用户可以根据文本描述或图像输入快速生成高质量的 3D 资产,适用于游戏开发、动画制作、虚拟现实等多个领域。

ai-agents-for-beginners

ai-agents-for-beginners

10 节课教你开启构建 AI 代理所需的一切知识

AI Agents for Beginners 是一个专为初学者打造的课程项目,提供 10 节课程,涵盖构建 AI 代理的必备知识,支持多种语言,包含规划设计、工具使用、多代理等丰富内容,助您快速入门 AI 代理领域。

AEE

AEE

AI Excel全自动制表工具

AEE 在线 AI 全自动 Excel 编辑器,提供智能录入、自动公式、数据整理、图表生成等功能,高效处理 Excel 任务,提升办公效率。支持自动高亮数据、批量计算、不规则数据录入,适用于企业、教育、金融等多场景。

下拉加载更多