ronpay

ronpay

LLMs 微調介紹

[五月 29] 初始化文檔

可用的 LLMs 微調框架#

  • LLaMA-Factory
  • xtuner
  • unsloth

簡單介紹一下#

  • Llama_Factory 提供了最多的微調方法,有很多來自最新的學術論文,包括 LongLora 等等;最新的框架,包括 Unsloth。
  • Xtuner 則提供了較為豐富的文檔,和很多優化技巧,但是微調技術比較單一,只有基礎的 Lora 以及 QLora。
  • Unsloth 則提供不錯的文檔,但是同樣只提供少量的微調方案。
  • 如果你的需求很簡單,例如用 24G 顯存在一個普遍的模型如 Llama3 上微調一個長度很短的對話指令數據集(例如 alpaca),使用上面的任何一個庫都可以。

一般步驟#

製作數據集#

數據集根據格式,基本上可以分為 alpaca 以及 sharegpt 兩種類型。
而根據微調類型,可以分為 Supervised Fine-Tuning Dataset 和 Pretraining Dataset,前者用於指令微調對話用途,後者用於增量預訓練。
關於製作數據集的方式,完全可以參考 LLaMA-Factory/data/README.md at main・hiyouga/LLaMA-Factory。

選擇微調技術#

最基本的微調方法是 Lora,如果想使用更少的顯存可以用 QLora,Q 意味著 Quantized。
如果有很長的序列要求但是只有顯存捉急,可以考慮 Unsloth + Flash Attention 2。
Llama_factory 提供了非常多的微調技術,可供挑選。

遵循框架的文檔#

微調的一些常用技術#

  • RoPE Scaling
    • 它支持了任意長度的微調,例如 Llama3 只在 8K 長度預訓練,但是使用它可以任意長度微調。
  • FlashAttention
    • 減少訓練時間以及顯存佔用。

遇到問題的解決方案:

  1. Google
  2. repo 裡的 issue
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。