OpenClaw Memory 本地模式配置:Ubuntu CUDA cuDNN llama.cpp
综述由AI生成介绍在 Ubuntu 24.04 环境下配置 OpenClaw 使用本地 Memory 模式的完整流程。主要步骤包括安装 CUDA 和 cuDNN 驱动,编译支持 CUDA 的 llama.cpp,安装 node-llama-cpp 依赖,以及修改 openclaw.json 配置文件以启用本地向量检索。过程中解决了 sqlite-vec 加载失败及 GPU 验证报错等问题,最终实现无需 API Key 的本地语义记忆功能。
深海蔚蓝32 浏览
OpenClaw 的 Memory 配置
总结来说,针对 Memory 不生效的问题,又不想用 OpenAI 或 Gemini,或者只想单纯节省 token,可以按照如下方式设置为 local 模式:
修改 openclaw.json 配置
安装 CUDA 和 cuDNN
编译 llama.cpp,使用 cuda
安装 node-llama-cpp
验证
背景:Memory 不生效的问题
执行 openclaw doctor 命令,有如下提示:
◇ Memory search Memory search is enabled but no embedding provider is configured. Semantic recall will not work without an embedding provider. Fix (pick one): - Set OPENAI_API_KEY or GEMINI_API_KEY in your environment - Add credentials: openclaw auth add --provider openai - For local embeddings: configure agents.defaults.memorySearch.provider and local model path - To disable: openclaw config set agents.defaults.memorySearch.enabled false Verify: openclaw memory status --deep
Memory search provider issetto "local" but nolocal model file was found. Fix (pick one):
- Install node-llama-cpp andset a local model path in config
- Switch to a remote provider: openclaw config set agents.defaults.memorySearch.provider openai
Verify: openclaw memory status --deep
看起来必须要安装 node-llama-cpp。于是继续搜寻资料。
cd ~/.openclaw/extensions
npm install node-llama-cpp
# 此时 node-llama-cpp 安装到 ~/.openclaw/extensions/node_modules,没有起作用。
pnpm approve-builds
# 提示没有需要编译的:There are no packages awaiting approval
npx --no node-llama-cpp inspect gpu
# 提示报错
安装 node-llama-cpp 的前置条件
OpenClaw 依赖 node-llama-cpp,网上说要原生编译安装。需要从源码编译 llama.cpp(大型 C++ AI 库)。所以要先编译 llama.cpp,还依赖 CUDA 和 cuDNN。所以正确的安装顺序是:
Vulkan: Vulkan is detected, but using it failed
To resolve errors related to Vulkan, see the Vulkan guide: https://node-llama-cpp.withcat.ai/guide/vulkan