下面给你一份 Windows 本地把 HuggingFace 模型下载 → 合并转换为 GGUF → 量化 Q4_K_M → 测试运行 的完整教程。你这台 RTX 4080 Super 16GB 跑 8B 模型很合适,建议最终量化成 Q4_K_M / Q5_K_M。
注意:
llama.cpp当前要求模型使用 GGUF 格式,HF 模型一般需要用convert_hf_to_gguf.py转换。官方仓库也说明,非 GGUF 格式模型可用仓库里的convert_*.py脚本转换。(GitHub)
HuggingFace 官方也推荐通过 CLI 下载仓库文件到本地目录。(Hugging Face)
一、准备环境
1. 安装 Git
先安装 Git:
git --version
能显示版本号就行,例如:
git version 2.xx.x
没有安装就去安装 Git for Windows。
2. 安装 Python
建议安装:
Python 3.10 / 3.11
检查:
python --version
pip --version
如果 python 不识别,试试:
py --version
3. 安装 HuggingFace CLI
pip install -U huggingface_hub
检查:
huggingface-cli --help
如果提示找不到命令,可以用:
python -m huggingface_hub.commands.huggingface_cli --help
二、下载 HF 模型
你要下载的模型是:
aifeifei798/llama3-8B-DarkIdol-2.3-Uncensored-32K
建议新建一个工作目录,比如:
mkdir D:\AIModels
cd /d D:\AIModels
然后下载:
huggingface-cli download aifeifei798/llama3-8B-DarkIdol-2.3-Uncensored-32K --local-dir DarkIdol-HF
如果你原来的命令能用,也可以继续用:
huggingface-cli download aifeifei798/llama3-8B-DarkIdol-2.3-Uncensored-32K --local-dir DarkIdol-HF --local-dir-use-symlinks False
不过新版 huggingface_hub 里,--local-dir-use-symlinks 相关行为可能已经不推荐依赖,所以优先用第一条更简洁。
下载完成后,目录大概应该有这些文件:
DarkIdol-HF/
├─ config.json
├─ generation_config.json
├─ tokenizer.json
├─ tokenizer_config.json
├─ special_tokens_map.json
├─ model-00001-of-000xx.safetensors
├─ model-00002-of-000xx.safetensors
└─ ...
如果模型需要登录授权,先执行:
huggingface-cli login
然后粘贴你的 HuggingFace Token。
三、下载 llama.cpp
进入你的模型工作目录:
cd /d D:\AIModels
克隆 llama.cpp:
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
安装转换依赖:
pip install -r requirements.txt
官方 llama.cpp 仓库中提供了 convert_hf_to_gguf.py 这类转换脚本,用来把 HuggingFace 模型转换成 GGUF。(GitHub)
四、编译 llama.cpp 工具
新版 llama.cpp 推荐用 CMake 编译。
方案 A:Windows 普通 CPU 编译
在 llama.cpp 目录下执行:
cmake -B build
cmake --build build --config Release
编译完成后,工具一般在:
llama.cpp\build\bin\Release\
你需要重点找这几个文件:
llama-cli.exe
llama-quantize.exe
llama-server.exe
方案 B:NVIDIA 显卡 CUDA 编译
你的 RTX 4080 Super 建议用 CUDA 版,速度更好。
先确保你装了:
NVIDIA 驱动
CUDA Toolkit
Visual Studio Build Tools
CMake
然后执行:
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release
如果成功,后面运行模型时就可以用 GPU 加速。
五、转换 HF 模型为 F16 GGUF
现在你的目录结构应该类似:
D:\AIModels\
├─ DarkIdol-HF\
└─ llama.cpp\
进入 llama.cpp:
cd /d D:\AIModels\llama.cpp
执行转换:
python convert_hf_to_gguf.py ../DarkIdol-HF --outtype f16 --outfile ../DarkIdol-F16.gguf
完成后会生成:
D:\AIModels\DarkIdol-F16.gguf
这个文件会比较大,8B 模型的 F16 GGUF 通常在 15GB 左右。如果你的硬盘空间不够,至少准备:
模型 HF 原始文件:约 15GB+
F16 GGUF:约 15GB+
Q4_K_M GGUF:约 4GB~6GB
临时空间:建议再留 10GB+
所以总空间建议至少:
50GB 以上
六、量化成 Q4_K_M
进入编译后的目录:
cd /d D:\AIModels\llama.cpp\build\bin\Release
执行量化:
llama-quantize.exe ../../../DarkIdol-F16.gguf ../../../DarkIdol-Q4_K_M.gguf Q4_K_M
如果你不确定相对路径是否正确,也可以直接用绝对路径:
llama-quantize.exe D:\AIModels\DarkIdol-F16.gguf D:\AIModels\DarkIdol-Q4_K_M.gguf Q4_K_M
量化完成后会得到:
D:\AIModels\DarkIdol-Q4_K_M.gguf
七、不同量化格式怎么选
常用推荐如下:
| 格式 | 体积 | 质量 | 速度 | 推荐场景 |
|---|---|---|---|---|
| F16 | 最大 | 最高 | 慢/占显存 | 保存母版,不建议日常跑 |
| Q8_0 | 较大 | 很高 | 中等 | 质量优先 |
| Q6_K | 中大 | 很高 | 中等 | 16GB 显存可考虑 |
| Q5_K_M | 中等 | 高 | 快 | 质量和体积平衡 |
| Q4_K_M | 小 | 较好 | 快 | 最推荐日常使用 |
| Q3_K_M | 更小 | 一般 | 快 | 显存/内存很紧张 |
| Q2_K | 最小 | 损失明显 | 快 | 不太推荐 |
你的 RTX 4080 Super 16GB,8B 模型建议:
首选:Q4_K_M
更高质量:Q5_K_M
极限质量:Q6_K / Q8_0
如果你只是自己本地聊天、接入 Ollama、LM Studio、Jan、llama.cpp,建议先做:
DarkIdol-Q4_K_M.gguf
然后再补一个:
DarkIdol-Q5_K_M.gguf
八、测试 GGUF 模型是否可用
进入:
cd /d D:\AIModels\llama.cpp\build\bin\Release
CPU 测试:
llama-cli.exe -m D:\AIModels\DarkIdol-Q4_K_M.gguf -p "你好,请介绍一下你自己。" -n 256
CUDA 显卡加速测试:
llama-cli.exe -m D:\AIModels\DarkIdol-Q4_K_M.gguf -p "你好,请介绍一下你自己。" -n 256 -ngl 999
参数解释:
-m 模型路径
-p 提示词
-n 最大生成 token 数
-ngl 放到 GPU 的层数,999 通常表示尽量全放 GPU
九、启动本地 API 服务
如果你想让软件、网页、客户端调用,可以启动 llama-server:
llama-server.exe -m D:\AIModels\DarkIdol-Q4_K_M.gguf -c 8192 -ngl 999 --host 127.0.0.1 --port 8080
然后一般可以访问:
http://127.0.0.1:8080
参数解释:
-c 8192 上下文长度
-ngl 999 尽量使用 GPU
--host 监听地址
--port 端口
如果你想开放给局域网其他电脑调用,可以用:
llama-server.exe -m D:\AIModels\DarkIdol-Q4_K_M.gguf -c 8192 -ngl 999 --host 0.0.0.0 --port 8080
十、导入 Ollama 使用
如果你想用 Ollama 跑这个 GGUF,需要创建一个 Modelfile。
新建文件:
D:\AIModels\DarkIdol-Modelfile
内容写:
FROM D:\AIModels\DarkIdol-Q4_K_M.gguf
PARAMETER temperature 0.7
PARAMETER top_p 0.9
PARAMETER num_ctx 8192
TEMPLATE """{{ .Prompt }}"""
然后执行:
ollama create darkidol -f D:\AIModels\DarkIdol-Modelfile
运行:
ollama run darkidol
如果要给你的软件调用,Ollama 默认 API 通常是:
http://127.0.0.1:11434
十一、推荐完整命令合集
你可以直接按这个流程走:
mkdir D:\AIModels
cd /d D:\AIModels
pip install -U huggingface_hub
huggingface-cli download aifeifei798/llama3-8B-DarkIdol-2.3-Uncensored-32K --local-dir DarkIdol-HF
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
pip install -r requirements.txt
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release
python convert_hf_to_gguf.py ../DarkIdol-HF --outtype f16 --outfile ../DarkIdol-F16.gguf
cd build\bin\Release
llama-quantize.exe D:\AIModels\DarkIdol-F16.gguf D:\AIModels\DarkIdol-Q4_K_M.gguf Q4_K_M
llama-cli.exe -m D:\AIModels\DarkIdol-Q4_K_M.gguf -p "你好,请介绍一下你自己。" -n 256 -ngl 999
十二、常见报错处理
1. huggingface-cli 下载太慢
可以尝试:
set HF_HUB_ENABLE_HF_TRANSFER=1
pip install hf_transfer
然后重新下载。
或者使用代理:
set HTTP_PROXY=http://127.0.0.1:7890
set HTTPS_PROXY=http://127.0.0.1:7890
端口根据你的代理软件实际端口修改。
2. convert_hf_to_gguf.py 找不到
说明你可能在错误目录,先检查:
dir convert_hf_to_gguf.py
正确位置应该在:
D:\AIModels\llama.cpp\convert_hf_to_gguf.py
3. llama-quantize.exe 找不到
编译后找一下:
dir /s llama-quantize.exe
通常在:
llama.cpp\build\bin\Release\llama-quantize.exe
有些版本可能在:
llama.cpp\build\bin\llama-quantize.exe
4. CUDA 编译失败
先用 CPU 编译:
cmake -B build
cmake --build build --config Release
能成功后再折腾 CUDA。
也可以清理重新编译:
rmdir /s /q build
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release
5. 显存不够
降低上下文长度:
-c 4096
或者换更小量化:
Q4_K_M
Q3_K_M
8B 的 Q4_K_M 在 16GB 显存上一般没什么压力。
十三、最终建议
你这个模型是 Llama3 8B 32K 上下文模型,我建议你最终保留三个文件:
DarkIdol-HF 原始 HF 模型,可备份
DarkIdol-F16.gguf 母版 GGUF,用于以后重新量化
DarkIdol-Q4_K_M.gguf 日常使用版本
如果硬盘空间紧张,可以保留:
DarkIdol-Q4_K_M.gguf
DarkIdol-F16.gguf
原始 DarkIdol-HF 可以删除,后面需要再从 HuggingFace 下载。