10 篇文章带有标签 “gguf”

llama.cpp 实战指南(Jetson Thor 平台):从源码编译到 GGUF 模型部署与性能基准测试

本文将介绍如何在 Jetson Thor 平台上编译、部署和测试 llama.cpp 项目中的 GGUF 格式的大模型。

源码编译

克隆 llama.cpp

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

CUDA GPU Compute Capability(计算能力)

计算能力(CC)定义了每种 NVIDIA GPU 架构的硬件特性支持的指令。在下表中查找您的GPU的计算能力。

编译

cmake -B build -DGGML_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES="110"
cmake --build build --config Release -j $(nproc)

模型部署

运行 llama-server

Qwen3-8B-GGUF

Jetson Thor 平台上 Qwen3 系列大模型性能基准测试分析

NVIDIA Jetson Thor 采用了 Blackwell 架构的 GPU。

性能基准测试分析

部署模型

vllm serve /models/Qwen/Qwen3-8B --served-model-name qwen3

运行性能基准测试

  • 高负载
vllm bench serve \
    --base-url http://localhost:8000 \
    --model qwen3 \
    --tokenizer /models/Qwen/Qwen3-8B \
    --dataset-name random \
    --random-input-len 2048 \
    --random-output-len 128 \
    --num-prompts 100 \
    --max-concurrency 8
  • 低负载

华为 Atlas 800I A2 大模型部署实战(十一):部署 OpenAI 开源模型 GPT-OSS

本文档详细介绍了如何在华为Atlas 800I A2推理服务器上部署OpenAI的GPT-OSS大型模型。下载GPT-OSS模型的GGUF版本,并提供了llama.cpp部署方式的安装与编译步骤。文档还深入阐述了llama-server的命令行参数,展示了如何配置模型参数以优化性能,最后通过实际测试验证了模型的部署效果,并分析了多次调用后性能下降的原因,表明了在NPU上进行LLM推理部署的复杂性及其性能考量

服务器配置

AI 服务器:华为 Atlas 800I A2 推理服务器

组件 规格
CPU 鲲鹏 920(5250)
NPU 昇腾 910B4(8X32G)
内存 1024GB
硬盘 系统盘:450GB SSDX2 RAID1
数据盘:3.5TB NVME SSDX4
操作系统 openEuler 22.03 LTS

模型下载

# 魔搭下载 OpenAI gpt-oss-20b-GGUF 模型
modelscope download --model ggml-org/gpt-oss-20b-GGUF --local_dir ggml-org/gpt-oss-20b-GGUF

OpenAI GPT-OSS 模型

ModelScope

HuggingFace

在 MLX 上使用 LoRA / QLoRA 微调 Text2SQL(七):MLX 微调的模型转换为 GGUF 模型

将 MLX 微调的模型转换为 GGUF 模型最大的意义是可以融入 GGUF 的生态系统,可以在更多的平台上使用。

LoRA 微调

大模型 Mistral-7B-v0.1

数据集 WikiSQL

修改脚本 mlx-examples/lora/data/wikisql.py

if __name__ == "__main__":
    # ......
    for dataset, name, size in datasets:
        with open(f"data/{name}.jsonl", "w") as fid:
            for e, t in zip(range(size), dataset):
                t = t[3:]
                json.dump({"text": t}, fid)
                fid.write("\n")

执行脚本 data/wikisql.py 生成数据集。

data/wikisql.py

安装 mlx-lm

pip install mlx-lm

微调

CodeGPT: 智能辅助编程

安装 InteliJ IDEA

安装 CodeGPT

打开 IntelliJ IDEA,选择 Settings 菜单,选择 Plugins,搜索 CodeGPT,点击 Install 安装。

配置 CodeGPT

这里访问的 OpenAI 服务是我自己搭建的,使用的是 FastChat + ChatGLM3-6B。

