【大模型开源实战】10 分钟,教你如何用 LLama-Factory 训练和微调大模型

在这里插入图片描述
在这个AI快速发展的时代,我们很高兴为大家带来LlamaFactory - 一个为AI开发者和爱好者量身打造的实用工具平台。作为非计算机专业出身的开发者,我们深深受益于计算机世界的开放共享精神。今天,我们希望通过LlamaFactory为这个社区贡献我们的一份力量。

📖 LlamaFactory能为您提供什么?

🌐 英文文档的AI翻译:利用大语言模型将英文文档翻译成中文,助您更便捷地获取最新技术信息。

💻 快速获取主流大模型调用代码:一键获取各大AI大模型的调用代码,方便您将大模型能力快速集成到项目中。

🔧 LLaMA-Factory训练命令转VSCode调试配置:将训练启动命令转换为VSCode的debug配置文件,简化开发调试流程。

📊 大模型训练显存占用预估:帮您在训练大模型时选择合适的硬件配置,提高资源利用效率。

📚 收集主流大模型聚合平台和API接口:整理各大AI聚合平台以及聚合接口方案,为您提供一站式查询服务。

💡 收集高质量Prompts、编写技巧、学习资源:为AI爱好者和开发者提供知识库,汇集经过筛选的高质量提示词(Prompts)、编写技巧和学习资源。

🤖 大模型驱动的文章聚合平台:利用先进的大模型技术对精选文章来源进行深度筛选,打造纯粹的大模型技术文章聚合平台。未来,我们计划进一步应用大模型技术来优化平台,为用户带来更出色的阅读体验。

这些功能都源于我们日常工作和学习中的实际需求,是一点一滴积累的经验总结。虽然看似简单,但我们相信这些工具能为许多开发者节省时间和精力。

👉CSDN大礼包🎁:这一份大模型《LLaMA Factory开源教程》免费分享(安全链接,放心点击)👈

目录

  • 特征
  • 基准
  • 更新日志
  • 支持的型号
  • 支持的培训方法
  • 提供的数据集
  • 要求
  • 入门
  • 使用 LLaMA Factory 的项目
  • 执照
  • 引用
  • 致谢

特征

  • 各种型号:LLaMA、LLaVA、Mistral、Mixtral-MoE、Qwen、Qwen2-VL、Yi、Gemma、Baichuan、ChatGLM、Phi 等。
  • 集成方法:(连续)预训练、(多模态)监督微调、奖励建模、PPO、DPO、KTO、ORPO 等。
  • 可扩展资源:通过 AQLM/AWQ/GPTQ/LLM.int8/HQQ/EETQ 的 16 位全调谐、冻结调谐、LoRA 和 2/3/4/5/6/8 位 QLoRA。
  • 高级算法:GaLore、BAdam、Adam-mini、DoRA、LongLoRA、LLaMA Pro、Mixture-of-Depths、LoRA+、LoftQ、PiSSA 和 Agent tuning。
  • 实用技巧:FlashAttention-2、Liger Kernel、RoPE scaling、NEFTune 和 rsLoRA。
  • 实验监控:LlamaBoard、TensorBoard、Wandb、MLflow 等。
  • 更快的推理:带有 vLLM 工作器的 OpenAI 风格的 API、Gradio UI 和 CLI。

支持的型号

模型模型大小模板
百川2号7B/13B百川2
布卢姆/布卢姆兹560M/1.1B/1.7B/3B/7.1B/176B-
ChatGLM36Bchatglm3
命令R35B/104B凝聚
DeepSeek(代码/MoE)7B/16B/67B/236B深度搜索
7B/11B/40B/180B
Gemma/Gemma 2/CodeGemma2B/7B/9B/27B
GLM-49Bglm4
指数1.9亿指数
实习生LM2/实习生LM2.57B/20B实习生2
骆驼7B/13B/33B/65B-
骆驼 27B/13B/70B骆驼2
骆驼3-3.21B/3B/8B/70B骆驼3
LLaVA-1.57B/13B亚瓦
LLaVA-NeXT7B/8B/13B/34B/72B/110Bllava_next
LLaVA-NeXT-视频7B/34Bllava_next_video
最低每千次展示费用1B/2B/4B每千次展示费用/每千次展示费用3
米斯特拉尔/米斯特拉尔7B/8x7B/8x22B米斯特拉尔
奥利莫1B/7B-
巴利杰玛3B重晶石
φ-1.5/φ-213亿/27亿-
披-34B/14B
Phi-3-小7Bphi_小
像素12B像素
Qwen (1-2.5) (代码/数学/MoE)0.5B/1.5B/3B/7B/14B/32B/72B/110B奎文
Qwen2-VL2B/7B/72Bqwen2_vl
星际编码员 23B/7B/15B-
宇宙7B/13B/65B宇宙
Yi/Yi-1.5(代码)1.5亿/6亿/9亿/34亿
乙型肝炎6B/34Byi_vl
元22B/51B/102B

