【LLM大模型】模型和指令微调方法
note
- Hugging Face 的 PEFT是一個庫(LoRA 是其支持的技術之一,除此之外還有Prefix Tuning、P-Tuning、Prompt Tuning),可以讓你使用各種基于 Transformer 結構的語言模型進行高效微調。
- AIpaca羊駝:讓 OpenAI 的 text-davinci-003 模型以 self-instruct 方式生成 52K 指令遵循(instruction-following)樣本,以此作為 Alpaca 的訓練數據,最后訓練的羊駝只有7B參數量。可以使用LoRA微調優化。
- LLM技術思路:
- 語言模型:llama、bloom、glm等
- 指令微調數據:alpaca_data、bella_data、guanaco_data等。目前指令微調數據上,很依賴alpaca以及chatgpt的self-instruct數據。
- 微調加速: lora(如Alpaca-Lora)等,還可以使用peft庫、量化工具包bitsandbytes、deepspeed、llama.cpp量化模型。在LoRA方法提出之前,也有很多方法嘗試解決大模型微調困境的方法。其中有兩個主要的方向:
- 添加adapter層。adapter就是固定原有的參數,并添加一些額外參數用于微調;
- 由于某種形式的輸入層激活。
文章目錄
- note
- 零、AIGC生成式模型
- 1. 核心要素
- 2. LLM evolutionary tree
- 3. 什么樣的模型更適合zero-shot
- 二、LLM大模型
- 1. ChatGLM
- (1)GLM-130B
- (2)ChatGLM-6B
- 2. LLaMA
- 3. RoBERTa
- 4. Bloom
- 5. PaLM
- 三、大模型高效指令微調
- 1. 指令微調的注意事項
- 2. prompt tuning
- 3. prefix tuning
- 5. LoRA模型微調
- 6. p-tuning
- 四、微調模型實踐
- 1. 基于微調的醫學問診模型HuaTuo
- 2. stanford alpaca指令微調
- 3. Chinese-LLaMA-Alpaca中文模型
- 4. Alpaca-Lora:基于LLaMA(7B)微調
- 五、工程注意事項
- Reference
零、AIGC生成式模型
1. 核心要素
AIGC模型:
NLP:GPT、chatGLM、其他常見LLM模型參考下圖
CV:stable diffusion等
2. LLM evolutionary tree
引爆LLM的chatGPT的三大核心技術:
- LLM:(Large Language Models)指經過大規模預訓練且體量較大的語言模型,一般是 transformer-based 模型。
- IFT:(Instruction Fine-Tuning)指令微調,指令是指用戶傳入的目的明確的輸入文本,指令微調用以讓模型學會遵循用戶的指令。
- CoT:(Chain-of-Thought)指令形式的一種特殊情況,包含 step-by-step 的推理過程。
3. 什么樣的模型更適合zero-shot
幾個bigScience里的概念
二、LLM大模型
- 當前主流的大預言模型都是decoder-only結構
- OPT、BLOOM、LLaMA 三個模型是主要面向開源促進研究和應用的,中文開源可用的是 GLM,后續很多工作都是在這些開源的基礎模型上進行微調優化的
1. ChatGLM
(1)GLM-130B
ChatGLM 參考了 ChatGPT 的設計思路,在千億基座模型 GLM-130B中注入了代碼預訓練,通過有監督微調(Supervised Fine-Tuning)等技術實現人類意圖對齊。ChatGLM 當前版本模型的能力提升主要來源于獨特的千億基座模型 GLM-130B。它是不同于 BERT、GPT-3 以及 T5 的架構,是一個包含多目標函數的自回歸預訓練模型。2022年8月,向研究界和工業界開放了擁有1300億參數的中英雙語稠密模型 GLM-130B,該模型有一些獨特的優勢:
- 雙語: 同時支持中文和英文。
- 高精度(英文): 在公開的英文自然語言榜單 LAMBADA、MMLU 和 Big-bench-lite 上優于 GPT-3 175B(API: davinci,基座模型)、OPT-175B 和 BLOOM-176B。
- 高精度(中文): 在7個零樣本 CLUE 數據集和5個零樣本 FewCLUE 數據集上明顯優于 ERNIE TITAN 3.0 260B 和 YUAN 1.0-245B。
- 快速推理: 首個實現 INT4 量化的千億模型,支持用一臺 4 卡 3090 或 8 卡 2080Ti 服務器進行快速且基本無損推理。
- 可復現性: 所有結果(超過 30 個任務)均可通過我們的開源代碼和模型參數復現。
- 跨平臺: 支持在國產的海光 DCU、華為昇騰 910 和申威處理器及美國的英偉達芯片上進行訓練與推理。
(2)ChatGLM-6B
ChatGLM-6B 是一個具有62億參數的中英雙語語言模型。通過使用與 ChatGLM(chatglm.cn)相同的技術,ChatGLM-6B 初具中文問答和對話功能,并支持在單張 2080Ti 上進行推理使用。具體來說,ChatGLM-6B 有如下特點:
- 充分的中英雙語預訓練: ChatGLM-6B 在 1:1 比例的中英語料上訓練了 1T 的 token 量,兼具雙語能力。
- 優化的模型架構和大小: 吸取 GLM-130B 訓練經驗,修正了二維 RoPE 位置編碼實現,使用傳統FFN結構。6B(62億)的參數大小,也使得研究者和個人開發者自己微調和部署 ChatGLM-6B 成為可能。
- 較低的部署門檻: FP16 半精度下,ChatGLM-6B 需要至少 13GB 的顯存進行推理,結合模型量化技術,這一需求可以進一步降低到 10GB(INT8) 和 6GB(INT4), 使得 ChatGLM-6B 可以部署在消費級顯卡上。
- 更長的序列長度: 相比 GLM-10B(序列長度1024),ChatGLM-6B 序列長度達 2048,支持更長對話和應用。
- 人類意圖對齊訓練: 使用了監督微調(Supervised Fine-Tuning)、反饋自助(Feedback Bootstrap)、人類反饋強化學習(Reinforcement Learning from Human Feedback) 等方式,使模型初具理解人類指令意圖的能力。輸出格式為 markdown,方便展示。
因此,ChatGLM-6B 具備了一定條件下較好的對話與問答能力。當然,ChatGLM-6B 也有相當多已知的局限和不足:
- 模型容量較小: 6B 的小容量,決定了其相對較弱的模型記憶和語言能力。在面對許多事實性知識任務時,ChatGLM-6B 可能會生成不正確的信息;她也不擅長邏輯類問題(如數學、編程)的解答。
- 可能會產生有害說明或有偏見的內容:ChatGLM-6B 只是一個初步與人類意圖對齊的語言模型,可能會生成有害、有偏見的內容。
- 較弱的多輪對話能力:ChatGLM-6B 的上下文理解能力還不夠充分,在面對長答案生成,以及多輪對話的場景時,可能會出現上下文丟失和理解錯誤的情況。
- 英文能力不足:訓練時使用的指示大部分都是中文的,只有一小部分指示是英文的。因此在使用英文指示時,回復的質量可能不如中文指示的回復,甚至與中文指示下的回復矛盾。
- 易被誤導:ChatGLM-6B 的“自我認知”可能存在問題,很容易被誤導并產生錯誤的言論。例如當前版本模型在被誤導的情況下,會在自我認知上發生偏差。即使該模型經過了1萬億標識符(token)左右的雙語預訓練,并且進行了指令微調和人類反饋強化學習(RLHF),但是因為模型容量較小,所以在某些指示下可能會產生有誤導性的內容。
2. LLaMA
結構區別:ChatGLM-6B是Prefix LM(PLM),LLaMA-7B是Causal LM(CLM)。
(參考google的論文《UL2: Unifying Language Learning Paradigms》)
LLaMA 是 Meta AI 發布的包含 7B、13B、33B 和 65B 四種參數規模的基礎語言模型集合,LLaMA-13B 僅以 1/10 規模的參數在多數的 benchmarks 上性能優于 GPT-3(175B),LLaMA-65B 與業內最好的模型 Chinchilla-70B 和 PaLM-540B 比較也具有競爭力。
鏈接:https://github.com/facebookresearch/llama
論文地址:https://scontent-tpe1-1.xx.fbcdn.net/v/t39.8562-6/333078981_693988129081760_4712707815225756708_n.pdf
與原始的 transformer Decoder 相比, LLaMA主要有以下改進:
- 預歸一化(Pre-normalization)[GPT3]:為了提高訓練的穩定性, LLaMA對每個transformer子層的輸入進行歸一化, 而不是對輸出進行 歸一化。同時使用RMSNorm歸一化函數。
- SwiGLU激活函數 [ P a L M ] [\mathrm{PaLM}] [PaLM]:LLaMA用SwiGLU激活函數取代RELU非線性, 以提高性能。SwiGLU激活函數的實現如下:
SwiGLU ? ( x , W , V , b , c , β ) = Swish ? β ( x W + b ) ? ( x V + c ) \operatorname{SwiGLU}(x, W, V, b, c, \beta)=\operatorname{Swish}_\beta(x W+b) \otimes(x V+c) SwiGLU(x,W,V,b,c,β)=Swishβ?(xW+b)?(xV+c)
其中 Swish ? = x ? σ ( β x ) , G L U ( x ) = σ ( W x + b ) ? ( V x + c ) \operatorname{Swish}=x \cdot \sigma(\beta x), G L U(x)=\sigma(W x+b) \otimes(V x+c) Swish=x?σ(βx),GLU(x)=σ(Wx+b)?(Vx+c) - 旋轉嵌入(Rotary pos)[GPTNeo]
3. RoBERTa
源碼:https://github.com/pytorch/fairseq
論文:https://arxiv.org/pdf/1907.11692.pdf
4. Bloom
- BLOOM 是 BigScience(一個圍繞研究和創建超大型語言模型的開放協作研討會)中數百名研究人員合作設計和構建的 176B 參數開源大語言模型,同時,還開源了BLOOM-560M、BLOOM-1.1B、BLOOM-1.7B、BLOOM-3B、BLOOM-7.1B 其他五個參數規模相對較小的模型。
- BLOOM 是一種 decoder-only 的 Transformer 語言模型,它是在 ROOTS 語料庫上訓練的,該數據集包含 46 種自然語言和 13 種編程語言(總共 59 種)的數百個數據來源。
- 鏈接:https://huggingface.co/bigscience
5. PaLM
PaLM 是使用谷歌提出的 Pathways[10] 系統(一種新的 ML 系統,可以跨多個 TPU Pod 進行高效訓練)在 6144 塊TPU v4 芯片上訓練完成的。作者在 Pod 級別上跨兩個 Cloud TPU v4 Pods 使用數據并行對訓練進行擴展,與以前的大多數 LLM 相比,是一個顯著的規模增長。
三、大模型高效指令微調
1. 指令微調的注意事項
- 高效指令微調:ChatGLM-6B官方支持的p-tuning-v2,以及最常見的LoRA方式都可以微調,節省顯存又高效。
- 參數微調后的常見問題:原有能力可能受損,或循環輸出重復文本。可以認為指令微調是為了獲得執行指令的能力,而不是從頭學習。
- 微調后,可以合并模型為單一模型:根據LoRA的論文,訓練得到低秩的權重delta矩陣,所以支持合并
- finetune階段的batch size通常遠小于pretrain階段,微調的數據量也遠小于預訓練的數據量。(參考MPT-7B模型的實驗)
- 基于LLM大模型構建應用:llama-index(原gpt-index)做文檔式的對話系統。或者使用MOSS的思路,把大語言模型做成各種插件
2. prompt tuning
HuggingFace 開源的一個高效微調大模型的 PEFT 庫(Parameter-Efficient Fine-Tuning),目前包含LoRA,Prefix Tuning,Prompt Tuning,P-Tuning 四種算法。首先來看prompt tuning。
固定預訓練參數,為每一個任務額外添加一個或多個embedding,之后拼接query正常輸入LLM,并只訓練這些embedding。左圖為單任務全參數微調,右圖為prompt tuning。
prompt tuning將fine tune任務轉為mlm任務。自動學習模板:離散的主要包括 Prompt Mining, Prompt Paraphrasing, Gradient-based Search, Prompt Generation 和 Prompt Scoring;連續的則主要包括Prefix Tuning, Tuning Initialized with Discrete Prompts 和 Hard-Soft Prompt Hybrid Tuning。
正常微調舉例:[cls]今天天上都出太陽了,陽光明媚。[SEP]
prompt輸入舉例:[cls]今天天氣是[MASK]。[SEP] 今天天上都出太陽了,陽光明媚。[SEP]
3. prefix tuning
prefix tuning還是固定預訓練參數,但除為每一個任務額外添加一個或多個embedding之外,利用多層感知編碼prefix,注意多層感知機就是prefix的編碼器,不再像prompt tuning繼續輸入LLM。
5. LoRA模型微調
LoRA凍結了預訓練模型的參數,并在每一層decoder中加入dropout+Linear+Conv1d額外的參數。LoRA速度更快,并且使用更少內存。
6. p-tuning
p-tuning依然是固定LLM參數,利用多層感知機和LSTM對prompt進行編碼,編碼之后與其他向量進行拼接之后正常輸入LLM。
chatglm使用p tuning v2微調代碼:https://github.com/THUDM/ChatGLM-6B/tree/main/ptuning
參考:大模型微調之P-tuning方法解析
self.lstm_head = torch.nn.LSTM(input_size=self.input_size,hidden_size=self.hidden_size,num_layers=num_layers,dropout=lstm_dropout,bidirectional=True,batch_first=True,)self.mlp_head = torch.nn.Sequential(torch.nn.Linear(self.hidden_size * 2, self.hidden_size * 2),torch.nn.ReLU(),torch.nn.Linear(self.hidden_size * 2, self.output_size), ) self.mlp_head(self.lstm_head(input_embeds)[0])四、微調模型實踐
1. 基于微調的醫學問診模型HuaTuo
LLM模型(如LLaMa,ChatGLM)因為缺乏一定的醫學專業知識語料而表現不佳。該項目通過醫學知識圖譜和GPT3.5API構建了中文醫學指令數據集,并對LLaMa模型進行了指令微調得到了一個針對醫學領域的智能問診模型HuaTuo,相比于未經過醫學數據指令微調的原LLaMa而言,HuaTuo模型在智能問診層面表現出色,可生成一些更為可靠的醫學知識回答。
華佗 HuaTuo: Tuning LLaMA Model with Chinese Medical Knowledge
PDF: https://arxiv.org/pdf/2304.06975v1.pdf
Code: https://github.com/scir-hi/huatuo-llama-med-chinese
2. stanford alpaca指令微調
【stanford_alpaca】一個可復制的指令對齊模型。Stanford Alpaca羊駝 是在 LLaMA 整個模型上微調,即對預訓練模型中的所有參數都進行微調(full fine-tuning)。博客(https://crfm.stanford.edu/2023/03/13/alpaca.html)中介紹到,在學術預算下訓練高質量的指導跟蹤模型有兩個重要挑戰:強大的預訓練語言模型和高質量的指導跟蹤數據。
- 第一個挑戰通過最近發布的Meta的新LLaMA模型來解決。
- 對于第二個挑戰,self-instruct論文建議使用現有的強語言模型來自動生成指令數據。羊駝是一種語言模型,使用從LLaMA 7B模型的監督學習,從OpenAI的文本davinci-003生成的52K指令進行后續訓練。
- 地址:https://github.com/tatsu-lab/stanford_alpaca。alpaca_data.json數據包含微調羊駝模型的52k指令追蹤數據,json里是字典類別,字典內容如下所示:
- 成本:配備如上圖的指令跟蹤數據集,然后使用Hugging Face的訓練框架微調了LLaMA模型,利用了完全分片數據并行和混合精度訓練等技術。在初始運行中,在8個80GB A100上微調7B LLaMA模型花了3個小時,這在大多數云計算提供商中花費不到100美元。
羊駝僅用于學術研究,禁止任何商業用途。這一決定有三個因素:首先,羊駝是基于LLaMA的,它擁有非商業許可證,因此我們必然會繼承這一決定。其次,指令數據基于OpenAI的text-davinci-003,其使用條款禁止開發與OpenAI競爭的模型。
3. Chinese-LLaMA-Alpaca中文模型
論文鏈接:https://arxiv.org/pdf/2304.08177.pdf
github鏈接:https://github.com/ymcui/Chinese-LLaMA-Alpaca
chinese LLaMA alpaca模型
論文:《EFFICIENT ANDEFFECTIVETEXTENCODING FORCHINESELLAMAANDALPACA》
Alpaca基于LLaMA的構造數據進行微調:
- 增加詞表,增加編碼效率:為了增強分詞器對中文文本的支持,首先使用SentencePiece在中文語料庫上訓練一個中文分詞器,詞匯量為20,000。然后將中文分詞器與原始LLaMA分詞器合并,組合它們的詞匯表。最終,得到一個合并后的分詞器,稱為中文LLaMA分詞器,詞匯量為49,953。
- 使用低秩自使用LoRA,減少訓練參數。LLaMA參數量在7B-65B。使用GPT4作為評分工具。Georgi Gerganov. llama.cpp.https://github.com/ggerganov/llama.cpp, 2023
- LLaMA包括預歸一化、多transformer塊和一個語言模型head層、如預歸一化、SwiGLU激活和Rotary Embeddings等的改進;LLaMA缺乏指令微調,非商業許可,Alpaca是基于該模型生成;指令數據是基于OpenAI的text-davinci-003,其使用條款禁止開發與OpenAI競爭的模型
- 指令精調階段的任務形式基本與Stanford Alpaca相同。訓練方案同樣采用了LoRA進行高效精調,并進一步增加了可訓練參數數量。在prompt設計上,精調以及預測時采用的都是原版Stanford Alpaca不帶input的模版。對于包含input字段的數據,采用f"{instruction}+\n+{input}"的形式進行拼接。
- 指令精調使用了約200w數據,如中英翻譯數據500k、pCLUE數據 300K、斯坦福Alpaca數據(中英)50K、Self-instruction數據等。
- Self-instruction數據即自動生成指令,和standard alpac一樣一次批量生成20組數據,
4. Alpaca-Lora:基于LLaMA(7B)微調
項目鏈接:https://github.com/tloen/alpaca-lora
權重地址:https://huggingface.co/decapoda-research/llama-7b-hf
- 項目誕生原因:Stanford Alpaca羊駝 是在 LLaMA 整個模型上微調,即對預訓練模型中的所有參數都進行微調(full fine-tuning)。但該方法對于硬件成本要求仍然偏高且訓練低效。LLaMA沒有經過指令微調,生成效果較差
- 因此,Alpaca-Lora:利用 Lora 技術,在凍結原模型 LLaMA 參數的情況下,通過往模型中加入額外的網絡層,并只訓練這些新增的網絡層參數。由于這些新增參數數量較少,這樣不僅微調的成本顯著下降(使用一塊 RTX 4090 顯卡,只用 5 個小時就訓練了一個與 Alpaca 水平相當的模型,將這類模型對算力的需求降到了消費級),還能獲得和全模型微調(full fine-tuning)類似的效果。
- 將LLaMA原始轉鐘轉為transformers庫對應的模型文件格式(也可以直接從huggingface上下載轉好的模型,參考)
- 用LoRA(Low-rank Adaptation)微調模型、模型推理
- 將 LoRA 權重合并回基礎模型以導出為 HuggingFace 格式和 PyTorch state_dicts。以幫助想要在 llama.cpp 或 alpaca.cpp 等項目中運行推理的用戶
五、工程注意事項
- 可以使用peft庫、量化工具包bitsandbytes、deepspeed、llama.cpp量化模型。在LoRA方法提出之前,也有很多方法嘗試解決大模型微調困境的方法。其中有兩個主要的方向:
- 添加adapter層。adapter就是固定原有的參數,并添加一些額外參數用于微調;
- 由于某種形式的輸入層激活。
- GPU推理需求:單卡條件下,顯存大小至少滿足加載完整模型(fp16),每10億(Billion)參數需要2GB,因為fp16精度1個參數要占16bits,2bytes。ChatGLM-6B官方說,fp16下最低需要13GB顯存。選新一點的顯卡,如A100新特性支持bf16、tf32。
- 顯存不足時體驗LLM:可以選擇對模型進行量化(8bit或4bit)甚至更低。ChatGLM-6B官方說,在int8和int4模式下的推理最低顯存要求會從13GB降到10GB和6GB。或者使用cpu進行推理,例如:llama.cpp。
- huggingface的int8推理速度怎么樣:LLM.int8()的BLOOM-176B比FP16版本慢了大約15%到23%。小模型下,int8推理會更慢。
Reference
[1] mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer https://arxiv.org/pdf/2010.11934.pdf
[2] Language Models are Few-Shot Learners https://link.zhihu.com/?target=https%3A//arxiv.org/pdf/2005.14165.pdf
[3] LaMDA: Language Models for Dialog Applications:https://arxiv.org/pdf/2201.08239.pdf
[4] Jurassic-1: Technical Details and Evaluation https://uploads-ssl.webflow.com/60fd4503684b466578c0d307/61138924626a6981ee09caf6_jurassic_tech_paper.pdf
[5] Using DeepSpeed and Megatron to Train Megatron-Turing NLG 530B, the World’s Largest and Most Powerful Generative Language Model https://arxiv.org/pdf/2201.11990.pdf
[6] Scaling Language Models: Methods, Analysis & Insights from Training Gopher https://storage.googleapis.com/deepmind-media/research/language-research/Training%20Gopher.pdf
[7] Training Compute-Optimal Large Language Models https://arxiv.org/pdf/2203.15556.pdf
[8] PaLM: Scaling Language Modeling with Pathways https://arxiv.org/pdf/2204.02311.pdf
[9] Pathways: Asynchronous Distributed Dataflow for ML https://arxiv.org/pdf/2203.12533.pdf
[10] Transcending Scaling Laws with 0.1% Extra Compute https://arxiv.org/pdf/2210.11399.pdf
[11] UL2: Unifying Language Learning Paradigms https://arxiv.org/pdf/2205.05131.pdf
[12] OPT: Open Pre-trained Transformer Language Models https://arxiv.org/pdf/2205.01068.pdf
[13] LLaMA: Open and Efficient Foundation Language Models https://arxiv.org/pdf/2302.13971v1.pdf
[14] BLOOM: A 176B-Parameter Open-Access Multilingual Language Model https://arxiv.org/pdf/2211.05100.pdf
[15] GLM-130B: An Open Bilingual Pre-Trained Model https://arxiv.org/pdf/2210.02414.pdf
[16] ERNIE 3.0 Titan: Exploring Larger-scale Knowledge Enhanced Pre-training for Language Understanding and Generation https://arxiv.org/pdf/2112.12731.pdf
[17] ERNIE 3.0: Large-scale Knowledge Enhanced Pre-training for Language Understanding and Generation https://arxiv.org/pdf/2107.02137.pdf
[18] Is Prompt All You Need? No. A Comprehensive and Broader View of Instruction Learning https://arxiv.org/pdf/2303.10475v2.pdf
[19] T0 Multitask Prompted Training Enables Zero-Shot Task Generalization https://arxiv.org/pdf/2110.08207.pdf
[20] Finetuned Language Models Are Zero-shot Learners https://openreview.net/pdf?id=gEZrGCozdqR
[21] Scaling Instruction-Finetuned Language Models https://arxiv.org/pdf/2210.11416.pdf
[22] Crosslingual Generalization through Multitask Finetuning https://arxiv.org/pdf/2211.01786.pdf
[23] GPT-3.5 https://platform.openai.com/docs/models/gpt-3-5
[24] Evaluating Large Language Models Trained on Code https://arxiv.org/pdf/2107.03374.pdf
[25] Training language models to follow instructions with human feedback https://arxiv.org/pdf/2203.02155.pdf
[26] OpenAI Blog: Introducting ChatGPT https://openai.com/blog/chatgpt
[27] mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer
[28] OpenAI Blog: GPT-4 https://openai.com/research/gpt-4
[29] Alpaca: A Strong, Replicable Instruction-Following Model https://crfm.stanford.edu/2023/03/13/alpaca.html
[30] ChatGLM:千億基座的對話模型開啟內測 https://chatglm.cn/blog
[31] UC伯克利發布大語言模型排行榜
[32] https://zhuanlan.zhihu.com/p/624918286
[33] https://xv44586.github.io/2023/03/10/llm-inf/
[34] 大語言模型調研匯總
[45] Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer https://arxiv.org/pdf/1910.10683.pdf
[46] 論文解讀 Chinese-LLaMA-Alpaca 中文版大語言模型
[47] 預訓練技術及應用. 華菁云 瀾舟科技 算法研究員
[48] 華佗 HuaTuo: Tuning LLaMA Model with Chinese Medical Knowledge
PDF: https://arxiv.org/pdf/2304.06975v1.pdf
Code: https://github.com/scir-hi/huatuo-llama-med-chinese
[49] 極低資源條件下如何微調大模型:LoRA模型思想與BLOOM-LORA代碼實現分析
[50] 大模型主流微調范式、性能對比與開源項目匯總:也看Freeze、P-Tuning、Lora、full-Finetune開源實現
[51] 大模型訓練之微調篇(理解篇+代碼篇)
[52] 使用Alpaca-Lora基于LLaMA(7B)二十分鐘完成微調,效果比肩斯坦福羊駝
[53] llama.cpp量化部署Chinese-LLaMA-Alpaca
[54] Prompt-Tuning——深度解讀一種新的微調范式
[55] Prompt Learning全面梳理掃盲.阿里算法工程師
[56] 解密Prompt系列3. 凍結LM微調Prompt: Prefix-Tuning & Prompt-Tuning & P-Tuning
[57] P-tuning:自動構建模版,釋放語言模型潛能.蘇神2021
[58] 深入理解LLaMA, Alpaca, ColossalChat 系列模型
[59] ChatGPT成功做對了這4步丨愛丁堡大學符堯
[60] 一文搞懂模型量化
[61] https://github.com/huggingface/peft/blob/main/examples/int8_training/peft_bnb_whisper_large_v2_training.ipynb
[62] Alpaca: A Strong, Replicable Instruction-Following Model.Standford U
[63] 如何訓練一個更好的語言模型
總結
以上是生活随笔為你收集整理的【LLM大模型】模型和指令微调方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win7下IIS安装PHP环境
- 下一篇: 50道面试精选