XTuner

XTuner

XTuner是上海人工智能实验室大模型中心推出的大模型训练与微调开源工具链,最初于2023年8月发布,定位为高效、灵活、全能的轻量化大模型微调工具库[1]。它支持大语言模型与多模态图文模型的预训练和微调,可在单张8GB显存显卡上微调7B规模模型,也支持多节点微调70B以上规模的模型。2025年9月8日,上海人工智能实验室开源了面向超大规模混合专家模型的新一代训练引擎XTuner V1[2]。

目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

XTuner是上海人工智能实验室大模型中心推出的开源大模型训练与微调工具链,包含面向常规微调场景的工具库和面向超大规模混合专家模型的新一代训练引擎两条技术路线[3]。按官方定位,它是一套高效、灵活、全能的大模型微调工具库,覆盖大语言模型与多模态图文模型的预训练及轻量级微调。其更早的版本以「高效微调大语言模型的工具箱」为名对外发布[1]。

该项目采用 Apache License 2.0 开源许可证发布,允许他人使用、修改与分发[1]。项目代码托管在开源平台上,同时提供基于 pip 的安装方式和内置的配置模板,用户无需从零编写训练脚本即可启动训练任务。

原理

在常规微调场景中,XTuner通过多种参数高效微调算法降低显存需求[1]。全量参数微调会更新模型全部权重,LoRA 在原有权重旁附加低秩矩阵并只训练这部分新增参数,QLoRA 则在 LoRA 的基础上将基础模型量化到较低精度,因此显存占用进一步下降。训练时工具会自动分发 FlashAttention、Triton 等高性能算子,并兼容 DeepSpeed 的 ZeRO-1、ZeRO-2、ZeRO-3 等优化策略[1]。

XTuner V1 训练引擎基于 PyTorch FSDP(完全分片数据并行)开发,参数被均匀切分到各张加速卡上,计算第 i 层时提前聚合第 i+1 层所需的参数,从而降低单卡显存占用[2]。该模式的代价是通信量增大,当每层计算耗时低于通信耗时时会形成计算空泡。XTuner V1 通过极致显存优化提升单次迭代可承载的序列长度,使每层计算耗时变长,从而掩盖参数聚合的通信开销[2]。

显存优化方面,针对计算损失函数时产生的计算图,XTuner V1 参考 Liger-Kernel 的 Chunk-wise Loss 并扩展支持更多损失函数,同时借鉴昇腾 MindSpeed 的 Async Checkpointing Swap,在每一层前向计算开始时把重计算所需的激活值从设备侧搬运到主机侧释放显存[2]。负载均衡方面,由于未引入张量并行与流水并行,相同卡数下数据并行维度更大,引擎会对每若干步内已拼接的序列排序,使各数据并行组的最长子序列长度接近,减小变长注意力带来的计算空泡[2]。

发展历程

2023 年 8 月,XTuner 首次发布,并在模型托管平台上传了多个微调适配器[1]。此后项目按模型支持范围持续迭代:2023 年 9 月支持 InternLM-20B 与 Baichuan2,11 月支持 ChatGLM3-6B,12 月支持 Mixtral 8x7B 以及基于 LLaVA-v1.5 架构的多模态预训练与微调[1]。

2024 年 1 月,XTuner 支持 InternLM2 与 DeepSeek-MoE,官方称 20GB 显存即可完成 QLoRA 微调,4 张 80GB 显卡可用于全量参数微调[1]。同年 2 月支持 Gemma 与 Qwen1.5,4 月支持 Llama 3 并引入序列并行以支持极长序列训练[1]。

2025 年 9 月 8 日,上海人工智能实验室开源书生大模型新一代训练引擎 XTuner V1[2]。该版本面向超大规模混合专家模型设计,可支持 1T 参数量级的 MoE 模型训练,官方称其首次在 200B 以上量级的 MoE 模型上实现训练吞吐超越传统 3D 并行方案[4]。同期开源的还有书生大模型研发中使用的 AIOps 工具 DeepTrace 与 ClusterX[2]。

应用