笔记

对于“基础”模型,参数可以从、等中template选择。但请确保使用“指导/聊天”模型的相应模板。 default``alpaca``vicuna****

记住在训练和推理中使用相同的模板。

请参阅constants.py以获取我们支持的模型的完整列表。

您还可以将自定义聊天模板添加到template.py

支持的培训方法

方法全调音冻结调谐洛拉量子LoRA
预训练
监督微调
奖励模型
PPO 培训
DPO培训
韩国旅游观光局培训
ORPO 培训
SimPO 培训

提示

PPO 的实施细节可在此博客中找到。

某些数据集在使用前需要确认,因此我们建议使用这些命令通过您的 Hugging Face 帐户登录。

pip install --upgrade huggingface_hub
huggingface-cli login

要求

强制的最低限度推荐
Python3.83.11
火炬1.13.12.4.0
变压器4.41.24.43.4
数据集2.16.02.20.0
加速0.30.10.32.0
佩夫特0.11.10.12.0
特里尔0.8.60.9.6
选修的最低限度推荐
通用数据架构11.612.2
深度速度0.10.00.14.0
比特和字节0.39.00.43.1
维利姆0.4.30.5.0
flash-attn2.3.02.6.3

硬件要求

*估计的

方法7B13B30B70B110B8x7B8x22B
满的AMP120 GB240GB600GB1200GB2000GB900GB2400GB
满的1660GB120 GB300GB600GB900GB400GB1200GB
冻结1620GB40GB80GB200GB360GB160GB400GB
LoRA/GaLore/BAdam1616 GB32GB64GB160GB240GB120 GB320GB
量子LoRA810GB20GB40GB80GB140GB60GB160GB
量子LoRA46GB12GB24GB48GB72GB30GB96GB
量子LoRA24GB8GB16 GB24GB48GB18GB48GB

👉CSDN大礼包🎁:这一份大模型《LLaMA Factory开源教程》免费分享(安全链接,放心点击)👈

### 使用 LLama-Factory 微调开源模型 #### 准备环境与安装依赖 为了使用 LLama-Factory开源模型进行微调,首先需要准备合适的开发环境并安装必要的软件包。这通常涉及到设置 Python 虚拟环境以及安装 PyTorch 其他依赖项。 #### 配置训练参数文件 配置文件定义了用于微调的具体参数选项。对于 `Llama3-8B-Instruct` 模型而言,可以通过 YAML 文件指定这些细节[^1]: ```yaml model_name_or_path: "path_to_model" output_dir: "./results" per_device_train_batch_size: 4 gradient_accumulation_steps: 2 learning_rate: 5e-6 num_train_epochs: 3 logging_dir: './logs' ``` 此配置示例展示了如何调整批量大小、学习率其他超参数来优化训练过程。 #### 执行微调操作 一旦完成了上述准备工作,则可通过 CLI 命令执行实际的微调流程。具体来说,就是运行如下命令来进行基于 LoRA 的微调工作[^3]: ```bash CUDA_VISIBLE_DEVICES=0 llamafactory-cli train examples/lora_single_gpu/llama3_lora_sft.yaml ``` 这条指令指定了 GPU 设备编号,并加载预设好的配置文件路径以启动训练任务。 #### 进行推理测试 完成微调之后,可以立即对该改进后的模型做初步评估。同样借助于 CLI 工具,只需更改子命令即可切换到推理模式: ```bash CUDA_VISIBLE_DEVICES=0 llamafactory-cli chat examples/inference/llama3_lora_sft.yaml ``` 该命令允许用户与经过微调的大规模语言模型交互对话,从而直观感受其表现变化。 #### 合并权重保存成果 最后一步是将原始模型与新学到的知识相结合,形成最终版本供后续部署或进一步迭代之用。这一环节也十分简单明了: ```bash CUDA_VISIBLE_DEVICES=0 llamafactory-cli export examples/merge_lora/llama3_lora_sft.yaml ``` 通过这种方式能够有效地保留所有更新过的参数而不会丢失原有结构特性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值