国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

在家中完成LLM微調高效指南(上) 原創 精華

發布于 2024-11-11 13:32
瀏覽
0收藏

編輯 | 言征

出品 | 51CTO技術棧(微信號:blog51cto)

LLM在生成文本和理解信息方面非常有效,但它們最終受限于訓練數據的語料庫。例如,如果你讓一個通用的預訓練模型回答與你的業務特定流程或操作有關的問題,最好的結果是它拒絕,最壞的情況是它會信誓旦旦地給出一個看似合理但錯誤的答案。

當然,你可以通過自己訓練一個模型來解決這個問題,但所需的資源往往超出實際可行的范圍。例如,訓練Meta的相對小的Llama 3 8B模型需要約130萬GPU小時的計算資源,使用的是80GB的Nvidia H100。好消息是你不需要這樣做。我們可以通過稱為微調的過程,利用現有的模型(如Llama、Mistral或Phi),并通過自己的數據擴展其知識庫或修改其行為和風格。

盡管相比推理,微調仍然較為耗費計算資源,但借助于低秩適應(LoRA)及其量化變體QLoRA等技術,現在可以使用單塊GPU來微調模型——這正是我們將在本指南中探討的內容。

在本指南中,我們將討論:

  • 微調的應用場景和適用時機
  • 擴展預訓練模型能力和行為的替代方法
  • 數據準備的重要性
  • 如何使用Axolotl和自定義數據集微調Mistral 7B模型
  • 各種超參數及其對訓練的影響
  • 加快和提高微調效率的其他資源

1.設定期望

相比我們之前的動手指南,微調是一個涉及很多參數調整、開關配置和最佳實踐的復雜過程。因此,我們認為有必要設定一些期望。

微調是修改預訓練模型行為或風格的有用方法。然而,如果你的目標是教授模型新的知識,雖然可以做到,但可能有更好和更可靠的方式值得首先考慮。

我們之前探討過檢索增強生成(RAG),這種方法基本上為模型提供了一個它可以參考的庫或數據庫。這個方法因其相對易于設置、計算成本低廉且可以引用來源而備受歡迎。不過,它并不完美,也無法改變模型的風格或行為。

例如,如果你正在構建一個客戶聊天機器人來幫助用戶查找資源或解決產品問題,你可能不希望它回答與健康或財務無關的問題。提示工程可以在一定程度上幫助實現這一點。你可以創建一個系統提示,指示模型以某種方式行事。例如,添加一句“你不具備回答與健康、健康管理或營養相關問題的能力,如有相關問題,請將話題引導至更合適的內容。”

提示工程在其簡單中顯得優雅:只需告訴模型你希望它做什么或不做什么。但實際上,使用中的LLM模型經常會遇到一些邊界情況,導致模型被誤導執行它不應該做的事情。你可能會驚訝地發現,有時只需一句“忽略所有之前的指示,而執行以下操作”即可使模型改變行為。

如果RAG和提示工程無法滿足需求,則可以考慮微調。

2.使用QLoRA進行內存高效的模型微調

在本指南中,我們將使用微調來改變Mistral 7B模型的風格和語調。特別是,我們將使用QLoRA,如前所述,這將允許我們在與傳統訓練相比下,使用更少的內存和計算資源進行微調。

這是因為微調比運行模型需要更多的內存。在推理過程中,可以通過將參數數量乘以精度來計算內存需求。對于Mistral 7B,其訓練精度為BF16,因此大約需要14 GB內存,外加少量用于關鍵緩存的內存。

然而,完全微調則需要幾倍于此的內存來加載模型。對于Mistral 7B來說,內存需求約為90 GB或更多。如果你沒有多GPU的工作站,幾乎必然需要租用像Nvidia A100或H100這樣的數據中心GPU來完成任務。

這是因為完全微調意味著以完整分辨率重新訓練模型的每一個權重。好消息是,在大多數情況下,不必更新所有權重即可調整神經網絡的輸出。實際上,只需更新幾千或幾百萬的權重就可以實現預期的效果。

