训练、微调与数据3748 字

LLaMA Factory基于DeepSpeed加速训练模型

·全库 281 / 611

《LLaMA Factory基于DeepSpeed加速训练模型》共 0.4 万字,通篇围绕 微调、GPU、Docker、预训练 展开,归在「训练、微调与数据」这一层。

覆盖微调GPUDocker预训练数据集需求

适合要自己训模型、或者判断这一版该不该训的人

目录骨架(8 节)
  1. LLaMA Factory 介绍
  2. LLaMA Factory 核心功能
  3. LLaMA Factory 特点
  4. LLaMA Factory 使用场景
  5. 微调的过程
  6. 微调的优势
  7. 安装 LLaMA Factory
  8. 数据准备
目录 · 7 节

示例代码

📎 附件:llamafactory-ds.zip(zip, 20KB)

原文链接:https://www.yuque.com/attachments/yuque/0/2025/zip/2424104/1749261173800-e844ac12-6f88-44f9-9033-c24a1b5d408d.zip

前言

随着人工智能技术的飞速发展,大型语言模型(LLM)在自然语言处理(NLP)领域扮演着越来越重要的角色。然而,预训练的模型往往需要针对特定任务进行微调,以提高其在特定领域的性能。因为预训练模型是在大量数据上训练得到的,它已经学习到了语言的基本规律和丰富的特征表示。然而,这些模型可能并不直接适用于特定的任务或领域,因为它们可能缺乏对特定领域知识的理解和适应性。

LLaMA Factory 介绍

image.png

项目地址:https://github.com/hiyouga/LLaMA-Factory/blob/main/README_zh.md

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。致力于简化大型的定制过程。它集成了多种训练策略和监控工具,提供了命令行和 WebUI 等多种交互方式,大幅降了模型微调的技术门槛。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调,框架特性包括:

  • 模型种类:LLaMA、LLaVA、Mistral、Mixtral-MoE、Qwen、Yi、Gemma、Baichuan、ChatGLM、Phi 等等。
  • 训练算法:(增量)预训练、(多模态)指令监督微调、奖励模型训练、PPO 训练、DPO 训练、KTO 训练、ORPO 训练等等。
  • 运算精度:16 比特全参数微调、冻结微调、LoRA 微调和基于 AQLM/AWQ/GPTQ/LLM.int8/HQQ/EETQ 的 2/3/4/5/6/8 比特 QLoRA 微调。
  • 优化算法:GaLore、BAdam、DoRA、LongLoRA、LLaMA Pro、Mixture-of-Depths、LoRA+、LoftQ 和 PiSSA。
  • 加速算子:FlashAttention-2 和 Unsloth。
  • 推理引擎:Transformers 和 vLLM。
  • 实验监控:LlamaBoard、TensorBoard、Wandb、MLflow、SwanLab 等等。

LLaMA Factory 核心功能

  • 多模型兼容:支持包括 LLama、Mistral、Falcon 在内的多种大型语言模型。
  • 训练方法多样:涵盖全参数微调及 LoRA 等先进的微调技术。
  • 用户界面友好:LLama Board 提供了一个直观的 Web 界面,使用户能够轻松调整模型设置。
  • 监控工具集成:与 TensorBoard 等工具集成,便于监控和分析训练过程。

LLaMA Factory 特点

  • 易用性:简化了机器学习算法的复杂性,通过图形界面即可控制模型微调。
  • 微调效率:支持 DPO、ORPO、PPO 和 SFT 等技术,提升了模型微调的效率和效果。
  • 参数调整灵活性:用户可根据需求轻松调整模型参数,如 dropout 率、epochs 等。
  • 多语言支持:界面支持英语、俄语和中文,面向全球用户提供服务。

LLaMA Factory 使用场景

LLaMA-Factory 适用于广泛的 NLP 任务,包括但不限于:

  • 文本分类:实现情感分析、主题识别等功能。
  • 序列标注:如 NER、词性标注等任务。
  • 文本生成:自动生成文本摘要、对话等。
  • 机器翻译:优化特定语言对的翻译质量。

LLaMA-Factory 通过其强大的功能和易用性,助力用户在自然语言处理领域快速实现模型的定制和优化。

微调的过程

模型微调通过在特定任务的数据集上继续训练预训练模型来进行,使得模型能够学习到与任务相关的特定特征和知识。这个过程通常涉及到模型权重的微幅调整,而不是从头开始训练一个全新的模型。

微调过程主要包括以下几个步骤:

  1. 数据准备:收集和准备特定任务的数据集。
  2. 模型选择:选择一个预训练模型作为基础模型。
  3. 迁移学习:在新数据集上继续训练模型,同时保留预训练模型的知识。
  4. 参数调整:根据需要调整模型的参数,如学习率、批大小等。
  5. 模型评估:在验证集上评估模型的性能,并根据反馈进行调整。

资料里没有你的场景?

把你手上的数据和想解决的那个环节发上来,我们按具体情况回,不复述方法论。

发布需求