Lora训练的safetensor模型合并成GGUF

在上一期博客中,我们介绍了如何进行lora训练,
LLM语言模型Lora微调

本期我们介绍如何合并训练后的模型

训练后的模型

使用perft训练后,lora模型和基础模型是两个safetenser文件,

这是lora的文件:

这是基础模型文件:

合并lora文件

使用perft可以直接合并lora和基础模型,形成一个safetenser文件

python 复制代码
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel


output_path  = "./lora_adapter_merge"

# 加载原下载路径的tokenizer和model
tokenizer = AutoTokenizer.from_pretrained("./Qwen/Qwen3-1___7B", use_fast=False, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("./Qwen/Qwen3-1___7B", device_map="auto", torch_dtype=torch.bfloat16)

# 加载lora模型
model = PeftModel.from_pretrained(model, model_id="./lora_adapter/")


print("Applying the LoRA")
model = model.merge_and_unload()

print(f"Saving the target model to {output_path}")
model.save_pretrained(output_path)
tokenizer.save_pretrained(output_path)

下面就是合并后的输出,

合并结果

接下来是形成gguf文件

安装llamacpp

要合并成GGUF需要用到lammacpp这个库.

下载官方库

llama官方库位置:
官方库

我们直接下载zip文件到本地,

下载到本地之后进行解压成一个目录

准备python虚拟环境

从最佳实践来看最好在一个虚拟python环境中安装依赖,避免污染全局环境.

如何安装python虚拟环境请参考这篇文章里面的相关步骤
虚拟环境连接,需要忽略安装VLLM的这个步骤

安装依赖.

llamacpp自带的依赖文件里面会强制指定torch的版本,这个torch版本回合电脑本地的环境产生冲突,我们可以打开requirements这个文件夹,然后打开requirements-convert_hf_to_gguf,注释掉里面的torch依赖,自己手动在虚拟环境中安装pytorch依赖

安装pytorch需要匹配自己的机器的显卡硬件,显卡驱动,英伟达还要匹配cuda版本,准备pytorch环境也是一个复杂的工作.

最后

在llamacpp的根目录执行下方的命令安装依赖

bash 复制代码
pip install -r requirements.txt

转换

bash 复制代码
python llama.cpp/convert_hf_to_gguf.py 合并后模型的文件夹  --outtype f16 --verbose --outfile 想要输出的gguf文件

文件中的outtype需要根据模型的情况做变更.

相关推荐
Mid_search1 小时前
随机排列与Fisher-Yates算法
人工智能·深度学习·强化学习·随机排列·fisher-yates
ZGIAI5 小时前
ZGI Workflow:条件分支走错时先查哪一层
人工智能·架构
X54先生(人文科技)5 小时前
《元创力》纪实录 · 桥段 《窑变纪元:一份来自星历2227年的深空考古笔记》
人工智能·开源·ai写作·零知识证明
ZGIAI5 小时前
ZGI 文件产物:生成报告后怎样交付
人工智能·架构
东方-教育技术博主6 小时前
自动编码在教育场景中的重要性:一项基于多源证据的深度综述
大数据·人工智能
骥龙6 小时前
模块二:Ollama本地模型部署与OpenCode代理配置
人工智能
阡之尘埃6 小时前
Python数据分析案例85——大模型微调全流程(SFT的LoRA微调)
人工智能·python·深度学习·语言模型·llm·微调·千问
Regentsoft丽晶软件6 小时前
品牌方新品上市促销政策无法实时同步经销商,有没有支持总部-经销商-终端一站式的分销解决方案?
人工智能·经验分享·数据库架构
liuqs3326 小时前
机器人产业加速发展,制造业正在迎来新的自动化探索
大数据·人工智能
腾讯云大数据6 小时前
DataBuddy数据语义驱动的企业Agent Runtime实践
大数据·人工智能·腾讯云·agent