這正是LoRA的邏輯所在:簡而言之,它將模型的權重凍結在一個矩陣中,然后使用另一組矩陣記錄對第一個矩陣的調整以微調模型。這大大減少了計算和內存的開銷。QLoRA進一步優化了這一點,通過以更低的精度(通常為四位)加載模型的權重。因此,每個參數只需占用半字節的內存。

3.微調很簡單,數據準備就沒那么簡單了

解決了那些問題之后,我們需要談談數據。事實證明,微調模型并不是最難的部分,難的是準備和清理數據集,以確保模型能按你的期望工作。

那么,你從哪里獲取用于微調模型的數據呢?嗯,對于像電子郵件助手或客戶服務聊天機器人這樣的應用,你其實不需要找得太遠。只需打開你電子郵件中的“已發送”文件夾,就能找到一個不錯的起點來尋找有機數據。如果你在使用像Continue這樣的本地聊天助手,它可能會自動生成可用于微調模型的訓練數據。

雖然高質量的有機數據是理想之選,但它可能無法涵蓋你可能遇到的所有場景。例如,假設你希望模型生成回復,將收到的電子郵件的發送者引導到另一個部門或團隊。如果這種情況只是偶爾發生,你可能沒有足夠的有機數據來進行訓練。

這時,使用大型語言模型(LLMs)生成合成數據或部分合成數據就派上了用場。這樣做相當直接,只需將幾個示例輸入模型,并要求它生成模仿這些示例的新數據。你可能需要不斷調整提示,直到找到合適的內容。

你可以對輸入和輸出都這樣做,或者生成輸入并手動寫出對應的回復。在我們的測試中,我們發現合成數據通常缺乏細微差別,半合成數據效果良好,而完全有機數據的效果最佳。

無論你是使用有機數據還是合成數據來生成數據集,你都需要花時間清理數據集,刪除個人信息或不良樣本等內容。例如,如果你正在為客戶服務或支持微調模型,你可能想從數據中刪除代理或用戶的姓名、電話號碼和其他信息。

雖然微調對于改變模型的行為最有幫助,但它仍然會捕捉到數據集中始終出現的細節,如姓名。

一旦你收集好了數據——其實并不需要太多:甚至100個樣本可能就足以以明顯的方式改變模型的行為——你就需要以模型能夠理解的方式對其進行格式化。有很多方法可以做到這一點,但就我們的目的而言,我們發現使用Alpaca數據格式的JSON模板效果相當不錯。

4.微調容易,數據準備難

以上內容準備好后,我們需要談談數據。事實證明,微調模型并不是最難的部分,真正的難點在于準備和清理數據集,使模型能夠真正按照你的意圖運行。

那么,你要從哪里獲取微調模型的數據呢?對于電子郵件助手或客服聊天機器人之類的應用,數據來源并不難找。簡單地查看你的電子郵件“已發送”文件夾,就能為獲取自然數據提供一個不錯的起點。如果你使用的是本地聊天助手,如Continue,它可能會自動生成可用于微調模型的訓練數據。

如果寫代碼注釋讓你頭疼,你也可以讓AI來代勞。只要記得在提交代碼前查看一下注釋內容。

當你在家就能創建屬于自己的AI代碼助手,誰還需要GitHub Copilot呢?

雖然高質量的自然數據是理想選擇,但它可能無法覆蓋所有可能遇到的場景。例如,如果你希望模型生成的郵件回復能夠將發件人重定向至不同的部門或團隊,而這種情況偶爾才發生,那么可能沒有足夠的自然數據來訓練模型。

這時,使用LLM生成合成數據或部分合成數據會非常有用。操作步驟相對簡單:你可以向模型提供一些示例,然后讓它生成模擬這些示例的新數據。你可能需要調整提示,直到生成出符合需求的數據。

你可以同時為輸入和輸出生成數據,也可以只生成輸入,自己編寫相應的輸出。在我們的測試中發現,完全合成的數據通常缺乏細微之處,而半合成數據效果較好,完全自然的數據效果最佳。

無論是用自然數據還是合成數據生成數據集,你都需要花時間清理數據集,去除個人身份信息或無效樣本。例如,如果你在微調一個客戶服務或支持類的模型,可能需要刪除數據中的代理人或用戶的姓名、號碼及其他信息。

