30-如何使用 PEFT库 中 LoRA?.pdf

30-如何使用 PEFT库 中 LoRA?.pdf_第1页
30-如何使用 PEFT库 中 LoRA?.pdf_第2页
30-如何使用 PEFT库 中 LoRA?.pdf_第3页
如何使用PEFT库中LoRA?来自:AiGC面试宝典宁静致远2024年01月28日10:12一、前言本文章主要介绍使用LoRA对大模型进行高效参数微调,涉及内容:涉及框架•如何使用PEFT库中LoRA?•一、前言•二、如何配置LoraConfig?•三、模型加入PEFT策略•3.1模型加载策略有哪些?•3.2模型显存占用的部分有哪些?•3.3模型显存占用优化策略?•3.3.18bit量化优化策略?•3.3.2梯度检查优化策略?•3.4如何向模型加入PEFT策略?•四、PEFT库中LoRA模块代码介绍•4.1PEFT库中LoRA模块整体实现思路•4.2PEFT库中LoRA模块_find_and_replace()实现思路•4.3PEFT库中Lora层的实现思路•4.3.1基类LoraLayer实现•4.3.2Linear实现•五、使用LoRA对大模型进行高效参数微调,如何进行存储?•六、使用LoRA对大模型进行推理,如何进行加载?•七、huggingface大模型如何加载多个LoRA并随时切换?•参考1.PEFT库中LoRA模块使用;2.PEFT库中LoRA模块代码介绍;3.在推理时如何先进行weight的合并在加载模型进行推理;#以下配置可能会随时间变化,出了问题就去issue里面刨吧#要相信你不是唯一一个大冤种!accelerateappdirsloralibbitsandbytesblackblack[jupyter]datasetsfiretransformers>=4.28.0扫码加查看更多二、如何配置LoraConfig?注意:target_modules中的作用目标名在不同模型中的名字是不一样的。query_key_value是在ChatGLM中的名字三、模型加入PEFT策略3.1模型加载策略有哪些?模型加载虽然很简单,这里涉及到2个时间换空间的大模型显存压缩技巧,主要说下load_in_8bit和prepare_model_for_int8_training。git+https://github.com/huggingface/peft.gitsentencepiecegradiowandbcpm-kernel#设置超参数及配置LORA_R=8LORA_ALPHA=16LORA_DROPOUT=0.05TARGET_MODULES=["q_proj","v_proj",]config=LoraConfig(r=LORA_R,lora_alpha=LORA_ALPHA,target_modules=TARGET_MODULES,lora_dropout=LORA_DROPOUT,bias="none",task_type="CAUSAL_LM",)•参数介绍:•r:lora的秩,矩阵A和矩阵B相连接的宽度,r<

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

发表评论取消回复

参与评论可获取积分奖励  
微风舍
实名认证
内容提供者

微风舍,风起于青萍之末,浪成于微澜之间,舍是漏舍,唯吾德馨。

确认删除?