大数跨境
0
0

高效、灵活、功能齐全的大型模型微调工具包

高效、灵活、功能齐全的大型模型微调工具包 GitHubTopp
2024-04-23
2
导读:XTuner 是一个高效、灵活且功能齐全的工具包,用于微调大型模型。


XTuner 是一个高效、灵活且功能齐全的工具包,用于微调大型模型。

源代码

http://www.gitpp.com/snakefamer/xtuner

功能齐全

  • 支持持续预训练、指令微调、代理微调。

  • 支持使用预定义模板与大模型聊天。

  • 输出模型可以与部署和服务器工具包(LMDeploy)以及大规模评估工具包(OpenCompassVLMEvalKit)无缝集成。

高效的

  • 支持几乎所有GPU上的LLM、VLM预训练/微调。XTuner能够在单个8GB GPU上微调7B LLM,以及超过70B的模型的多节点微调。

  • 自动调度 FlashAttention 和 Triton 内核等高性能算子,以提高训练吞吐量。

  • 兼容DeepSpeed 🚀,轻松利用多种 ZeRO 优化技术。

灵活的

  • 支持各种LLM(InternLMMixtral-8x7BLlama 2ChatGLMQwenBaichuan,...)。

  • 支持VLM(LLaVA)。LLaVA-InternLM2-20B的性能非常出色。

  • 精心设计的数据管道,可容纳任何格式的数据集,包括但不限于开源和自定义格式。

  • 支持多种训练算法(QLoRALoRA、全参数fune-tune),让用户可以根据自己的需求选择最合适的解决方案。


XTuner是一个开源项目,专为高效、灵活且功能齐全的大型模型微调而设计。以下是关于XTuner的详细介绍及其价值所在:

XTuner介绍

XTuner是一个由MMRazor和MMDeploy联合开发的微调工具箱,它以配置文件的形式封装了大部分微调场景,使得非专业人员也能轻松进行微调操作。这个工具箱支持多种微调策略,包括增量预训练和指令跟随微调,以满足不同场景下的需求。

XTuner支持多种大模型,如InternLM、Llama/Llama2、ChatGLM2/ChatGLM3等,并提供了全参、LoRA、QLoRA三种微调方式。其中,QLoRA是LoRA微调的改进版。此外,XTuner还集成了DeepSpeed ZeRO优化策略,通过降低显存开销来提高训练效率。

为了支持超长上下文训练,XTuner还开发了一套超长上下文训练解决方案。这套方案支持全量训练超过百万个tokens的序列,以及“千亿级参数”模型。通过序列并行和扩展ZeRO3能力边界,XTuner实现了对超长序列训练的支持。

XTuner的价值

  1. 易用性和可访问性:XTuner通过配置文件的形式封装了大部分微调场景,使得0基础的非专业人员也能进行微调操作。这大大降低了大型模型微调的门槛,提高了易用性和可访问性。

  2. 多样化的微调策略:XTuner支持增量预训练和指令跟随微调等多种微调策略,以满足不同场景下的需求。这使得用户能够根据实际应用场景灵活选择合适的微调方式。

  3. 广泛的模型支持:XTuner支持多种主流的大型模型,如InternLM、Llama/Llama2等,这使得用户能够轻松地对这些模型进行微调,以满足特定的应用需求。

  4. 高效的显存优化:XTuner集成了DeepSpeed ZeRO优化策略,通过降低显存开销来提高训练效率。这使得在有限的硬件资源下能够更高效地进行模型微调。

  5. 支持超长上下文训练:XTuner的超长上下文训练解决方案为用户提供了更大的灵活性,支持训练超过百万个tokens的序列和千亿级参数的模型。这对于需要处理长序列和复杂任务的应用场景具有重要意义。

综上所述,XTuner作为一个开源项目,不仅提供了高效、灵活且功能齐全的微调工具包,还通过降低门槛、提供多样化的微调策略、广泛的模型支持、高效的显存优化以及支持超长上下文训练等方面的优势,为用户带来了极大的便利和价值。



XTuner 是一个高效、灵活且功能齐全的工具包,用于微调大型模型。

源代码

http://www.gitpp.com/snakefamer/xtuner


【声明】内容源于网络
0
0
GitHubTopp
top开源系统分享
内容 334
粉丝 0
GitHubTopp top开源系统分享
总阅读0
粉丝0
内容334