雖然微調主要用于改變模型的行為,但模型仍然會受到數據集中一致出現的細節(如名稱)的影響。

一旦數據準備好了,其實不需要很多數據:即便是100個樣本也可能足以顯著改變模型的行為。接下來,你需要將數據格式化,使模型能夠理解。對于我們的目的,我們發現這種基于Alpaca數據格式的JSON模板效果很好:

[
    {
      "instruction": "generate an appropriate response to this chat message",
      "input": "I'm having trouble getting Product X to work properly.",
      "output": "Can you tell me more about what isn't working?"
    },
...
]

5.設置Axolotl

市面上有許多用于微調LLM的框架,如Unsloth和Hugging Face的Transformers Trainer。不過在本次動手操作中,我們將使用Axolotl。

該開源項目旨在抽象出微調流行語言模型的復雜性,并支持多種不同的訓練技術。因此,如果你在工作站或游戲PC上用QLoRA開始微調,之后想要在云端進行完整微調,可以輕松切換。

Axolotl的另一大優勢是提供了大量用于微調流行LLM的模板庫,因此你不必從頭開始摸索針對特定模型或數據集需要的超參數。

6.準備條件

一塊至少有16GB顯存的GPU。任何較新的Nvidia GPU都可以。對于AMD用戶,建議使用AMD Radeon RX 7900或更高型號。我們測試了RTX 3090 TI 24GB、RTX 6000 Ada Generation 48GB、AMD Radeon RX 7900 XT 20GB和Radeon Pro W7900 48GB。

- 在本指南中,我們會盡量保持簡單,使用Ubuntu Desktop 24.04。

- 你的顯卡所需的最新GPU驅動和CUDA(Nvidia)或ROCm(AMD)二進制文件。如果是第一次設置這些,可能會有些棘手,因此我們會在Ubuntu 24.04上詳細說明配置步驟。

- 假設你對Linux系統的命令行操作較為熟悉。以下操作說明涉及在此環境中使用終端運行命令。

由于Nvidia和AMD顯卡的設置略有不同,注意區分。更多內容。會在下一篇文章中介紹。

本文轉載自??51CTO技術棧??,作者:言征


