openclaw使用llama.cpp 本地大模型部署教程

openclaw使用llama.cpp 本地大模型部署教程

本教程基于实际操作整理,适用于 Windows WSL2 环境


全程使用 openclaw 帮我搭建大模型

一、环境准备

1. 硬件要求

显卡 推荐模型 显存占用
GTX 1050 Ti (4GB) Qwen2.5-3B Q4 ~2.5GB
RTX 4060 (8GB) Qwen2.5-7B Q4 ~5GB
RTX 4090 (24GB) Qwen2.5-32B Q4 ~20GB

2. 安装编译工具(WSL Ubuntu)

bash 复制代码
sudo apt update
sudo apt install -y cmake build-essential

二、下载和编译 llama.cpp

1. 克隆源码

bash 复制代码
mkdir -p ~/llama.cpp
cd ~/llama.cpp
git clone --depth 1 https://github.com/ggerganov/llama.cpp.git src

2. 编译

bash 复制代码
cd ~/llama.cpp/src
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc) llama-cli llama-server

编译完成后,可执行文件在 ~/llama.cpp/src/build/bin/ 目录下。


三、下载模型

1. 创建模型目录

bash 复制代码
mkdir -p ~/llama.cpp/models

2. 下载 GGUF 模型(使用国内镜像加速)

Qwen2.5-3B(适合 4GB 显存):

bash 复制代码
curl -L -o ~/llama.cpp/models/qwen2.5-3b-instruct-q4_k_m.gguf \
  "https://hf-mirror.com/Qwen/Qwen2.5-3B-Instruct-GGUF/resolve/main/qwen2.5-3b-instruct-q4_k_m.gguf"

Qwen2.5-7B(适合 8GB 显存):

bash 复制代码
curl -L -o ~/llama.cpp/models/qwen2.5-7b-instruct-q4_k_m.gguf \
  "https://hf-mirror.com/Qwen/Qwen2.5-7B-Instruct-GGUF/resolve/main/qwen2.5-7b-instruct-q4_k_m.gguf"

四、运行模型

方式一:命令行交互模式

bash 复制代码
cd ~/llama.cpp/src/build/bin
./llama-cli -m ~/llama.cpp/models/qwen2.5-3b-instruct-q4_k_m.gguf \
  -c 4096 \
  --no-display-prompt

参数说明:

  • -m 模型路径
  • -c 上下文长度(默认 512,建议 4096)
  • -ngl GPU 层数(纯 CPU 可不加)

方式二:启动 API 服务

bash 复制代码
cd ~/llama.cpp/src/build/bin
./llama-server \
  -m ~/llama.cpp/models/qwen2.5-3b-instruct-q4_k_m.gguf \
  --host 0.0.0.0 \
  --port 8080 \
  -c 4096

服务启动后访问:http://localhost:8080


五、API 调用方法

API 信息

项目
地址 http://localhost:8080
API Key 不需要(或随意填写)
兼容格式 OpenAI API

端点列表

端点 说明
POST /v1/chat/completions 聊天补全
POST /v1/completions 文本补全
GET /health 健康检查
GET / Web 聊天界面

调用示例

curl
bash 复制代码
curl http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen2.5-3b",
    "messages": [
      {"role": "system", "content": "你是一个有帮助的助手。"},
      {"role": "user", "content": "你好,介绍一下你自己"}
    ],
    "temperature": 0.7,
    "max_tokens": 512
  }'
Python(OpenAI SDK)
python 复制代码
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:8080/v1",
    api_key="not-needed"
)

response = client.chat.completions.create(
    model="qwen2.5-3b",
    messages=[
        {"role": "system", "content": "你是一个有帮助的助手。"},
        {"role": "user", "content": "你好"}
    ],
    temperature=0.7,
    max_tokens=512
)

print(response.choices[0].message.content)
Node.js
javascript 复制代码
const response = await fetch('http://localhost:8080/v1/chat/completions', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    model: 'qwen2.5-3b',
    messages: [{ role: 'user', content: '你好' }]
  })
});

const data = await response.json();
console.log(data.choices[0].message.content);

六、常用参数说明

服务端参数(llama-server)

