OpenClaw 语义搜索配置教程:不用 OpenAI API 也能用的替代方案

你好,我是茂林,一个AI爱好者,最近一直在折腾OpenClaw/Hermes,踩过老多坑了。我把踩过的坑整理出来,帮你少走弯路。

我遇到的问题:

解决什么问题

OpenClaw 默认语义搜索需要配置 OpenAI API 生成向量,但你可能只有 Claude 或 DeepSeek 密钥,或者想用本地模型生成向量。我告诉你三种不用 OpenAI API 也能用上语义搜索的方法。

原因分析

语义搜索需要把文本转换成向量才能检索,OpenClaw 默认用 OpenAI 的 text-embedding 模型生成向量。但这不代表只能用 OpenAI,其实有多种替代方案。

三种替代配置方法

方法一:使用 OpenRouter 接入第三方 embedding 模型

OpenRouter 支持多种 embedding 模型,包括来自 Anthropic、Google、Mistral 的模型,你只需要把 OpenClaw 的配置改成 OpenRouter 端点就行。

配置步骤:

  1. config.yaml 找到 embedding 配置部分,修改成:
embedding:
  provider: openai
  api_key: "你的OpenRouter密钥"
  api_base: "https://openrouter.ai/api/v1"
  model: "mistralai/mistral-embed"
  1. 保存配置,重启 OpenClaw 就可以用了

优点: 不用搭本地服务,直接用 API,速度快
成本: Mistral embedding 非常便宜,1M tokens 只要 $0.1


方法二:使用 Ollama 本地 embedding 模型(完全免费)

如果你不想用云端 API,可以用 Ollama 在本地跑 embedding 模型,完全免费,数据不出本地。

配置步骤:

  1. 安装 Ollama(如果没装):

    curl https://ollama.ai/install.sh | sh
  2. 拉一个轻量 embedding 模型:

    ollama pull nomic-embed-text
  3. 修改 OpenClaw 配置 config.yaml

embedding:
  provider: openai
  api_key: "ollama"
  api_base: "http://localhost:11434/v1"
  model: "nomic-embed-text"
  1. 重启 OpenClaw,完成!

✅ 优点:完全免费,隐私保护,不用付费
⚠️ 注意:需要你的机器有一点性能,不过 embed 对配置要求很低,普通笔记本也能跑


方法三:使用 DeepSeek 开源 embedding 模型

DeepSeek 也开源了质量不错的 embedding 模型,如果你的 OpenClaw 已经在用 DeepSeek 聊天,可以直接复用密钥:

embedding:
  provider: openai
  api_key: "你的DeepSeek密钥"
  api_base: "https://api.deepseek.com/v1"
  model: "deepseek-embedding"

验证配置是否成功

配置完可以用这个简单命令测试:

从记忆中语义搜索一下关于项目配置的内容

如果能返回结果,说明配置成功了。

各方案对比

方案 需要付费 需要本地部署 速度 推荐指数
OpenRouter + Mistral 是(很便宜) ⭐⭐⭐⭐⭐
Ollama 本地 免费 中等 ⭐⭐⭐⭐
DeepSeek API 便宜 ⭐⭐⭐⭐

常见问题

Q:一定要开语义搜索吗?
A:不是必须。如果你只有少量记忆,全文搜索就够用了。记忆超过十几条之后,语义搜索体验好很多。

Q:哪个模型效果最好?
A:Mistral Embed 和 nomic-embed-text 效果都不错,足够日常使用。追求极致可以用 OpenAI text-embedding-3-large

Leave a Comment