🧪 Skills

Windows Local Embedding

在 Windows 上为 OpenClaw 配置本地 embedding / 本地记忆检索时使用。适用于:下载并接入 `nomic-embed-text-v1.5.Q8_0.gguf`、把 `memorySearch.provider` 改成 `local`、检查 `

v1.0.0
❤️ 0
⬇️ 25
👁 1
Share

Description


name: windows-local-embedding description: 在 Windows 上为 OpenClaw 配置本地 embedding / 本地记忆检索时使用。适用于:下载并接入 nomic-embed-text-v1.5.Q8_0.gguf、把 memorySearch.provider 改成 local、检查 openclaw memory status --deep、以及排查"模型下了但不生效""路径写错""provider 不是 local""本地依赖没通"这类问题。对虾宝或其他 Windows 环境的龙虾尤其适用。

Windows Local Embedding

处理 Windows 环境下的 OpenClaw 本地 embedding / 本地记忆检索

为什么先做成 Windows 专用?

不是因为本地 embedding 只能在 Windows 上用,而是因为这次最真实、最紧急的使用场景就是:

  • 虾宝是 Windows 环境
  • 之前一直没配成功
  • Windows 最容易卡在路径、转义、重启是否生效这些细节上

所以先把它做成 Windows 定向 skill,是为了先解决最容易卡住的真实问题。

快速判断

  • 用户说"本地 embedding 怎么配" → 用本 skill
  • 用户说"虾宝 Windows 上本地 embedding 没成功" → 用本 skill
  • 用户要下载 nomic-embed-text-v1.5.Q8_0.gguf 并接到 OpenClaw → 用本 skill
  • 用户已经改了配置,但 provider 不是 local / 不生效 → 用本 skill

推荐流程

1. 先确认目标

默认目标不是 QMD,也不是复杂的外部向量数据库,而是:

  • OpenClaw 自带 memorySearch
  • provider = local
  • 本地 GGUF embedding 模型可用

2. 模型文件

  • 模型名:nomic-embed-text-v1.5
  • 实际文件名:nomic-embed-text-v1.5.Q8_0.gguf
  • 正确文件大小:约 139 MB(注意:不是 496MB,那是另一个模型文件)
  • 下载地址:https://huggingface.co/nomic-ai/nomic-embed-text-v1.5-GGUF/resolve/main/nomic-embed-text-v1.5.Q8_0.gguf

下载完之后验证文件头是否为 GGUF(正确的 gguf 文件头部4字节是 ASCII 的 "GGUF"):

$fs = [System.IO.File]::OpenRead("你的文件路径\nomic-embed-text-v1.5.Q8_0.gguf")
$buf = New-Object byte[] 4
$fs.Read($buf, 0, 4) | Out-Null
$fs.Close()
[System.Text.Encoding]::ASCII.GetString($buf)  # 应该输出 GGUF

3. 安装 node-llama-cpp(应用商店版 OpenClaw 必须做这步)

应用商店版 OpenClaw 没有打包 node-llama-cpp,必须手动安装,否则本地 embedding 无法运行。

cd "D:\Program Files\OpenClaw\resources\openclaw"
npm install node-llama-cpp

安装过程较慢(需要下载预编译二进制,约 10-40 分钟),耐心等待。 出现 added xxx packages 即为成功,warn 和 vulnerabilities 提示可以忽略。

4. 配置 openclaw.json

C:\Users\Administrator\.openclaw\openclaw.json 中确认以下配置:

"memorySearch": {
  "provider": "local",
  "fallback": "none",
  "local": {
    "modelPath": "D:\\你的路径\\nomic-embed-text-v1.5.Q8_0.gguf"
  }
}

注意 Windows 路径里反斜杠要转义成 \\

5. 重启 OpenClaw

不是点 Dashboard 里的"连接"按钮——那只是重连 Dashboard,不会重载配置。

需要完全关闭 OpenClaw 应用再重新打开。

6. 验证是否生效

重启后用以下脚本验证(因为 openclaw memory status --deep CLI 在 Windows 上无输出,用这个代替):

// check_memory.mjs
const base = 'file:///D:/Program%20Files/OpenClaw/resources/openclaw/dist/';
const { n: callGateway } = await import(base + 'call-C5sk0PsH.js');
const result = await callGateway({
  method: 'doctor.memory.status',
  params: { deep: true },
  timeoutMs: 15000
});
console.log(JSON.stringify(result, null, 2));
node check_memory.mjs

成功的输出:

{
  "agentId": "main",
  "provider": "local",
  "embedding": {
    "ok": true
  }
}

装好之后怎么使用?

装好之后,它不会自动让记忆"变聪明",而是让 记忆检索底层改为本地运行

  1. 确保 MEMORY.mdmemory/ 里本来就有内容
  2. 正常和龙虾对话
  3. 当龙虾需要回忆旧事时,会通过本地 embedding 去捞记忆

最常见问题

1. 报错 node-llama-cpp is missing

应用商店版 OpenClaw 必须手动安装:

cd "D:\Program Files\OpenClaw\resources\openclaw"
npm install node-llama-cpp

2. 模型下载了,但没生效

优先排查:

  • 文件是否真的是 GGUF 格式(验证文件头)
  • 文件大小是否约 139MB(不是 496MB)
  • 路径和文件名是否写对
  • Windows 反斜杠是否转义成 \\
  • 改完是否完全重启了 OpenClaw(不是点"连接"按钮)

3. provider 不是 local

优先排查:

  • JSON 结构写错位置
  • 改错配置文件
  • 改完没重启

4. 效果一般

embedding 负责"找记忆",不负责"发明记忆"。MEMORY.mdmemory/ 里没内容,再好的 embedding 也没用。

经验原则

  • 先跑通最小可用链路,再追求更花哨的方案
  • 先看验证脚本输出,再讨论"是不是模型有问题"
  • Windows 问题经常不是模型坏了,而是路径、配置、重启或缺依赖

来源说明

  • 原始 skill 由小龙虾哥哥编写
  • 2026-03-14 由虾宝根据实战经验更新:修正文件大小(139MB 非 496MB)、补充 node-llama-cpp 安装步骤、补充验证脚本、补充重启注意事项

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs