返回顶部
热门问答 更多热门问答
技术文章 更多技术文章

微调LLAMA3,启动!

[复制链接]
链载Ai 显示全部楼层 发表于 1 小时前 |阅读模式 打印 上一主题 下一主题

torchtune是PyTorch新开源的LLM微调工具库,并原生支持LLAMA3微调!参考之前推送:

微调自己的大模型:PyTorch开源torchtune

洗数据干翻GPT4?解读LLAMA3!

Llama3-8B


Llama3-8B 是 Meta AI 发布的新型模型,它在一系列不同的基准测试中提高了 Llama2 模型系列的性能。Llama2-7B 和 Llama3-8B 模型之间有几个主要的变化:

  • Llama3-8B 使用分组查询注意力机制,而不是 Llama2-7B 中的标准多头注意力机制。

  • Llama3-8B 拥有更大的词汇表大小(128,256,而不是 Llama2 模型的 32,000)。

  • Llama3-8B 使用了与 Llama2 模型不同的分词器(tiktoken 而非 sentencepiece)。

  • Llama3-8B 在其 MLP(多层感知机)层中使用了比 Llama2-7B 更大的中间维度。

  • Llama3-8B 在计算其旋转位置嵌入(rotary positional embeddings)中的 theta 时使用了更大的值。


获取Llama3-8B

tune download meta-llama/Meta-Llama-3-8B \    --output-dir <checkpoint_dir> \    --hf-token <ACCESS TOKEN>

https://github.com/meta-llama/llama3/blob/main/README.md

微调Llama3-8B

单卡LoRA微调样例:

tune run lora_finetune_single_device --config llama3/8B_lora_single_device

在我们的实验中,我们观察到18.5GB的峰值内存使用量。默认配置可以在具有24 GB VRAM的消费级GPU上进行训练。

如果您有多个可用的GPU,您可以运行分布式版本。torchtune使用PyTorch Distributed的FSDP API来分割模型、优化器状态和梯度。这将使您能够增加批量,从而更快地进行整体培训。例如,在两个设备上:

tune run --nproc_per_node 2 lora_finetune_distributed --config llama3/8B_lora

由于我们的默认配置支持完整的bfloat16训练,因此所有上述命令都可以在具有至少24 GB 显存的设备上运行,事实上,如果使用QLoRA,峰值分配内存甚至低于10 GB。您还可以尝试使用LoRA和QLoRA的不同配置,甚至可以进行全量参数微调。试试看!比如QLoRA微调方法如下:

tune run lora_finetune_single_device --config llama3/8B_qlora_single_device

使用torchtune完全可以实现0代码大模型微调、评测、量化、推理,所要做的仅需要确定微调的YAML配置文件!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

链载AI是专业的生成式人工智能教程平台。提供Stable Diffusion、Midjourney AI绘画教程,Suno AI音乐生成指南,以及Runway、Pika等AI视频制作与动画生成实战案例。从提示词编写到参数调整,手把手助您从入门到精通。
  • 官方手机版

  • 微信公众号

  • 商务合作

  • Powered by Discuz! X3.5 | Copyright © 2025-2025. | 链载Ai
  • 桂ICP备2024021734号 | 营业执照 | |广西笔趣文化传媒有限公司|| QQ