LoRA 单设备微调¶
此配方支持使用参数高效微调技术 (PEFT) 对下一个标记预测任务进行微调 例如低秩适应 (LoRA) 和量化低秩适应 (QLoRA)。这些技术 显著降低训练期间的内存消耗,同时仍保持有竞争力的性能。
我们提供的配置可让您快速启动并运行。以下是 Llama 3.1 8B 的示例:
注意
您可能需要获得对您感兴趣的 Llama 模型的访问权限。有关访问门控存储库的详细信息,请参阅此处。
# download the model
tune download meta-llama/Meta-Llama-3.1-8B-Instruct \
--output-dir /tmp/Meta-Llama-3.1-8B-Instruct \
--ignore-patterns "original/consolidated.00.pth"
# run the recipe
tune run lora_finetune_single_device \
--config llama3_1/8B_lora_single_device
您可以通过 torchtune CLI 自定义此配方。例如,使用 LoRA 进行微调时,您可以调整 LoRA 应用于的图层:
tune run lora_finetune_single_device \
--config llama3_1/8B_lora_single_device \
model.lora_attn_modules=“[q_proj,k_proj,v_proj]” \
model.apply_lora_to_mlp=True \
model.lora_rank=64 \
model.lora_alpha=128
为了更深入地了解使用此配方时可以拉动的不同杠杆, 请参阅我们的文档,了解我们支持的不同 PEFT 培训范式:
我们的许多其他内存优化功能都可以在此配方中使用。您可以在我们的内存优化概述中了解有关我们所有内存优化功能的更多信息。
有兴趣查看此示例的实际效果吗?查看我们的一些教程,展示如何使用它: