clearwind

clearwind

首页
分类
登录 →
clearwind

clearwind

首页 分类
登录
  1. 首页
  2. 🚀AI
  3. LLaMA-Factory 导出GGUF 部署Ollama

LLaMA-Factory 导出GGUF 部署Ollama

0
  • 🚀AI
  • 发布于 2025-01-09
  • 137 次阅读
clearwind
clearwind

相关阅读

http://zxse.cn/archives/1736429562536http://zxse.cn/archives/1736070146499

GGUF 是 https://github.com/ggerganov/llama.cpp 设计的大模型存储格式,可以对模型进行高效的压缩,减少模型的大小与内存占用,从而提升模型的推理速度和效率。

graph LR subgraph 准备gguf格式文件 A[合并LoRA模型] --> B[安装gguf库] B --> C[使用llama.cpp转换脚本将训练后的完整模型转换为gguf格式] end subgraph 在Ollama环境中启动模型 D[安装Ollama软件] --> E[注册要部署的模型文件] E --> F[启动Ollama] end C --> D

lora模型合并

参考相关阅读

安装gguf库

git clone https://github.com/ggerganov/llama.cpp.git
cd llama.cpp/gguf-py
pip install --editable .

格式转换

返回 llama.cpp 项目根目录,会有一个官方提供的 convert-hf-to-gguf.py 脚本,用于完成huggingface格式到gguf格式的转换。

cd ..
python convert-hf-to-gguf.py /home/codingma/code/LLaMA-Factory/megred-model-path

# 如果不量化,保留模型的效果
python convert_hf_to_gguf.py ./Meta-Llama-3-8B-Instruct --outtype f16 --verbose --outfile Meta-Llama-3-8B-Instruct-gguf.gguf

# 如果需要量化(加速并有损效果),直接执行下面脚本就可以
python convert_hf_to_gguf.py ./Meta-Llama-3-8B-Instruct --outtype q8_0 --verbose --outfile Meta-Llama-3-8B-Instruct-gguf_q8_0.gguf

这里--outtype是输出类型,代表含义:

  • q2_k:特定张量(Tensor)采用较高的精度设置,而其他的则保持基础级别。

  • q3_k_l、q3_k_m、q3_k_s:这些变体在不同张量上使用不同级别的精度,从而达到性能和效率的平衡。

  • q4_0:这是最初的量化方案,使用 4 位精度。

  • q4_1 和 q4_k_m、q4_k_s:这些提供了不同程度的准确性和推理速度,适合需要平衡资源使用的场景。

  • q5_0、q5_1、q5_k_m、q5_k_s:这些版本在保证更高准确度的同时,会使用更多的资源并且推理速度较

慢。

  • q6_k 和 q8_0:这些提供了最高的精度,但是因为高资源消耗和慢速度,可能不适合所有用户。

  • fp16 和 f32: 不量化,保留原始精度。

Ollama安装

参考相关阅读https://ollama.com/download

注册要部署的模型文件

Ollama 对于要部署的模型需要提前完成本地的配置和注册, 和 Docker的配置很像

编写一个文件名为 Modelfile 的文件, 内容如下

FROM /home/codingma/code/LLaMA-Factory/megred-model-path

然后命令行注册该文件,设定该文件对应的模型名称, 这里设定 llama3-chat-merged

ollama create llama3-chat-merged -f Modelfile

因为LLaMA3的实现本身相对规范,所以Modelfile 的编写相对很简洁,反之对于其他一些模型,可能还需要在里面自主完成template prompt格式的注册,否则问答时会出现答非所问的情况。

启动Ollama

上面注册好后,即可通过ollma 命令 + 模型名称的方式,完成服务的启动

ollama run llama3-chat-merged

标签: #LLaMA-Factory 4 #llama 4
相关文章
简述 Transformer 训练计算过程(刷新渲染)

简述 Transformer 训练计算过程(刷新渲染) 2025-01-11 23:54

Step1-定义数据集 用于创建 ChatGPT 的数据集为 570 GB。假设数据集为一下内容: 白日依山尽,黄河入海流。 马无夜草不肥,人无横财不富。 天行健,君子以自强不息,地势坤,君子以厚德载物。 Step2-计算词汇量

基于Deepseek的AI试题问答

基于Deepseek的AI试题问答 2025-02-28 09:46

需求 项目目标‌ 构建一个基于大模型微调的AI试题问答系统,支持数学、历史、英语等多学科试题的智能解析、答案生成及知识点关联,适配考试场景的自动评分与错题分析功能‌。 核心功能需求‌ ‌试题交互与解析‌:支持选择、填空、判断、问答等题型交互,自动生成试题解析(含解题步骤与知识点标注)‌。 ‌智能查询

基于 internlm2 和 LangChain 搭建你的知识库

基于 internlm2 和 LangChain 搭建你的知识库 2025-02-27 14:25

环境配置 internlm2 模型部署 创建虚拟环境 conda create -n deepseek_rag python=3.10 -y conda activate deepseek_rag 并在环境中安装运行 demo 所需要的依赖 # 升级pip python -m pip install

xtuner微调大模型

xtuner微调大模型 2025-02-26 09:31

构建环境 # 创建虚拟环境 conda create --name xtuner-env python=3.10 -y conda activate xtuner-env # 安装xtuner git clone https://github.com/InternLM/xtuner.git cd

Llama-Factory 微调全过程

Llama-Factory 微调全过程 2025-01-13 22:28

数据集 数据集下载:通过ModelScope获取原始数据集https://modelscope.cn/datasets/w10442005/ruozhiba_qa/summary git clone https://www.modelscope.cn/datasets/w10442005/ruozh

矩阵分解 2025-01-11 15:48

矩阵分解是一种通过将较大的矩阵分解为多个小矩阵已降低计算复杂度的技术,在模型训练微调上,通常用于简化模型、提高训练效率。矩阵分解有多种形式,一下是几种常见的模型微调权重分解方法: 奇异值分解 将矩阵分解为三个矩阵乘积的方法: W=U \Sigma V^{T} 其中: W是原始权重矩阵。 U和V是正交

目录
  • clearwind
  • 微信小程序

导航菜单

  • 首页
  • 分类
Copyright © 2024 your company All Rights Reserved. Powered by clearwind.
皖ICP备19023482号