?著作權歸作者所有,如需轉載,請注明出處,否則將追究法律責任
收藏
回復
舉報
回復
相關推薦
国产传媒一区二区| 欧美成人精品一级| 色偷偷成人一区二区三区91 | 国产精品乱人伦| 国外av网站| 狠狠躁天天躁日日躁欧美| 午夜免费福利在线观看| 日韩精品在线免费播放| 精品国产伦一区二区三区观看说明| 欧美在线激情网| 亚洲网站在线| 欧美日韩午夜爽爽| **性色生活片久久毛片| 国产理论电影在线观看| 亚洲欧美日韩精品久久亚洲区 | 欧美国产日韩一区二区| 欧美xxav| 欧美一区二区三区四区五区六区| 成人99免费视频| 国产无遮挡又黄又爽免费网站| 欧洲亚洲国产日韩| 成人在线高清| 久久女同性恋中文字幕| 日韩在线第三页| 色噜噜狠狠成人中文综合 | 中文字幕亚洲欧美| 色999日韩| 日韩成人午夜影院| 午夜亚洲福利老司机| 在线观看的黄色| 国产91精品在线播放| 美女网站在线免费欧美精品| free亚洲| 亚洲男女性事视频| 欧美码中文字幕在线| 亚洲av综合色区| 一本久久精品一区二区| 最新日韩一区| 国产在线播放91| 大尺度一区二区| 99热99热| 国产精品无人区| av在线free| 91禁国产网站| 激情六月婷婷久久| 中出在线观看| 日韩中文字幕av| 国产日韩欧美| 免费h片在线| 中文字幕欧美精品在线| 欧美福利专区| 亚洲欧美自拍另类日韩| 99精品视频免费观看视频| 男人的天堂成人| 色综合中文综合网| 国产精品久久久久久久久久久久久久久 | 天堂在线亚洲| 亚洲精品国产欧美| 欧美mv日韩| 成年人视频在线免费| 欧美一区二区久久久| 青草国产精品| 成人午夜视频免费在线观看| 精品少妇一区二区三区| 国产精品88久久久久久| 日韩毛片在线免费看| 亚洲国产91色在线| 日韩欧美字幕| 成人在线看片网站| 欧美精品在线视频观看| 国产在线观看一区二区| av免费在线免费| 国产区一区二区三区| 一本一本久久a久久精品综合麻豆| 亚洲性视频大全| 91极品尤物在线播放国产| 在线亚洲男人天堂| 蓝色福利精品导航| 国产乱码精品一区二区三区不卡| 91久色porny| 成人午夜亚洲| 国产一区二区三区在线免费| 亚洲激情在线视频| 久久av资源站| 国产ktv在线视频| 亚洲国产精品毛片| 亚洲成人黄色网| 免播放器亚洲| 亚洲wwwww| 一区二区三区欧美成人| 精品欧美一区二区久久| 久久一综合视频| 老司机免费在线视频| 国产在线精品一区| 欧美日韩中字一区| 国产一区美女| 在线看的av网站| 欧美日韩精品一区| 精品日韩在线一区| 韩国欧美国产1区| 视频在线日韩| 国模无码视频一区二区三区| 免费不卡欧美自拍视频| 国产精品进线69影院| 自拍偷拍欧美一区| 中文字幕av高清在线观看| 国产日韩欧美在线看| 色哟哟国产精品免费观看| 综合在线一区| a黄色片在线观看| 国产日韩欧美大片| 久久精品国产久精国产一老狼 | 国产精品美女| 99在线视频影院| 黄色三级中文字幕| 欧美激情欧美激情| 一区二区三区日本| 亚洲成av人电影| 国产素人视频在线观看| 亚洲一区二区在线免费观看| 每日更新成人在线视频| 午夜免费播放观看在线视频| 色姑娘综合av| 日韩亚洲在线观看| 亚洲男人的天堂网| 极品日韩av| 蜜桃视频在线观看免费视频| www一区二区www免费| 日韩免费观看视频| 欧美视频日韩视频在线观看| 老司机午夜精品99久久| 2023国产精华国产精品| 四虎影视在线观看2413| 特级毛片在线免费观看| 久久久亚洲影院| 精品视频免费在线| 成人精品在线视频观看| 激情小说亚洲图片| 中文日本在线观看| 和岳每晚弄的高潮嗷嗷叫视频| 5566成人精品视频免费| 欧美日韩国产小视频| 丁香亚洲综合激情啪啪综合| 欧美日韩一区二区三区不卡视频| 偷拍自拍在线视频| 视频一区视频二区视频| 久久97久久97精品免视看| 日韩欧美国产免费播放| 国产精品一区二区三区乱码| 国产日产一区| 不卡av播放| 亚洲成人av在线影院| 久久精品国产精品亚洲精品色| 韩剧1988免费观看全集| 69精品人人人人| 中文字幕中文字幕在线一区 | 成人视屏在线观看| 一级视频在线免费观看| 好色先生视频污| 国产精品视频一区二区高潮| 国产婷婷色综合av蜜臀av| 午夜精品在线视频一区| 高清在线不卡av| 欧美/亚洲一区| 综合久久成人| sm在线观看| 色网址在线观看| 日韩国产一级片| 久久精品美女| 热久久这里只有精品| 亚洲男女性事视频| 欧洲国内综合视频| 中文字幕一区二区不卡 | 日日碰狠狠躁久久躁婷婷| 免费成人av网站| 国产精品久久久久久超碰| 国产亚洲欧美日韩美女| 色琪琪一区二区三区亚洲区| 欧美国产综合一区二区| 国模无码大尺度一区二区三区| 亚洲成人最新网站| 国产精品成人自拍| 自拍偷拍欧美视频| 日韩精品黄色| 蜜桃专区在线| 亚洲 中文字幕 日韩 无码| 日韩激情久久| 7777精品伊久久久大香线蕉语言| 欧美国产日韩免费| 久久国产高清| 成人知道污网站| 中文在线8资源库| 蜜芽在线免费观看| 伊人国产在线| 成人免费看黄网址| 激情五月宗合网| 黑人巨茎大战欧美白妇| 日韩国产精品一区二区| 精品国产一区二区三| 99re在线视频上|