返回顶部
o

openclaw-local-embedding本地嵌入配置

Initialize and configure OpenClaw local embedding mode on CPU-only machines. Handles network probe, proxy fallback, GGUF model download, cmake/llama.cpp compilation, openclaw.json configuration, and gateway restart. Use when a user wants to enable memory search with local embedding on a machine without GPU, especially when direct internet access is unavailable and an HTTP CONNECT proxy is required.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.4
安全检测
已通过
113
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

openclaw-local-embedding

OpenClaw 本地嵌入设置

使用此技能可在出站互联网访问受限(仅允许通过 HTTP CONNECT 代理)的机器上为 OpenClaw 内存搜索启用本地嵌入。请勿将此技能用于远程嵌入提供商(OpenAI、Gemini、Voyage 等)或具有直接互联网访问权限的机器。

目标环境

  • - 任何 Linux 机器(云虚拟机、本地服务器或开发工作站)。
  • 仅限 CPU(无需 GPU;嵌入模型足够小,可在 CPU 上推理)。
  • 无直接互联网访问;出站 HTTPS 需要通过 HTTP CONNECT 代理。
  • 操作系统:Ubuntu 20.04+(GLIBC 2.31+)。
  • Node.js 22+(需要支持 NODEUSEENV_PROXY)。
  • 通过 npm install -g openclaw 安装 OpenClaw(无需源码构建)。

工作流程

请按顺序执行以下步骤。不要跳过任何步骤。

步骤 1:检查模型是否已缓存

默认模型为 embeddinggemma-300m-qat-Q8_0.gguf(约 313 MB)。检查标准缓存目录:

bash
MODELFILE=hfggml-orgembeddinggemma-300m-qat-Q80.gguf
for dir in $HOME/.node-llama-cpp/models $HOME/.cache/node-llama-cpp/models; do
if [ -f $dir/$MODEL_FILE ]; then
SIZEMB=$(du -m $dir/$MODELFILE | cut -f1)
echo 模型已缓存:$dir/$MODELFILE($SIZEMB MB)
fi
done

如果模型存在且大于 100 MB,则跳转到步骤 4(配置)。

步骤 2:解决网络和代理问题

模型必须从 HuggingFace 下载。没有直接互联网访问权限的机器需要 HTTP CONNECT 代理。

已知代理默认值

平台代理地址
快手云主机http://10.74.176.8:11080

如果机器是快手云主机且未配置代理,请先尝试上述默认值。如果之前使用了不同的代理并记录在 ~/.openclaw/workspace/skills/openclaw-local-embedding/.proxy 中,则自动加载:

bash
RECORDED_PROXY=$(cat ~/.openclaw/workspace/skills/openclaw-local-embedding/.proxy 2>/dev/null)

策略:渐进式回退。

  1. 1. 首先测试当前环境——用户可能已经配置了 HTTPS_PROXY 或记录的代理:

bash

快速连接测试(5 秒超时)


curl -sI --connect-timeout 5 https://huggingface.co -o /dev/null -w %{http_code}

  1. 2. 如果直接访问失败,按以下顺序尝试代理:

a. 上次运行的记录代理(.proxy 文件,见上文)。

b. 快手云默认值:http://10.74.176.8:11080

bash
curl -sI --connect-timeout 5 --proxy http://10.74.176.8:11080 https://huggingface.co -o /dev/null -w %{http_code}

c. 如果两者都不起作用,询问用户其代理地址

  1. 3. 确认工作代理后,记录以供将来运行使用:

bash
mkdir -p ~/.openclaw/workspace/skills/openclaw-local-embedding
echo http://the-working-proxy:port > ~/.openclaw/workspace/skills/openclaw-local-embedding/.proxy

然后仅针对下载过程设置它(非永久):

bash
export HTTPS_PROXY=http://the-working-proxy:port # 使用确认的代理地址
export HTTPPROXY=$HTTPSPROXY
export NODEUSEENV_PROXY=1
export NODETLSREJECT_UNAUTHORIZED=0 # 仅当代理执行 TLS 检查(MITM)时设置

这些环境变量是进程范围的。它们不会影响其他进程或网关。

重要提示: NODETLSREJECT_UNAUTHORIZED=0 会禁用 TLS 证书验证。仅在下载脚本/进程中设置。切勿将其持久化到 shell 配置文件中。

