OpenClaw Memory Search 完全指南:讓你的 AI 真正"記得"你
記錄如何啟用和配置 OpenClaw 的 Memory Search 功能,讓 AI 通過語義理解而非簡單關鍵詞匹配來檢索記憶文件。
一、前言
我是 Frank,這是我的 AI 助手阿呆。在使用 OpenClaw 的過程中,我發現一個被很多人忽視的強大功能 —— Memory Search(向量記憶搜索)。
傳統的記憶文件(memory files)雖然能保存信息,但當文件越來越多時,AI 很難精準找到伱需要的內容。Memory Search 通過語義理解而非簡單的關鍵詞匹配,讓 AI 真正"理解"你的記憶。
二、什麼是 Memory Search?
2.1 記憶文件 vs Memory Search
| 特性 | 普通記憶文件 | Memory Search |
|---|---|---|
| 存儲方式 | Markdown 文本 | Markdown + 向量索引 |
| 搜索方式 | 關鍵詞匹配 | 語義相似度 |
| 理解能力 | 字面匹配 | 理解同義詞、上下文 |
| 舉例 | 搜"API"只找含 API 的 | 搜"接口文檔"也能找到 API 相關 |
通俗類比:
- 普通記憶文件 = 圖書館的目錄卡片(按標題找書)
- Memory Search = Google 搜索(按意思找內容)
2.2 技術原理(簡化版)
當你保存一段文字時,Memory Search 會:
- 分塊(Chunking):將長文本切成小段
- 向量化(Embedding):用 AI 模型把文字轉換成數字向量(幾百到幾千維的坐標)
- 索引(Indexing):存入 SQLite 數據庫
- 搜索(Search):查詢時把問題也轉成向量,找最相似的
這種"語義相似度"搜索,讓"汽車"和"vehicle"、“博客 API"和"接口文檔"在向量空間裡距離很近。
三、為什麼要用 Memory Search?
3.1 解決的痛點
❌ 以前的問題:
- “我之前說的那個東西…"(AI 找不到)
- “我上週提到的眼鏡訂單”(記不清日期,搜不到文件)
- “那個體重追蹤的項目”(用了"追蹤"還是"tracker"記不清了)
✅ 現在的體驗:
- “我之前說的體重追蹤那個事” → 自動找到 weight-tracker 文檔
- “我博客的統計 API 在哪裡” → 找到 api-docs 相關記錄
- “我的眼鏡訂單什麼狀態” → 找到監控記錄
3.2 實際應用場景
場景 1:個人項目管理
- 你說:“我之前讓你寫的那個體重追蹤系統”
- **AI 理解:**找 “weight”、“tracker”、“體重”、“記錄” 相關內容
- 找到:
memory/2026-02-09.md裡的 “Weight Tracker System” 文檔
場景 2:技術文檔檢索
- 你說:“我那個 API 文檔的網頁地址”
- **AI 理解:**找 “api-docs”、“GitHub Pages”、“接口文檔”
- 找到:
memory/api-docs-location.md裡的在線地址
場景 3:歷史信息回溯
- 你說:“我上次提到的體重記錄”
- **AI 理解:**找 “weight tracker”、“體重”、“89.4kg”
- **找到:**相關日期的體重數據
3.3 核心優勢
- 🧠 語義理解:不用記確切關鍵詞,描述大概意思就行
- 🔍 糢糊匹配:同一概念的不同表達都能關聯
- ⚡ 快速檢索:毫秒級響應,比全文掃描快得多
- 🔒 隱私可控:本地 SQLite 存儲,不上傳原文到雲端
- 📝 原文保留:向量只是索引,原始 Markdown 仍是真相來源
四、完整配置教程
4.1 準備工作
需要:
- OpenClaw 2026.2.x 或更高版本
- 可寫的 workspace(
~/.openclaw/workspace) - 一個 Embedding Provider 的 API Key
系統要求:
- Linux/macOS(Windows 建議用 WSL2)
- 至少 1GB 可用磁盤空間
4.2 選擇 Embedding Provider
OpenClaw 支持多種向量模型提供商:
| 方案 | 優點 | 缺點 | 推薦度 | 適合人群 |
|---|---|---|---|---|
| Gemini | 免費額度高(1500次/天),Google 出品 | 需要 Google 賬號 | ⭐⭐⭐⭐⭐ | 大多數人 |
| 阿里雲 DashScope | 國內訪問快,價格便宜,Qwen 模型 | 需要阿里雲賬號 | ⭐⭐⭐⭐ | 國內用戶 |
| Mistral | 性價比高,歐洲公司隱私友好 | 需要綁卡 | ⭐⭐⭐ | 歐洲用戶 |
| Local | 完全離線,零 API 費用,最隱私 | 需要下載模型,速度較慢 | ⭐⭐⭐⭐ | 隱私優先 |
我的選擇: 我最終選擇了 阿里雲 DashScope + text-embedding-v4,因為:
- 國內訪問速度快
- 價格非常便宜
- 支持 OpenAI-compatible API 格式
4.3 配置步驟(以阿里雲為例)
Step 1: 申請 API Key
- 訪問 阿里雲 DashScope 控制台
- 登錄阿里雲賬號
- 進入「API-KEY 管理」創建新 Key
- 複製 Key(格式如
sk-xxxxxx)
Step 2: 修改 OpenClaw 配置
編輯 ~/.openclaw/openclaw.json:
{
// 添加環境變量
"env": {
"DASHSCOPE_API_KEY": "sk-你的阿里雲Key"
},
// 在 agents.defaults 中添加
"agents": {
"defaults": {
"memorySearch": {
"provider": "openai",
"model": "text-embedding-v4",
"remote": {
"baseUrl": "https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
"apiKey": "${DASHSCOPE_API_KEY}"
}
}
}
}
}
配置說明:
provider: 使用"openai"因為 DashScope 提供 OpenAI-compatible APImodel:text-embedding-v4是阿里雲最新的 embedding 模型baseUrl: 國際站地址,如果在國內可以用dashscope.aliyuncs.com
Step 3: 重啟 Gateway
openclaw gateway restart
Step 4: 驗證配置
重啟後,詢問 AI 任何問題,觀察 memory_search 的返回:
{
"results": [...],
"provider": "openai",
"model": "text-embedding-v4",
"mode": "hybrid"
}
如果看到 provider 不是 none,而是 openai,說明配置成功了!
4.4 監控 API 用量
阿里雲 DashScope 的用量統計頁面:
https://modelstudio.console.aliyun.com/ap-southeast-1/#/model-telemetry
在這個頁面可以查看:
- API 調用次數
- Token 消耗量
- 費用統計
五、進階知識
5.1 索引存儲位置
Memory Search 的向量索引存儲在:
~/.openclaw/memory/main.sqlite
這是一個 SQLite 數據庫,包含:
- 文本塊(chunks)
- 向量嵌入(embeddings)
- 元數據(文件路徑、行號等)
注意:
- 原始 Markdown 文件仍然是"真相來源”
- SQLite 只是索引,可以刪除後重建
- 刪除後下次啟動會自動重新索引
5.2 索引更新機制
OpenClaw 使用文件系統監視(fs watch)來檢測變化:
- 創建新文件 → 自動檢測,延遲索引(通常幾分鐘)
- 修改現有文件 → 自動檢測,更新索引
- 定期批量更新 → 可能有後台任務整理索引
如果你的新文件沒立即被索引:
- 這是正常的,有延遲
- 幾分鐘後應該會自動索引
- 或者重啟 Gateway 強制刷新
5.3 故障排除
問題 1:provider 顯示 “none”
症狀:
{
"provider": "none",
"mode": "fts-only"
}
原因:
- API Key 未配置或配置錯誤
- Gateway 未重啟
- 環境變量未正確加載
解決:
- 檢查
openclaw.json中的env和memorySearch配置 - 確認 API Key 有效
- 重啟 Gateway
問題 2:搜索返回空結果
症狀:
搜索任何內容都返回 []
原因:
- 文件尚未被索引(新創建的文件)
- 索引損壞
解決:
- 等待幾分鐘,讓系統自動索引
- 檢查
~/.openclaw/memory/main.sqlite是否存在且大小合理 - 如需要,刪除 SQLite 文件讓它重建
問題 3:API Key 錯誤
症狀: 日誌顯示 embedding API 調用失敗
解決:
- 檢查 API Key 是否過期
- 確認 baseUrl 正確(國內/國際站)
- 查看 provider 控制台是否有額度限制
六、總結
6.1 適合誰用?
推薦使用:
- 記憶文件超過 10 個,經常找不到東西
- 喜歡用自然語言描述,不喜歡記關鍵詞
- 需要 AI 長期記住複雜項目和上下文
- 對響應速度有要求(比全文搜索快)
可以暫緩:
- 記憶文件很少(< 5 個),直接讀文件就夠了
- 不想依賴外部 API(可以用 Local 模式解決)
- 對隱私極度敏感(可以用 Local 模式)
6.2 最佳實踐
保持記憶文件結構清晰
- 使用標準 sections(今日概覽、重要事項、待辦等)
- 方便日後檢索
定期整理
- 每週 review 一次 MEMORY.md
- 刪除過時的,更新重要的
混合使用
- 日常使用 Memory Search 快速檢索
- 需要精確內容時用
memory_get讀原文
監控用量
- 定期查看 embedding API 的使用情況
- 避免意外超支
參考資料
- OpenClaw 官方文檔:https://docs.openclaw.ai
- 阿里雲 DashScope:https://dashscope.aliyun.com
- 本文示例配置:
memory/aliyun-dashscope-config.md
Written by Frank & Adai | 2026-02-26
希望這篇教程能幫助你讓 AI 真正"記得"你 💙
人生這部戲 | Frank Shi