5.llama.cpp编译及使用

llama.cpp的编译及使用

下载源码

安装依赖库

  • cmake 编译:版本稍高一些,我的是3.22

编译

支持cuda

复制代码
cd llama.cpp
mkdir build
cd build
cmake .. -DLLAMA_CUBLAS=ON
make -j8

最后在build/bin目录下生成

下载模型

模型量化

模型量化的python代码在llama.cpp下面找到。在硬件资源有限的情况下才对模型进行量化。

在build/bin找到quantize

在较新版本默认生成的是ggml-model-f16.gguf

  • 模型量化
    quantize the model to 4-bits (using q4_0 method) 进一步对FP16模型进行4-bit量化

    ./quantize ./models/llama-2-7b-hf/ggml-model-f16.bin ./models/llama-2-7b-hf/ggml-model-q4_0.bin q4_0

模型推理

在build/bin找到main

复制代码
./main -ngl 30 -m ./models/llama-2-7b-hf/ggml-model-q4_0.bin --color -f  ./prompts/chat-with-vicuna-v0.txt -ins -c 2048 --temp 0.2 -n 4096 --repeat_penalty 1.0

Linly模型

自己动手处理

运行测试

  • 测试用脚本

    #!/bin/bash

    llama 推理

    #./main -ngl 30 -m ./models/7B/ggml-model-alpaca-7b-q4_0.gguf --color -f ./prompts/chat-with-vicuna-v0.txt -ins -c 2048 --temp 0.2 -n 4096 --repeat_penalty 1.3

    linly 基础模型

    #./main -ngl 30 -m ./models/7B/linly-ggml-model-q4_0.bin --color -f ./prompts/chat-with-vicuna-v0.txt -ins -c 2048 --temp 0.2 -n 4096 --repeat_penalty 1.0

    linly chatflow模型

    ./main -ngl 30 -m ./models/chatflow_7b/linly-chatflow-7b-q4_0.bin --color -f ./prompts/chat-with-vicuna-v0.txt -ins -c 2048 --temp 0.2 -n 4096 --repeat_penalty 1.0

    whisper llama

    #./whisper/talk-llama -l zh -mw ./models/ggml-small_q4_0.bin -ml ./models/7B/ggml-model-alpaca-7b-q4_0.gguf -p "lfrobot" -t 8 -c 0 -vth 0.6 -fth 100 -pe

  • 参数说明
    比较重要的参数:

    -ins 启动类ChatGPT的对话交流模式
    -f 指定prompt模板,alpaca模型请加载prompts/alpaca.txt 指令模板
    -c 控制上下文的长度,值越大越能参考更长的对话历史(默认:512)
    -n 控制回复生成的最大长度(默认:128)
    --repeat_penalty 控制生成回复中对重复文本的惩罚力度
    --temp 温度系数,值越低回复的随机性越小,反之越大
    --top_p, top_k 控制解码采样的相关参数
    -b 控制batch size(默认:512)
    -t 控制线程数量(默认:8),可适当增加
    -ngl 使用cuda核心数
    -m 指定模型

相关推荐
AI自动化工坊1 天前
Google LiteRT-LM生产级部署指南:如何在边缘设备实现高效LLM推理?
人工智能·ai·llama
gergul2 天前
在llama-cpp-python中使用自己编译的llama.cpp,解决pip install llama-cpp-python报错
python·llama·llama.cpp·llamacpppython
黑牛儿2 天前
零成本!Ollama本地部署国产大模型全指南(支持Kimi-K2.5/GLM-5/Qwen,新手秒上手)
ai·llama
奇思智算3 天前
LLaMA/Bert/扩散模型微调GPU选型及租用指南
人工智能·bert·llama
xingyuzhisuan3 天前
LoRA微调实战:8卡4090服务器如何高效微调LLaMA?
运维·服务器·llama·gpu算力
yumgpkpm4 天前
华为昇腾910B上用Kubernetes(K8s)部署LLM和用Docker部署LLM的区别
docker·chatgpt·容器·stable diffusion·kubernetes·llama·gpu算力
yumgpkpm4 天前
华为昇腾910B上用Kubernetes(K8s)部署LLM(Qwen3-32B)的详细步骤,保姆级命令及方法、下载链接等
运维·服务器·华为·stable diffusion·aigc·copilot·llama
YanDDDeat4 天前
【大模型微调】基于 Llama3-8B 的 LoRA 微调专有领域QA 问答对生成模型
python·语言模型·llama
tinygone4 天前
OpenClaw之Memory配置成本地模式,Ubuntu+CUDA+cuDNN+llama.cpp
人工智能·ubuntu·llama
建行一世4 天前
【Windows笔记本大模型“傻瓜式”教程】使用LLaMA-Factory工具来完成对Windows笔记本大模型Qwen2.5-3B-Instruct微调
windows·ai·语言模型·llama