llama.cpp 安装与使用指南

llama.cpp 安装与使用指南

最新在使用llama.cpp的开源框架,所以简单写一下安装过程以及相关的介绍。

llama.cpp 是一个高性能的开源推理框架,用于在 CPU 和 GPU 上运行 LLaMA
系列及其他兼容的 Transformer 模型。
它的特点是轻量、跨平台、可在无显卡的设备上运行,同时对显卡显存利用率很高。


1. 项目介绍

llama.cpp 主要功能: - 支持多种量化格式(Q4, Q5, Q8, Q2
等),显著减少显存占用。 - 支持
CPU、GPU(CUDA、Metal、OpenCL、Vulkan)等多种后端。 - 提供简单易用的 CLI
和 HTTP 服务接口。 - 支持大多数 Hugging Face 上的
LLaMA、Qwen、Mistral、Baichuan、ChatGLM 等模型(需转换为 GGUF 格式)。

项目地址:https://github.com/ggerganov/llama.cpp


2. 安装方法

2.1 使用预编译版本(推荐新手)

  1. Releases
    页面下载适配系统的二进制包(Windows/Linux/macOS)。
  2. 解压到目标目录。

测试是否可运行:

./llama-cli --help

2.2 从源代码构建(适合需要定制化)

依赖环境
  • Linux / macOS / Windows WSL
  • cmake(>= 3.20)
  • make
  • gcc / clang
  • CUDA Toolkit(如果需要 GPU 加速)
构建步骤(Linux / macOS)
# 克隆项目git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp # 创建构建目录mkdir build &&cd build # GPU 版本(CUDA) cmake ..-DLLAMA_CUBLAS=ON make -j$(nproc)# CPU 版本 cmake ..make -j$(nproc)

构建完成后会生成: - llama-cli:命令行推理工具 - llama-server:HTTP
API 服务 - quantize:模型量化工具


3. 模型准备

3.1 下载模型

可以从 Hugging Face 下载模型权重(需要科学上网),例如:

git lfs installgit clone https://huggingface.co/Qwen/Qwen2-7B 

3.2 转换为 GGUF 格式

llama.cpp 只能加载 GGUF 格式模型,需要用官方脚本转换:

python3 convert.py /path/to/model --outfile model.gguf 

3.3 量化模型(可选,减少显存)

./quantize model.gguf model-q4_0.gguf q4_0 

4. 启动 HTTP 服务

./llama-server -m ./model-q4_0.gguf --port9558 --gpu-layers 40

参数说明: - -m:模型路径 - --port:HTTP 服务端口 -
--gpu-layers:加载到 GPU 的层数(越多显存占用越高,推理更快)


5. 常见问题

Q1: CUDA 版本报错 libcublas.so not found

原因:CUDA Toolkit 未正确安装或路径未添加。 解决:

exportLD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

Q2: 显存不足

  • 尝试使用更低精度的量化(如 q4_0, q3_k_m)。
  • 减少 --gpu-layers 数值。

Q3: 端口占用

修改 --port 参数,或释放对应端口:

sudolsof-i:9558sudokill-9<pid>

6. 总结

llama.cpp
是运行大模型的轻量高效方案,不依赖重型推理框架,可以在几乎任何设备上运行。
如果你的目标是本地部署、低延迟推理,且显存有限,那么它非常适合你。

Read more

AI辅助架构设计:让快马平台智能生成多链imToken钱包开发方案与安全提示

AI辅助架构设计:让快马平台智能生成多链imToken钱包开发方案与安全提示 开发一个支持多链的去中心化钱包应用确实是个复杂工程,尤其是像imToken这样的成熟产品,需要考虑的细节非常多。最近我在尝试用InsCode(快马)平台的AI辅助功能来梳理这类项目的架构设计,发现它能提供不少实用建议,下面分享下我的实践心得。 1. 项目目录结构设计 合理的目录结构是项目可维护性的基础。通过AI辅助分析,我得到了一个清晰的多链钱包项目结构建议: * src/ * assets/ - 存放静态资源如图标、字体等 * components/ - 可复用的UI组件 * Wallet/ - 钱包相关组件 * Network/ - 网络切换相关组件 * contexts/ - 状态管理上下文 * hooks/ - 自定义Hook * services/ - 业务逻辑服务 * api/ - 与区块链节点交互的API * wallet/ - 钱包核心逻辑 * utils/ - 工具函数 * chains/ -

1.2.2 国内主流AI模型深度测评:通义千问、文心一言、讯飞星火全面对比

1.2.2 国内主流AI模型深度测评:通义千问、文心一言、讯飞星火全面对比 引言 在上一节(1.2.1)中,我们深入了解了三大国际主流AI模型。但对于国内用户来说,国产AI模型在中文理解、网络访问、性价比等方面具有独特优势。本节将全面测评三大国产主流AI模型:通义千问、文心一言和讯飞星火。 4. 通义千问 (Qwen) 综合评价:阿里巴巴出品的"国产全能王",中文语境理解能力顶尖,性价比极高,与国内应用生态结合紧密。 能力雷达图: 通义千问 基础能力: ★★★★☆ 专业能力: ★★★★☆ 多模态能力: ★★★★☆ 交互体验: ★★★★★

从0到1理解dev-summit-architecture-demo:Android离线应用核心组件全解析

从0到1理解dev-summit-architecture-demo:Android离线应用核心组件全解析 【免费下载链接】dev-summit-architecture-demoThe demo application that we've used in the Architecture Talk @ Android Dev Summit 2015 项目地址: https://gitcode.com/gh_mirrors/de/dev-summit-architecture-demo dev-summit-architecture-demo是2015年Android Dev Summit架构演讲中使用的演示应用,它展示了如何构建一个功能完善的Android离线应用。本文将深入解析该项目的核心组件,帮助开发者快速掌握离线应用的架构设计与实现方法。 项目架构概览 该项目采用经典的分层架构设计,主要分为客户端和服务器两大部分。客户端采用了MVVM架构模式,通过数据模型、控制器和视图分离实现了清晰的代码结构。 项目目录结构如下: * client/:Android客户端代码