步骤 3:下载并验证模型

该技能包含一个辅助脚本(scripts/init-model.mjs),可自动处理代理检测、模型下载和验证。在步骤 3 中的代理环境变量处于活动状态时运行它(或让脚本自动检测):

bash

脚本位于技能文件夹中(默认 clawhub 安装位置):


node ~/.openclaw/workspace/skills/openclaw-local-embedding/scripts/init-model.mjs

要显式覆盖代理:

node ~/.openclaw/workspace/skills/openclaw-local-embedding/scripts/init-model.mjs --proxy http://your-proxy:port

脚本将:

  1. 1. 自动检测 OpenClaw 安装目录
  2. 检查模型是否已缓存(幂等——可安全重复运行)
  3. 探测网络连接(记录代理 → 环境代理 → 直接 → 快手云默认值)
  4. 将工作代理记录到 .proxy 以供将来运行使用
  5. 通过 node-llama-cpp 的 resolveModelFile 下载模型

预期下载大小:约 313 MB。通过代理的速度:约 5–10 MB/s。

cmake 故障排除

如果 node-llama-cpp 找不到预构建的二进制文件(在 GLIBC < 2.32 的 Ubuntu 20.04 上常见),它会回退到从源码编译 llama.cpp。这需要 cmake >= 3.19。

检查 cmake 版本:

bash
cmake --version

如果 cmake < 3.19,安装较新版本:

bash
pip3 install cmake

验证:cmake --version 应显示 >= 3.19

cmake 可用后,重新运行模型下载。编译是自动且一次性的。

步骤 4:配置 openclaw.json

openclaw config set(点号路径赋值)是长期存在的核心功能,在所有 OpenClaw 版本中均可用。使用它来应用设置,然后验证:

bash
openclaw config set agents.defaults.memorySearch.enabled true
openclaw config set agents.defaults.memorySearch.provider local
openclaw config set agents.defaults.memorySearch.fallback none
openclaw config set agents.defaults.memorySearch.query.hybrid.enabled true

验证结果——输出必须显示所有四个字段已正确设置:

bash
openclaw config get agents.defaults.memorySearch

预期输出:
json
{
enabled: true,
provider: local,
fallback: none,
query: { hybrid: { enabled: true } }
}

同时运行 openclaw config validate 以确认完整配置格式正确。如果报告错误,请先修复后再继续。

如果 config set 失败(例如,以非零代码退出或 config get 显示错误值),回退到直接 JSON 编辑。打开 ~/.openclaw/openclaw.json 并手动将块添加到 agents.defaults 下:

json5
// 在现有的 agents → defaults 对象内:
memorySearch: {
enabled: true,
provider: local,
fallback: none,
query: {
hybrid: {
enabled: true
}
}
}

不要在顶层设置 memorySearch。它必须嵌套在 agents.defaults 下。

手动编辑后,验证 JSON 语法:openclaw config validate

步骤 5:重启网关

配置更改需要重启网关。使用标准 OpenClaw 命令:

bash
openclaw gateway restart

无论 OpenClaw 是如何安装的(systemd、launchd 或 Windows 服务),此命令都有效。如果网关未注册为受监督的服务,则改为在前台手动运行:

bash
openclaw gateway run

步骤 6:验证

重启后,第一次 memory_search 工具调用会触发模型加载(约 1.6 秒,一次性)。后续调用使用内存中的模型,无需网络访问。

检查网关状态:

bash
openclaw gateway status

要进行更深入的日志检查,请使用系统的服务日志查看器:

bash

systemd(Linux):


journalctl --user -u openclaw-gateway -n 50 | grep -i embed\|memory\|llama

macOS launchd:

log show --predicate subsystem ==

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 openclaw-local-embedding-1776054129 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 openclaw-local-embedding-1776054129 技能

通过命令行安装

skillhub install openclaw-local-embedding-1776054129

下载

⬇ 下载 openclaw-local-embedding v1.0.4(免费)

文件大小: 9.08 KB | 发布时间: 2026-4-14 13:32

v1.0.4 最新 2026-4-14 13:32
Finalize: confirm all steps verified, config validation with fallback, complete workflow

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部