LLM 微调初学者指南,如何使用一种工具微调 Llama 和其他LLM

在这里插入图片描述
人们对大型语言模型 (LLM) 的兴趣日益浓厚,导致旨在简化培训过程的工具和包装器激增。

流行的选项包括LMSYS 的FastChat(用于训练Vicuna)和 Hugging Face 的Transformers / trl库(在我的上一篇文章中使用)。此外,受原始Alpaca实现的启发,每个大型 LLM 项目(例如WizardLM)往往都有自己的训练脚本。

在本文中,我们将使用Axolotl,这是 OpenAccess AI Collective 创建的工具。我们将使用它在由 1,000 个 Python 代码样本组成的 evol-instruct 数据集上微调Code Llama 7b模型。

为什么是Axolotl ?

Axolotl 的主要吸引力在于它提供了一站式解决方案,其中包括众多功能、模型架构和活跃的社区。以下是我最喜欢的事情的快速列表:

配置:用于训练 LLM 的所有参数都整齐地存储在 yaml 配置文件中。这使得共享和复制模型变得很方便。您可以在此处查看 Llama 2 的示例。
数据集灵活性:Axolotl 允许使用不同的提示格式指定多个数据集,例如 alpaca ( {“instruction”: “…”, “input”: “…”, “output”: “…”})、sharegpt:chat ( {“conversations”: [{“from”: “…”, “value”: “…”}]}) 和原始完成 ( {“text”: “…”})。数据集的组合是无缝的,并且消除了统一提示格式的麻烦。
特点:Axolotl 包含 SOT

猜你喜欢

转载自blog.csdn.net/iCloudEnd/article/details/132636356
今日推荐