使用 HuggingFace 的 AutoTrain 微调模型
微调 AI 模型让您有机会向模型添加额外的训练数据。Workers AI 允许使用 Low-Rank Adaptation, LoRA, 适配器,这将允许您微调我们的模型。
在本教程中,我们将探讨如何创建我们自己的 LoRA。我们将专注于使用 AutoTrain 进行 LLM 微调 ↗。
首先创建一个 CSV(逗号分隔值)文件。该文件将只有一个名为 text
的列。通过在一行中单独添加 text
一词来设置标题。
现在您需要确定要添加到模型中的内容。
示例格式如下:
### Human: What is the meaning of life? ### Assistant: 42.
如果您的训练行包含换行符,您应该用引号将其括起来。
"human: What is the meaning of life? \n bot: 42."
不同的模型,如 Mistral,将提供特定的聊天模板/指令格式 ↗
<s>[INST] What is the meaning of life? [/INST] 42</s>
打开 HuggingFace AutoTrain 高级笔记本 ↗
为了给您的 AutoTrain 提供充足的内存,您需要选择一个不同的运行时。从笔记本顶部的菜单中选择"运行时">"更改运行时类型"。选择 A100。
笔记本包含一些我们需要更改的交互式部分。
修改以下字段
- project_name:选择一个描述性的名称,以便您以后记住
- model_name:从我们支持的官方 HuggingFace 基础模型中选择一个:
mistralai/Mistral-7B-Instruct-v0.2
google/gemma-2b-it
google/gemma-7b-it
meta-llama/llama-2-7b-chat-hf
虽然使用 AutoTrain 不是必需的,但创建一个 HuggingFace 帐户 ↗ 将帮助您将微调工件保存在一个方便的存储库中,以便以后参考。
如果您不执行 HuggingFace 设置,您仍然可以从笔记本下载文件。
如有必要,请按照笔记本中的说明 ↗创建帐户和令牌。
我们只需要更改其中一些字段以确保在 Cloudflare Workers AI 上正常工作。
- quantization:将下拉菜单更改为
none
- lora-r:将值更改为
8
笔记本具有文件夹结构,您可以通过单击左侧导航栏上的文件夹图标来访问它。
创建一个名为 data 的文件夹。
您可以将 CSV 文件拖到笔记本中。
确保它被命名为 train.csv
在笔记本菜单中,选择"运行时">"全部运行"。
它将运行笔记本的每个单元格,首先进行安装,然后配置并运行您的 AutoTrain 会话。
这可能需要一些时间,具体取决于您的 train.csv 文件的大小。
如果您遇到以下错误,这是由内存不足错误引起的。您可能需要将运行时更改为更大的 GPU 后端。
subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'autotrain.trainers.clm', '--training_config', 'blog-instruct/training_params.json']' died with <Signals.SIGKILL: 9>.
如果您已推送到 HuggingFace,您将找到您在上面的 project_name 中命名的新模型卡。默认情况下,您的模型卡是私有的。导航到文件并下载下面列出的文件。
在您的笔记本中,您也可以找到所需的文件。那里会有一个与您的 project_name 匹配的新文件夹。
下载以下文件:
adapter_model.safetensors
adapter_config.json
您需要在您下载的 adapter_config.json
中添加一行。
"model_type": "mistral"
其中 model_type
是架构。当前有效值为 mistral
、gemma
和 llama
。
现在您有了文件,您可以将它们添加到您的帐户中。
您可以使用 REST API 或 Wrangler。
在您设置好新的微调后,您就可以在您的推理请求中使用它了。
- @2025 Cloudflare Ubitools
- Cf Repo