XTuner面向大模型的增量预训练、指令微调与智能体微调等任务,训练产物可以接入部署工具与评测工具链。官方提供大量开箱即用的配置文件,用户可通过命令行查看、复制并修改配置,再以单卡或多卡方式启动训练,训练结束后可将保存的权重转换为通用格式。工具还内置了与模型对话的命令行程序,便于验证微调效果。

在支持模型范围上,工具库涵盖 InternLM、Mixtral-8x7B、Llama 2、ChatGLM、Qwen、Baichuan 等大语言模型,以及 LLaVA 系列多模态模型[1]。XTuner V1 训练引擎则覆盖 Intern-S1、InternVL、Qwen3 稠密与 MoE 版本、GPT-OSS、DeepSeek-V3、Kimi K2 等模型,并已在 GPU 与昇腾 NPU 上做适配[5]。其算法套件已实现多模态预训练、多模态监督微调与 GRPO 强化学习算法,混合偏好优化、动态采样策略优化与多轮智能体强化学习尚在规划中[5]。

在昇腾384超节点上,研究团队与昇腾团队联合优化,官方称相较业界其他产品训练吞吐提升 5% 以上,模型浮点运算利用率提升 20% 以上[2]。针对 MoE 后训练需求,XTuner V1 在不使用序列并行的情况下可实现 200B 量级 MoE 模型单次前向与反向传播处理 64k 序列长度,大规模长短序列混合训练场景提速 2 倍以上[4]。

局限

XTuner V1 选择以 PyTorch FSDP 为基础并针对其通信量大的缺陷做优化,而不是采用通信量更小的 3D 并行方案,因此其性能表现依赖硬件互联带宽与显存优化程度;官方亦说明,3D 并行方案虽然使用复杂,但通信量更小,尤其适合 MoE 模型训练[2]。

在算法与生态支持范围上,XTuner V1 的混合偏好优化、动态采样策略优化与多轮智能体强化学习等功能当时仍处于规划阶段,尚未实现[5]。推理引擎集成方面,官方文档列出其已完成对 LMDeploy 的对接,而 vLLM 与 SGLang 当时未被支持[5]。此外,部分模型在 NPU 上的支持尚未完成,文档显示 GPT-OSS、DeepSeek-V3、Kimi K2 等模型的 NPU 支持标注为待支持状态[5]。

早期版本的微调能力也受硬件条件约束,官方给出的 8GB 显存微调 7B 模型属于低比特量化微调场景,全量参数微调仍需显著更多的显存与多卡资源。

参见

  • PyTorch —— XTuner V1 训练引擎所基于的深度学习框架,其 FSDP 分片数据并行机制是引擎优化的核心对象。

  • DeepSpeed —— XTuner 兼容的分布式训练优化库,提供 ZeRO 系列显存优化策略。

  • 混合专家模型 —— XTuner V1 重点面向的超大规模稀疏模型架构。

  • LoRA —— XTuner 支持的一种低秩适配微调算法。

  • InternLM —— 上海人工智能实验室推出的书生大模型系列,XTuner 以其为主要支持对象之一。

  • LMDeploy —— 与 XTuner 同属书生大模型工具链的推理部署工具。

参考资料

  1. pypi.org 上的网页 . pypi.org [引用日期2026-10-08]
  2. 新一代超大模型训练引擎XTuner V1开源,昇腾384超节点训练效率突破上限! . hiascend.com [引用日期2026-10-08]
  3. 上海人工智能实验室大模型中心加入AI Infra工作组,共建开源生态新篇章 . ccf.org.cn [引用日期2026-10-08]
  4. 上海 AI 实验室开源 XTuner V1 训练引擎 . oschina.net [引用日期2026-10-08]
  5. 欢迎来到 XTuner V1 的中文文档 . readthedocs.io [引用日期2026-10-08]
词条评价
词条统计

浏览次数:4 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-10-08T11:28:05Z

历史版本

完成率 = 阅读完成量 ÷ 阅读量,分母是阅读量不是浏览次数 —— 关了 JS 的、秒退的都在浏览次数里、不在阅读量里。 详细口径在后台的「数据统计」页。

本条目引用的词条
DeepSpeed PyTorch PyTorch DeepSpeed 混合专家模型 LoRA InternLM LMDeploy
红色的还不存在。红链不是错误——它标出"这个概念被引用了但还没人写"。