news 2026/5/14 16:34:26

从 Python 到 Ollama:将微调后的 Llama-3/Qwen 一键导出为 GGUF

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
从 Python 到 Ollama:将微调后的 Llama-3/Qwen 一键导出为 GGUF

从 Python 到 Ollama:将微调后的 Llama-3/Qwen 一键导出为 GGUF

摘要:在上一篇教程中,我们在 RTX 3090 上成功微调了 Llama-3。但现在的模型还“躺”在 Python 脚本里,不够通用。本文将教你如何利用Unsloth强大的导出功能,将微调后的模型转换为GGUF 格式,并导入到Ollama中。这样,你就可以在终端、Obsidian 插件或任何支持 Ollama 的工具中随时调用你的专属模型了!

关键词UnslothGGUFOllama模型导出量化


0. 为什么要做这一步?

微调后的模型通常是以LoRA Adapter (适配器)的形式存在的(文件夹里只有几百 MB)。要让它像一个独立模型一样运行(比如发给朋友,或者在没有 Python 环境的电脑上跑),我们需要做两件事:

  1. 合并 (Merge):把 LoRA 的“补丁”打回到 Base Model(底座)上。
  2. 量化与导出 (Quantize & Export):转换为llama.cpp生态通用的GGUF格式,通常使用 4bit (q4_k_m) 量化以平衡体积和性能。

好消息:Unsloth 框架原生支持这一步,只需几行代码,不需要复杂的make编译llama.cpp过程。


1. 环境确认

确保你处于我们之前的 Conda 环境中:

conda activate llm_learn

2. 编写导出脚本

在工作目录下新建export_to_ollama.py
我们将以Llama-3-8B为例(Qwen 同理,只需改路径)。

fromunslothimportFastLanguageModelimporttorch# 1. 加载微调后的模型# 这里的路径是我们上一篇教程保存 LoRA 的目录lora_model_path="lora_model_llama3"print(f" 正在加载 LoRA 模型:{lora_model_path}...")model,tokenizer=FastLanguageModel.from_pretrained(model_name=lora_model_path,max_seq_length=2048,dtype=None,load_in_4bit=True,)# 2. 执行导出# Unsloth 会自动处理合并、转换和量化# 导出为 q4_k_m (推荐,平衡速度和精度)print(" 正在合并并导出为 GGUF (q4_k_m)... 这可能需要几分钟...")model.save_pretrained_gguf("model_export",# 导出文件的存放目录tokenizer,quantization_method="q4_k_m",)print(" 导出完成!文件位于 model_export 目录下。")

3. 执行导出

运行脚本:

python export_to_ollama.py

执行过程解析

  1. 脚本会加载底座模型和你的 LoRA 权重。
  2. 自动下载必要的转换工具(如果是第一次运行)。
  3. 开始转换…(RTX 3090 上大约需要 3-5 分钟)。
  4. 最终在model_export目录下生成一个约5GB.gguf文件(文件名通常包含unslothq4_k_m字样)。

4. 导入 Ollama

假设你已经安装了 Ollama(如果没有,请运行curl -fsSL https://ollama.com/install.sh | sh)。

4.1 创建 Modelfile

model_export目录下创建一个名为Modelfile的文件:

# 这里的路径要替换成你实际生成的 gguf 文件名 FROM ./unsloth.Q4_K_M.gguf # 设置系统提示词 (System Prompt) SYSTEM """ 你是由 Soar 微调的 Llama-3 中文助手。请务必使用中文回答用户的问题。 """ # 设置参数 (可选) PARAMETER temperature 0.3 PARAMETER num_ctx 4096

4.2 导入模型

在终端中运行:

cdmodel_export ollama create my-llama3-cn -f Modelfile

等待进度条跑完,显示success即大功告成!


5. 见证奇迹

现在,你可以随时随地在终端呼叫你的模型了:

ollama run my-llama3-cn

测试输入

“Who are you?”

预期输出

“我是由开发者在 RTX 3090 上微调的 Llama-3 中文助手…”

恭喜!你已经完成了从模型训练模型产品化的完整闭环。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/13 7:26:57

每日 AI 评测速递来啦(12.23)

司南Daily Benchmark 专区今日上新! SGI-Bench 一个面向科学通用智能的评测基准,由 1,000 余个经专家精心策划的跨学科样本构成,灵感来源于《Science》杂志提出的 125 个重大科学问题。 https://hub.opencompass.org.cn/daily-benchmark-de…

作者头像 李华
网站建设 2026/5/14 4:46:19

Axelspace与Exolaunch签署多批次发射安排协议并计划发射新卫星

致力于“让太空变得触手可及”的领先微卫星公司Axelspace Corporation (“Axelspace”)欣然宣布,已与全球发射整合商及发射任务管理、卫星整合与卫星部署技术领军企业Exolaunch签署多批次发射协议(MLA)。 这份多批次发射协议将加速Axelspace的业务发展。其中&#x…

作者头像 李华
网站建设 2026/5/13 12:23:46

LongCat-Flash-Omni:美团的全模态大模型

在多模态浪潮加速的 2025 年,美团再次交出了一份令人惊艳的答卷。 继 LongCat-Flash-Chat 与 LongCat-Flash-Thinking 之后,LongCat 系列迎来了新成员——LongCat-Flash-Omni。 它不仅是美团 LongCat 团队在大语言模型之后的重要升级,更是开源…

作者头像 李华
网站建设 2026/5/10 7:47:19

应用层自定义协议

自定义协议和序列化面向字节流全双工自定义协议序列化IO模块socket封装ServerserviceCalClient完整代码接下来我们实现一个网络计算器功能。自定义协议和序列化 前面我们的UDP套接字编程和TCP套接字编程都实现了应用层,但没有实现协议。是否会疑惑有没有协议有何不…

作者头像 李华
网站建设 2026/5/14 6:47:24

8个AI论文工具,助继续教育学生轻松完成写作!

8个AI论文工具,助继续教育学生轻松完成写作! AI 工具如何让论文写作更高效 在当前的继续教育环境中,学生和科研工作者面临越来越多的写作任务,而传统的写作方式往往耗时耗力。随着 AI 技术的不断进步,AI 工具正逐渐成为…

作者头像 李华