llama-cpp模型轻量化部署与量化

一、定义

  1. 定义
  2. 配置环境
  3. 遇到的问题,交互模式下模型一直输出,不会停止
  4. 模型量化
  5. Qwen1.5-7B 案例demo

二、实现

  1. 定义
    主要应用与cpu 上的部署框架。由c++完成。

  2. 配置环境
    https://github.com/ggerganov/llama.cpp
    https://github.com/echonoshy/cgft-llm/blob/master/llama-cpp/README.md
    安装:

    git clone https://github.com/ggerganov/llama.cpp
    cd llama.cpp

编译环境

复制代码
sudo apt update
sudo apt install cmake

cpu:
cmake -B build_cpu
cmake --build build_cpu --config Release

部署:

复制代码
cd /root/code/llama.cpp/build_cpu/bin/
#交互模式
./llama-cli -m /home/Llama3-8B-Chinese-Chat-GGUF/Llama3-8B-Chinese-Chat-q8_0-v2_1.gguf \
    -n -1 \
    -t 12 \                    #多线程
    --color \                 #输入有颜色
    -r "User:" \              #-r: 遇到User: 停止,等待输入
    --in-prefix " " \         #输入前缀
    -i \                      #交互模式
    -p \                      #输入prompt
'User: 你好
AI: 你好啊,我是光屿,要聊聊吗?
User: 好啊!
AI: 你想聊聊什么话题呢?
User:'

#接口模式
./llama-server \
    -m /home/Llama3-8B-Chinese-Chat-GGUF/Llama3-8B-Chinese-Chat-q8_0-v2_1.gguf \
    --host "0.0.0.0" \
    --port 8080 \
    -c 2048 \
    -ngl 128 \            
    --api-key "echo in the moon"


  1. 遇到的问题,交互模式下模型一直输出,不会停止,参数-r 不起作用

原因: 容器内不支持中文,添加上中文输入法,问题解决。

复制代码
安装语言包
apt update
apt install -y language-pack-zh-hans
设置环境变量
export LANG=zh_CN.UTF-8
启动终端
exec bash
  1. Qwen1.5-7B 案例demo

    1. 将qwen1.5 转为gguf

    python convert-hf-to-gguf.py /home/Qwen1.5_7b --outfile /home/Qwen1.5_7b-GGUF/Qwen1.5_7b_v1.gguf

量化

复制代码
cd llama.cpp/build_cuda/bin
./llama-quantize --allow-requantize /home/Qwen1.5_7b-GGUF/Qwen1.5_7b_v1.gguf /home/Qwen1.5_7b-GGUF/Qwen1.5_7b-q4_1-v1.gguf Q4_1
  1. 测试

    ./llama-cli -m /home/Qwen1.5_7b-GGUF/Qwen1.5_7b-q4_1-v1.gguf
    -n -1
    -ngl 256
    -t 12
    --color
    -r "user:"
    --in-prefix " "
    -i
    -p
    "user:: 你好
    AI: 你好啊,我是光屿,要聊聊吗?
    user: 好啊!
    AI: 你想聊聊什么话题呢?
    user:"

相关推荐
大模型最新论文速读3 天前
指令微调时,也要考虑提示损失
人工智能·深度学习·语言模型·自然语言处理·llama
liliangcsdn5 天前
在mac m1基于llama.cpp运行deepseek
人工智能·macos·语言模型·llama
强哥之神7 天前
Meta AI 推出 Multi - SpatialMLLM:借助多模态大语言模型实现多帧空间理解
人工智能·深度学习·计算机视觉·语言模型·自然语言处理·llama
try2find11 天前
安装llama-cpp-python踩坑记
开发语言·python·llama
西西弗Sisyphus12 天前
LLaMA-Factory 单卡后训练微调Qwen3完整脚本
微调·llama·llama-factory·后训练
顾道长生'12 天前
(Arxiv-2024)自回归模型优于扩散:Llama用于可扩展的图像生成
计算机视觉·数据挖掘·llama·自回归模型·多模态生成与理解
Zhijun.li@Studio21 天前
【LLaMA-Factory 实战系列】二、WebUI 篇 - Qwen2.5-VL 多模态模型 LoRA 微调保姆级教程
人工智能·自然语言处理·llama·多模态大模型
1213422 天前
LLM:重构数字世界的“智能操作系统”
gpt·aigc·ai编程·llama·gpu算力
冷雨夜中漫步1 个月前
Java中如何使用lambda表达式分类groupby
java·开发语言·windows·llama
扫地的小何尚1 个月前
全新NVIDIA Llama Nemotron Nano视觉语言模型在OCR基准测试中准确率夺冠
c++·人工智能·语言模型·机器人·ocr·llama·gpu