参数 说明 示例
-m 模型路径 -m model.gguf
--host 监听地址 --host 0.0.0.0
--port 端口 --port 8080
-c 上下文长度 -c 4096
-ngl GPU 层数 -ngl 99(全部放 GPU)
-np 并行请求数 -np 4
--api-key 设置 API Key --api-key your-key

API 请求参数

参数 说明 默认值
temperature 随机性(0-2) 0.7
max_tokens 最大生成长度 模型上限
top_p 核采样 1.0
stream 流式输出 false
stop 停止词 []

七、常见问题

Q1: 报错 "CUDA out of memory"

减少 -ngl 数值,让部分层用 CPU 计算:

bash 复制代码
./llama-server -m model.gguf -ngl 20  # 只放 20 层到 GPU

Q2: 中文乱码

PowerShell 执行:

powershell 复制代码
chcp 65001

Q3: 如何后台运行服务?

bash 复制代码
nohup ./llama-server -m model.gguf --host 0.0.0.0 --port 8080 > server.log 2>&1 &

Q4: 如何设置 API Key 认证?

bash 复制代码
./llama-server -m model.gguf --api-key "your-secret-key"

调用时需要带上:

bash 复制代码
curl -H "Authorization: Bearer your-secret-key" ...

Q5: 从其他设备访问

  1. 查看 WSL IP:hostname -I
  2. 使用该 IP 访问,如 http://172.x.x.x:8080

八、推荐模型

模型 大小 适合场景
Qwen2.5-3B-Instruct Q4 ~2GB 轻量对话、低配设备
Qwen2.5-7B-Instruct Q4 ~4.5GB 通用对话、代码
Qwen2.5-14B-Instruct Q4 ~9GB 复杂推理
DeepSeek-R1-Distill-Qwen-7B Q4 ~4.5GB 数学、逻辑推理
Mistral-7B-v0.3 Q5 ~5GB 英文、代码

下载地址: https://hf-mirror.com(国内镜像)


九、文件结构

复制代码
~/llama.cpp/
├── src/                    # llama.cpp 源码
│   └── build/
│       └── bin/
│           ├── llama-cli       # 命令行工具
│           └── llama-server    # API 服务
└── models/                 # 模型存放目录
    └── qwen2.5-3b-instruct-q4_k_m.gguf

十、快速启动脚本

创建 start-server.sh

bash 复制代码
#!/bin/bash
cd ~/llama.cpp/src/build/bin
./llama-server \
  -m ~/llama.cpp/models/qwen2.5-3b-instruct-q4_k_m.gguf \
  --host 0.0.0.0 \
  --port 8080 \
  -c 4096 \
  -np 4

赋予执行权限:

bash 复制代码
chmod +x start-server.sh
./start-server.sh

教程整理于 2026-02-03
基于 llama.cpp b7917 + Qwen2.5-3B-Instruct

相关推荐
love530love3 小时前
Windows 11 配置 CUDA 版 llama.cpp 并实现系统全局调用(GGUF 模型本地快速聊天)
人工智能·windows·大模型·llama·llama.cpp·gguf·cuda 加速
feasibility.20 小时前
多模态模型Qwen3-VL在Llama-Factory中断LoRA微调训练+测试+导出+部署全流程--以具身智能数据集open-eqa为例
人工智能·python·大模型·nlp·llama·多模态·具身智能
问道飞鱼1 天前
【大模型知识】Chroma + Ollama + Llama 3.1 搭建本地知识库
llama·知识库·chroma·ollama
凉忆-1 天前
llama-factory训练大模型
python·pip·llama
zhangfeng11332 天前
大模型微调时 Firefly(流萤)和 LlamaFactory(LLaMA Factory)这两个工具/框架之间做出合适的选择
人工智能·llama
love530love2 天前
技术复盘:llama-cpp-python CUDA 编译实战 (Windows)
人工智能·windows·python·llama·aitechlab·cpp-python·cuda版本
玄同7652 天前
Llama.cpp 全实战指南:跨平台部署本地大模型的零门槛方案
人工智能·语言模型·自然语言处理·langchain·交互·llama·ollama
zhangfeng11332 天前
大模型微调主要框架 Firefly vs LLaMA Factory 全方位对比表
人工智能·语言模型·开源·llama
zhangfeng11333 天前
LLaMA Factory 完全支自定义词库(包括自定义微调数据集、自定义领域词汇/词表)
人工智能·llama