fix: 统一 Collection 名称为 mem0_v4_shared - 2026-02-27

- 所有 mem0 配置统一使用 mem0_v4_shared (陈医生/张大师共用)
- 修改文件:mem0_client.py, config.yaml, skill.json, config-life.yaml, life-agent.json
- 更新文档:SYSTEM_ARCHITECTURE.md, MEMORY.md
- 创建操作日志:logs/operations/2026-02-27-08-55-00-unify-collection-name.log
- 验证:Qdrant Collection 已创建,维度 1024,状态 green

王院长指示:关键配置修改必须经过确认,不得随意更改
master
Eason (陈医生) 1 month ago
parent 7e61c86657
commit 887ae0593c
  1. 36
      MEMORY.md
  2. 2
      agents/life-agent.json
  3. 2
      agents/life-workspace/skills/mem0-integration/config.yaml
  4. 12
      docs/SYSTEM_ARCHITECTURE.md
  5. 2
      skills/mem0-integration/config-life.yaml
  6. 2
      skills/mem0-integration/mem0_client.py
  7. 2
      skills/mem0-integration/skill.json

@ -297,6 +297,42 @@ export DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$(id -u)/bus"
- Proper log commands for both service types
---
## Collection 名称统一为 mem0_v4_shared (2026-02-27)
### 背景
之前配置中存在 Collection 名称不一致问题:
- 代码实际使用:`mem0_global_v4`
- 用户指定/文档记录:`mem0_v4_shared`(陈医生和张大师共用)
### 修改决策
王院长明确指示:所有 Collection 统一使用 `mem0_v4_shared`,不得随意修改关键配置。
### 修改文件列表
1. `skills/mem0-integration/mem0_client.py`
2. `skills/mem0-integration/config.yaml`
3. `skills/mem0-integration/skill.json`
4. `skills/mem0-integration/config-life.yaml`
5. `agents/life-agent.json`
6. `agents/life-workspace/skills/mem0-integration/config.yaml`
7. `docs/SYSTEM_ARCHITECTURE.md`
### 验证结果
- ✅ Gateway 重启成功 (systemd 服务正常)
- ✅ Qdrant Collection `mem0_v4_shared` 已创建
- ✅ 向量维度:1024 (text-embedding-v4)
- ✅ 距离度量:Cosine
- ✅ 元数据索引:user_id, agent_id, actor_id, run_id
- ✅ Embedding 计费通道:Bailian 标准计费
### 操作日志
`/root/.openclaw/workspace/logs/operations/2026-02-27-08-55-00-unify-collection-name.log`
### 重要原则
- 关键配置(Collection 名称、Embedding 模型、计费通道)修改必须经过用户确认
- 所有 Agent 共享同一 Collection,通过 `metadata.agent_id` 实现逻辑隔离
---
## 安全审计误报分析 (2026-02-26)
### 背景

@ -24,7 +24,7 @@
"dashscope_api_key": "${DASHSCOPE_API_KEY}",
"qdrant_host": "localhost",
"qdrant_port": 6333,
"collection_name": "mem0_global_v4"
"collection_name": "mem0_v4_shared"
}
},
{

@ -31,7 +31,7 @@ master:
config:
host: 100.115.94.1
port: 6333
collection_name: mem0_v4_shared
collection_name: mem0_v4_shared # ✅ 统一共享 Collection(陈医生/张大师共用)
# 同步配置
sync:

@ -148,8 +148,8 @@
│ │
│ ┌─────────────┐ ┌─────────────────────────┐ │
│ │ Mem0 Core │────▶│ Qdrant │ │
│ │ (Python) │ │ mem0_global_v4 │ │
│ └──────┬──────┘ │ (唯一全局 Collection) │ │
│ │ (Python) │ │ mem0_v4_shared │ │
│ └──────┬──────┘ │ (统一共享 Collection) │ │
│ │ │ │ │
│ │ Embedding │ ┌──────────────────┐ │ │
│ │ v4 (1024) │ │ Payload Metadata │ │ │
@ -168,7 +168,7 @@
**核心架构:**
- **Qdrant:** `localhost:6333`
- **Embedding:** Gemini Pro `text-embedding-v4` (1024 维度)
- **Collection:** `mem0_global_v4` (**唯一全局 Collection**)
- **Collection:** `mem0_v4_shared` (**统一共享 Collection** - 陈医生/张大师共用)
- **隔离方式:** 元数据标签软隔离 (`metadata.agent_id`)
- **更新频率:** 每 5 分钟自动同步
@ -270,8 +270,8 @@ memories = memory.search(
┌──────────────────────┐
│ mem0_global_v4 │
│ (唯一 Collection)
│ mem0_v4_shared
│ (统一共享 Collection)
│ metadata.agent_id │
│ 软隔离 │
└──────────────────────┘
@ -283,7 +283,7 @@ memories = memory.search(
3. **共享技能** - skills/ 目录下的技能所有 Agent 可用
4. **独立配置** - 每个 Agent 有自己的 workspace 和配置
5. **统一管理** - Eason 负责所有 Agent 的部署和优化
6. **单库融合** - 所有记忆写入唯一 Collection,通过 `metadata.agent_id` 隔离
6. **单库融合** - 所有记忆写入 `mem0_v4_shared` Collection,通过 `metadata.agent_id` 隔离
---

@ -10,7 +10,7 @@ global:
config:
host: localhost
port: 6333
collection_name: mem0_global_v4 # 唯一全局 Collection,通过 agent_id 区分
collection_name: mem0_v4_shared # 统一共享 Collection(陈医生/张大师共用)
llm:
provider: openai

@ -143,7 +143,7 @@ class Mem0Client:
"qdrant": {
"host": os.getenv('MEM0_QDRANT_HOST', 'localhost'),
"port": int(os.getenv('MEM0_QDRANT_PORT', '6333')),
"collection_name": "mem0_global_v4" # 唯一全局 Collection
"collection_name": "mem0_v4_shared" # 统一共享 Collection(陈医生/张大师共用)
},
"llm": {
"provider": "openai",

@ -22,7 +22,7 @@
"qdrant": {
"host": "localhost",
"port": 6333,
"collection_name": "mem0_global_v4"
"collection_name": "mem0_v4_shared"
},
"llm": {
"model": "qwen-plus",

Loading…
Cancel
Save