模型 GPT-3.5(4k)

  • Service: OpenAI Service
  • API Key: NULL
  • Model: GPT-3.5(4k)
    • 使用的模型名字是:gpt-3.5-turbo
  • Base host: http://172.16.33.66:8000

模型 GPT-4(32k)

  • Service: OpenAI Service
  • API Key: NULL
  • Model: GPT-4(32k)
    • 使用的模型名字是:gpt-4-32k
  • Base host: http://172.16.33.66:8000

模型 Deepseek Coder 7B

  • Service: LLaMA C/C++ Port (Free, Local)
  • Use pre-defined model
    • Model: Deepseek Coder (1B - 33B)
    • Model size: 7B
    • Quantization: 5-bit precision

模型缓存到 ~/.

使用 Ollama 构建本地聊天服务

Ollama

部署

ollama run llama2

通过 API 访问

curl http://localhost:11434/api/generate -d '{
  "model": "llama2",
  "prompt": "Why is the sky blue?",
  "stream": false
}'

ollama 帮助 ollama --help Large language model runner Usage: ollama [flags] ollama [command] Available Commands: serve Start ollama create Create a model from a Modelfile show Show information for a model run Run a model pull Pull a model from a registry push Push a model to a registry list List models cp Copy a model rm Remove a model help Help about any comman

使用 llama.cpp 构建本地聊天服务

llama.cpp

  • 纯 C/C++ 实现
  • Apple 芯片 ARM NEON, Accelerate, Metal
  • x86 架构 AVX, AVX2, AVX512
  • 混合F16/F32精度
  • 整数量化 2-bit, 3-bit, 4-bit, 5-bit, 6-bit, 8-bit
  • 后端支持 CUDA, Metal, OpenCL GPU

构建

❶ 克隆 [llama.cpp][llama.cpp] 仓库

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

❷ make

make -j

❸ 安装依赖

pip install -r requirements.txt

获得 Facebook LLaMA2 模型

可以从 TheBloke 下载已转换和量化的模型。

下载 GGUF 模型

huggingface-cli pip install huggingface_hub REPO_ID=TheBloke/Llama-2-7B-chat-GGUF FILENAME=llama-2-7b-chat.Q4_K_M.

GPT4All

下载 GPT4All 客户端(macOS)

下载模型

聊天

基于目录构建本地文档集合

本地服务

  1. 启用 API 服务器
  1. 打开服务聊天窗口

查看本地下载的模型 ll /Users/junjian/Library/Application\ Support/nomic.ai/GPT4All/*.gguf -rw-r--r--@ 1 junjian staff 44M 12 3 10:30 /Users/junjian/Library/Application Support/nomic.ai/GPT4All/all-MiniLM-L6-v2-f16.gguf -rw-r--r--@ 1 junjian staff 1.3G 12 3 12:53 /Users/junjian/Library/Application Support/nomic.ai/GPT4All/incomplete-nous-hermes-llama2-13b.Q4_0.gguf -rw-r--r--@ 1 junjian staff 3.8G 12 3 10:09 /Users/junjian/Library/Application Support/nomic.ai/GPT4All/mistral-7b-openorca.Q4_0.gguf -rw-r--r--@ 1 junjian staff 3.

在 MacBook Pro M2 Max 上测试 LLaMA

LLaMA

LLaMA-13B 在大多数基准上的表现优于 GPT-3(175B),LLaMA-65B 与最好的型号 Chinchilla-70B 和 PaLM-540B 具有竞争力。

克隆

git clone https://github.com/facebookresearch/llama
cd llama

下载模型

修改 download.sh,配置下载模型的 地址(PRESIGNED_URL)下载目录(TARGET_FOLDER)

vim download.sh
PRESIGNED_URL="https://agi.gpt4.org/llama/LLaMA/*"             # replace with presigned url from email
TARGET_FOLDER="./"             # where all files should end up
bash download.sh

llama.cpp

构建

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

拷贝 LLaMA 模型到当前目录 ls .