大模型部署工具 llama.cpp 介绍与安装使用_llama cpp
1. 大模型部署工具 llama.cpp
大模型的研究分为训练和推理两个部分。训练的过程,实际上就是在寻找模型参数,使得模型的损失函数最小化,推理结果最优化的过程。训练完成之后,模型的参数就固定了,这时候就可以使用模型进行推理,对外提供服务。
llama.cpp(https://github.com/ggerganov/llama.cpp) 主要解决的是推理过程中的性能问题。主要有两点优化:
-
llama.cpp 使用的是 C 语言写的机器学习张量库 ggml
-
llama.cpp 提供了模型量化的工具
计算类 Python 库的优化手段之一就是使用 C 重新实现,这部分的性能提升非常明显。另外一个是量化,量化是通过牺牲模型参数的精度,来换取模型的推理速度。llama.cpp 提供了大模型量化的工具,可以将模型参数从 32 位浮点数转换为 16 位浮点数,甚至是 8、4 位整数。
除此之外,llama.cpp 还提供了服务化组件,可以直接对外提供模型的 API 。
2. 使用 llama.cpp 量化模型
2.1 下载编译 llama.cpp
克隆代码,编译 llama.cpp
git clone https://github.com/ggerganov/llama.cpp``cd llama.cpp``make
在目录下会生成一系列可执行文件:
-
main:使用模型进行推理
-
quantize:量化模型
-
server:提供模型 API 服务
-
…
2.2 准备 llama.cpp 支持的模型
llama.cpp 支持转换的模型格式有 PyTorch 的 .pth 、huggingface 的 .safetensors 、还有之前 llama.cpp 采用的 ggmlv3。
在 huggingface 上找到合适格式的模型,下载至 llama.cpp 的 models 目录下。
git clone https://huggingface.co/4bit/Llama-2-7b-chat-hf ./models/Llama-2-7b-chat-hf
2.3 转换为 GGUF 格式
- 安装依赖
llama.cpp 项目下带有 requirements.txt 文件,直接安装依赖即可。
pip install -r requirements.txt
- 转换模型
python convert.py ./models/Llama-2-7b-chat-hf --vocabtype spm`` ``params = Params(n_vocab=32000, n_embd=4096, n_mult=5504, n_layer=32, n_ctx=2048, n_ff=11008, n_head=32, n_head_kv=32, f_norm_eps=1e-05, f_rope_freq_base=None, f_rope_scale=None, ftype=None, path_model=PosixPath('models/Llama-2-7b-chat-hf'))``Loading vocab file 'models/Llama-2-7b-chat-hf/tokenizer.model', type 'spm'``...``Wrote models/Llama-2-7b-chat-hf/ggml-model-f16.gguf
vocabtype 指定分词算法,默认值是 spm,如果是 bpe,需要显示指定。
2.4 开始量化模型
quantize 提供各种精度的量化。
./quantize`` ``usage: ./quantize [--help] [--allow-requantize] [--leave-output-tensor] model-f32.gguf [model-quant.gguf] type [nthreads]`` ` `--allow-requantize: Allows requantizing tensors that have already been quantized. Warning: This can severely reduce quality compared to quantizing from 16bit or 32bit` `--leave-output-tensor: Will leave output.weight un(re)quantized. Increases model size but may also increase quality, especially when requantizing`` ``Allowed quantization types:` `2 or Q4_0 : 3.56G, +0.2166 ppl @ LLaMA-v1-7B` `3 or Q4_1 : 3.90G, +0.1585 ppl @ LLaMA-v1-7B` `8 or Q5_0 : 4.33G, +0.0683 ppl @ LLaMA-v1-7B` `9 or Q5_1 : 4.70G, +0.0349 ppl @ LLaMA-v1-7B` `10 or Q2_K : 2.63G, +0.6717 ppl @ LLaMA-v1-7B` `12 or Q3_K : alias for Q3_K_M` `11 or Q3_K_S : 2.75G, +0.5551 ppl @ LLaMA-v1-7B` `12 or Q3_K_M : 3.07G, +0.2496 ppl @ LLaMA-v1-7B` `13 or Q3_K_L : 3.35G, +0.1764 ppl @ LLaMA-v1-7B` `15 or Q4_K : alias for Q4_K_M` `14 or Q4_K_S : 3.59G, +0.0992 ppl @ LLaMA-v1-7B` `15 or Q4_K_M : 3.80G, +0.0532 ppl @ LLaMA-v1-7B` `17 or Q5_K : alias for Q5_K_M` `16 or Q5_K_S : 4.33G, +0.0400 ppl @ LLaMA-v1-7B` `17 or Q5_K_M : 4.45G, +0.0122 ppl @ LLaMA-v1-7B` `18 or Q6_K : 5.15G, -0.0008 ppl @ LLaMA-v1-7B` `7 or Q8_0 : 6.70G, +0.0004 ppl @ LLaMA-v1-7B` `1 or F16 : 13.00G @ 7B` `0 or F32 : 26.00G @ 7B
执行量化命令
./quantize ./models/Llama-2-7b-chat-hf/ggml-model-f16.gguf ./models/Llama-2-7b-chat-hf/ggml-model-q4_0.gguf Q4_0`` ``llama_model_quantize_internal: model size = 12853.02 MB``llama_model_quantize_internal: quant size = 3647.87 MB``llama_model_quantize_internal: hist: 0.036 0.015 0.025 0.039 0.056 0.076 0.096 0.112 0.118 0.112 0.096 0.077 0.056 0.039 0.025 0.021
量化之后,模型的大小从 13G 降低到 3.6G,但模型精度从 16 位浮点数降低到 4 位整数。
大模型岗位需求
大模型时代,企业对人才的需求变了,AIGC相关岗位人才难求,薪资持续走高,AI运营薪资平均值约18457元,AI工程师薪资平均值约37336元,大模型算法薪资平均值约39607元。
掌握大模型技术你还能拥有更多可能性:
• 成为一名全栈大模型工程师,包括Prompt,LangChain,LoRA等技术开发、运营、产品等方向全栈工程;
• 能够拥有模型二次训练和微调能力,带领大家完成智能对话、文生图等热门应用;
• 薪资上浮10%-20%,覆盖更多高薪岗位,这是一个高需求、高待遇的热门方向和领域;
• 更优质的项目可以为未来创新创业提供基石。
可能大家都想学习AI大模型技术,也想通过这项技能真正达到升职加薪,就业或是副业的目的,但是不知道该如何开始学习,因为网上的资料太多太杂乱了,如果不能系统的学习就相当于是白学。为了让大家少走弯路,少碰壁,这里我直接把全套AI技术和大模型入门资料、操作变现玩法都打包整理好,希望能够真正帮助到大家。
读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用
零基础入门AI大模型
今天贴心为大家准备好了一系列AI大模型资源,包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
有需要的小伙伴,可以点击下方链接免费领取【保证100%免费】
1.学习路线图




如果大家想领取完整的学习路线及大模型学习资料包,可以扫下方二维码获取
👉2.大模型配套视频👈
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。(篇幅有限,仅展示部分)

大模型教程
👉3.大模型经典学习电子书👈
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。(篇幅有限,仅展示部分,公众号内领取)

电子书
👉4.大模型面试题&答案👈
截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。(篇幅有限,仅展示部分,公众号内领取)

大模型面试
**因篇幅有限,仅展示部分资料,**有需要的小伙伴,可以点击下方链接免费领取【保证100%免费】
**或扫描下方二维码领取 **

更多推荐



所有评论(0)