相关阅读
GGUF 是
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安装
参考相关阅读
注册要部署的模型文件
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