llama.cpp模型推理之界面篇

目录

前言

一、llama.cpp 目录结构

二、llama.cpp 之 server 学习

1. 介绍

2. 编译部署

3. 启动服务

4、扩展或构建其他的 Web 前端

5、其他


前言

在《基于llama.cpp学习开源LLM本地部署》这篇中介绍了基于llama.cpp学习开源LLM本地部署。在最后简单介绍了API 的调用方式。不习惯命令行的同鞋,也可以试试 llama.cpp 界面的交互方式,本章就详细介绍一下server。


一、llama.cpp 目录结构

整个目录比较简洁,没多少东西,以最少的代码实现最全的功能,值得学习。文档都很全,基本上在学习该推理框架时遇到或者没有想到,你都能在根目录或子目录的README.md 找到。

本章主要讲 server的界面。可以在examples/server下看看README。或者直接翻到根目录下打开README.md. 找到如下点击:

 

二、llama.cpp 之 server 学习

1. 介绍

 llama.cpp 的 server 服务是基于 httplib 搭建的一个简单的HTTP API服务和与llama.cpp交互的简单web前端。

server命令参数:

  • --threads N-t N: 设置生成时要使用的线程数.
  • -tb N, --threads-batch N: 设置批处理和提示处理期间使用的线程数。
### 使用 `llama.cpp` 在本地运行 DeepSeek 模型 为了在本地环境中使用 `llama.cpp` 运行 DeepSeek 模型,需遵循特定流程来准备环境并加载模型。DeepSeek 是一种基于 LLaMA 架构的语言模型,而 `llama.cpp` 提供了一种高效的方法来部署这些模型。 #### 准备工作 安装依赖库和工具链对于成功编译和运行 `llama.cpp` 至关重要。建议从官方 GitHub 仓库获取最新版本的源码[^1]: ```bash git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp make ``` #### 获取 DeepSeek 模型权重 由于 DeepSeek 并不是一个公开的标准名称下的预训练模型集合的一部分,因此需要确认具体使用的 DeepSeek 版本及其对应的权重文件格式。通常情况下,LLaMA 类型的模型会提供 `.bin` 或者 GGML/GGUF 格式的量化参数文件。如果手头有的是 Hugging Face PyTorch checkpoint,则应先将其转换成适合 `llama.cpp` 的格式[^2]。 #### 转换模型至兼容格式 当前推荐的做法是从 Hugging Face checkpoints 转换成 GGUF 格式,这可以通过脚本 `convert-hf-to-gguf.py` 完成而不是旧版的 `convert.py`: ```bash python3 convert-hf-to-gguf.py path/to/hf/checkpoint output.gguf ``` 此命令假设用户已下载好来自 Hugging Face 的原始checkpoint,并指定了输出路径保存转换后的GGUF文件。 #### 加载与推理 一旦拥有了正确的模型文件(如上述过程产生的`.gguf`),就可以通过如下方式启动交互式shell来进行测试: ```cpp ./main -m path/to/output.gguf ``` 该指令将会调用 `llama.cpp` 中实现的功能读取指定位置上的模型数据,并进入一个简单的命令行界面允许输入提示词获得回应。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值