住在手机里的“小龙虾” (OpenClaw):接入本地模型,解决记忆“装死”顽疾

最近在 Termux 的 Debian 环境下折腾 OpenClaw(小龙虾),发现升级新版后它容易"装死":发消息不回,后台卡死。

核心病因: 记忆功能触发了"内嵌模型加载",8 核 CPU 瞬间过载导致 Node.js 事件循环堵死,系统由于发热直接把进程"猎杀"了。

终极药方: 架构解耦。用 PM2 守护原生的 C++ llama-server 独立跑在后台,OpenClaw 通过端口轻量调用。

第一步:搭建底层------编译与模型准备

在手机端,我们要先手动编译一个原生的"微服务"引擎,这比任何 Node.js 插件都高效。

1. 编译原生推理引擎

复制代码
# 安装基础编译环境
sudo apt update && sudo apt install build-essential git cmake -y

# 克隆并编译 llama-server (仅编译服务端,省时省力)
git clone https://github.com/ggerganov/llama.cpp.git
cd llama.cpp
cmake -B build
cmake --build build --config Release -j 4 --target llama-server

2. 准备模型

手动下载量化版模型(建议放在家目录):此模型就是openclaw官方示例的模型大小0.6G

复制代码
wget https://hf-mirror.com/ggml-org/embeddinggemma-300M-GGUF/resolve/main/embeddinggemma-300M-Q8_0.gguf

第二步:进阶管理------使用 PM2 守护记忆引擎

为了让模型服务像系统服务一样稳定,我们使用 PM2 来接管。这样即使程序崩溃,它也会秒级自动重启。

1. 安装 PM2

复制代码
npm install pm2 -g

2. 编写启动脚本 start_mem.sh

llama.cpp/build/bin/ 目录下创建脚本。核心技巧是锁定 4 线程,主动"示弱"以绕过系统温控墙。

复制代码
#!/bin/bash
# 路径请根据实际情况修改
MODEL="/data/data/com.termux/files/home/embeddinggemma-300M-Q8_0.gguf"

./llama-server -c 4096 -b 4096 -ub 4096 -m "$MODEL" --host 127.0.0.1 --port 8080 -t 4 --embedding

3. 使用 PM2 启动并持久化

复制代码
# 启动并命名为 llama-mem
pm2 start ./start_mem.sh --name llama-mem

# 查看运行状态
pm2 status

# 保存列表,确保下次启动 Debian 时能自动复活
pm2 save

第三步:配置龙虾------偷天换日接入 API

模型服务立起来后,修改 OpenClaw 的配置文件( ~/.openclaw/openclaw.json),把最累的活"外包"给 PM2 守护的那个端口。

复制代码
agents: {
  defaults: {
    memorySearch: {
      provider: "openai",
      model: "embeddinggemma-300M-Q8_0",
      remote: {
        baseUrl: "http://127.0.0.1:8080/v1/",
        apiKey: "sk-任意",
        headers: { "X-Custom-Header": "value" }
      }
    }
  }
}

第三步:更新小龙虾记忆索引

复制代码
openclaw memory index
相关推荐
勇敢牛牛_2 小时前
【aiway】基于 Rust 开发的 API + AI 网关
开发语言·后端·网关·ai·rust
sg_knight2 小时前
OpenClaw 和 Claude Code、Cursor、Copilot 有什么区别
llm·copilot·claude·cursor·code·claude-code·openclaw
FC皇家慕尼黑2 小时前
Claude Code学习--从搭建Nano Claude Code学习CC机制的底层原理
学习·ai·claude code
console.log('npc')2 小时前
Cursor,Trae,Claude Code如何协作生产出一套前后台app?
前端·人工智能·react.js·设计模式·ai·langchain·ai编程
hongtianzai2 小时前
MySQL中between and的基本用法
android·数据库·mysql
FC皇家慕尼黑2 小时前
Claude Code学习--从搭建Nano Claude Code学习CC机制的底层原理pt2
学习·ai·claude code
头孢头孢2 小时前
5 分钟部署 OpenClaw:从零到运行的完整流程
openclaw
会喷火才能叫火山3 小时前
本地搭建AI相关步骤
linux·运维·ai·centos
Zender Han3 小时前
Flutter Bloc / Cubit 最新详解与实战指南(2026版)
android·flutter·ios