官方网站

https://github.com/ggml-org/llama.cpp

使用windows的编译exe

下载编译的文件

https://github.com/ggml-org/llama.cpp/releases

有GPU下载带cuda的
在这里插入图片描述

使用命令行工具llama-cli

解压文件后启动终端
输入以下查看可用的命令

llama-cli -h

在这里插入图片描述

启动模型

llama-cli.exe -m C:\xudawu\development\20260226_llamacpp_models\unsloth\Qwen3-4B-Thinking-2507-GGUF\Qwen3-4B-Thinking-2507-Q4_K_M.gguf -ngl 100

-m指定模型位置,如果模型很大有多个gguf切片,只需要给出一个剩下的会自动索引
-ngl指定模型加载到GPU的层数

在这里插入图片描述
直接测试对话
在这里插入图片描述

测试性能llama-bench

使用llama-bench.exe工具测试此电脑的性能

llama-bench.exe  -m C:\xudawu\development\20260226_llamacpp_models\unsloth\Qwen3-4B-Thinking-2507-GGUF\Qwen3-4B-Thinking-2507-Q4_K_M.gguf -ngl 100

输入512token的速度,和输出128token的速度
在这里插入图片描述

启动模型服务llama-server

llama-server.exe  -m C:\xudawu\development\20260226_llamacpp_models\unsloth\Qwen3-4B-Thinking-2507-GGUF\Qwen3-4B-Thinking-2507-Q4_K_M.gguf --ctx-size 16384 --host 0.0.0.0 --port 8080

--ctx-size 上下文长度,不设置则默认为0,从模型配置中加载上下文长度
--port 端口,默认为8080
-a 指定模型服务启动的名字,不设置则默认使用-m指定的文件名

启动成功

在这里插入图片描述

启动webui

进入指定的网址进入llama自带的web界面
在这里插入图片描述

启动多模态模型服务

下载视觉投影模型mmproj-BF16.gguf
在这里插入图片描述

启动模型服务

llama-server.exe  -m models/Qwen3.5-35B-A3B-GGUF/Qwen3.5-35B-A3B-Q4_K_M.gguf --mmproj models/Qwen3.5-35B-A3B-GGUF/mmproj-BF16.gguf --ctx-size 32768 --host 0.0.0.0 --port 8080

--mmproj models/Qwen3.5-35B-A3B-GGUF/mmproj-BF16.gguf指定multimodal projector的位置

获得所有模型

启动服务并指定模型文件夹地址

llama-server.exe --models-dir C:\xudawu\development\20260226_llamacpp_models\unsloth --sleep-idle-seconds 180

在这里插入图片描述
通过get请求可以获得可用模型
在这里插入图片描述
以下参数在服务器空闲多少秒时卸载模型

--sleep-idle-seconds

推荐创建一个bat文件方便一键启动

bat文件内容如下
文件名
1a_start_llama_server.bat

llama-server.exe --models-dir ../../models --ctx-size 65536 --host 127.0.0.1 --port 8080

--ctx-size 65536设置模型上下文长度为65536token
--models-dir ../../models使用当前目录的上两级目录中的models文件夹作为模型文件夹
其余参数不设置由llama.cpp进行自适应调整

其他形式脚本

mtp和mmproj

windows的cmd使用^换行

:: 切换路径到llamacpp中
cd ..
:: 启动模型服务
llama-server.exe --model ../../models/gemma-4-E4B-it-qat-q4_0/gemma-4-E4B-it-qat-UD-Q4_K_XL.gguf ^
	--ctx-size 65536 ^
	--host 127.0.0.1 ^
	--port 8080 ^
	--mlock ^
	--model-draft ../../models/gemma-4-E4B-it-qat-q4_0/mtp-gemma-4-E4B-it.gguf ^
	--spec-type draft-mtp ^
	--spec-draft-n-max 3 ^
	--alias gemma-4-E4B-it-qat-q4_0 ^
	--mmproj "C:\xudawu\development\models\gemma-4-E4B-it-qat-q4_0\mmproj-BF16.gguf"

文件夹做服务

:: 切换路径到llamacpp中
cd ..
:: 启动模型服务
llama-server.exe --models-dir ../../models --ctx-size 65536 --host 127.0.0.1 --port 8080 --mlock

官方文档

https://github.com/ggml-org/llama.cpp/blob/master/tools/server/README.md

使用docker

官方教程

https://github.com/ggml-org/llama.cpp/blob/master/docs/docker.md

选择这个镜像
在这里插入图片描述

启动容器服务

启动单个模型

docker run --name llama-server --gpus all -p 8080:8080 -v C:/xudawu/development/docker_data/llama_cpp/models:/models ghcr.io/ggml-org/llama.cpp:server-cuda -m /models/Qwen3.5-35B-A3B-Q4_K_M.gguf --ctx-size 32768 --host 0.0.0.0 --port 8080

推荐使用--ctx-size 32768设置固定上下文长度
而使用-fitc 32768设置最小上下文长度,启动模型时会自动检测可用显存然后拓展上下文长度,会增加显存占用和减慢模型首次启动速度

启动服务,模型按需加载

docker run --name llama-server --gpus all -p 8080:8080 -v C:/xudawu/development/docker_data/llama_cpp/models:/models" ghcr.io/ggml-org/llama.cpp:server-cuda --models-dir /models --sleep-idle-seconds 1800 --ctx-size 32768 --host 0.0.0.0 --port 8080

如果使用的是full-cuda的镜像

启动单个模型

docker run --name llama-server --gpus all -p 8080:8080 -v C:/xudawu/development/docker_data/llama_cpp/models:/models ghcr.io/ggml-org/llama.cpp:full-cuda --server -m /models/Qwen3.5-35B-A3B-Q4_K_M.gguf --ctx-size 32768 --host 0.0.0.0 --port 8080

启动服务,模型按需加载

docker run --name llama-server --gpus all -p 8080:8080 -v C:/xudawu/development/docker_data/llama_cpp/models:/models ghcr.io/ggml-org/llama.cpp:full-cuda --server --models-dir /models --sleep-idle-seconds 1800 --ctx-size 32768 --host 0.0.0.0 --port 8080

加载模型

POST /models/load

卸载模型

POST /models/unload

模型保存在内存中

不交换到磁盘

--mlock

.safetensors 格式模型量化为 GGUF 格式

官方教程

https://github.com/ggml-org/llama.cpp/blob/master/tools/quantize/README.md

在windows中启动linux系统

在终端中输入以下启动linux

wsl

拉取llama.cpp代码仓库

git clone https://github.com/ggml-org/llama.cpp.git

进入仓库

cd llama.cpp

安装依赖

pip install uv
uv pip install -r requirements.txt --index-strategy unsafe-best-match

开始转换

使用以下命令

python convert_hf_to_gguf.py --outfile gemma-4-E2B-it-bf16.gguf --outtype bf16 --remote google/gemma-4-E2B-it

使用已编译的llamacpp来执行量化,免除环境配置

在release中下载已编译好的版本

https://github.com/ggml-org/llama.cpp/releases

在这里插入图片描述

解压找到llama-quantize

在这里插入图片描述

学习用法

llama-quantize

在这里插入图片描述

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