# 向量记忆系统 - 核心模块详解

## VectorMemorySystem 核心方法

### add_memory(content, metadata, importance)
同时写入向量库 + SQLite

```python
vm.add_memory(
    content="用户喜欢喝不加糖的咖啡",
    metadata={"category": "preference", "tags": ["咖啡", "口味"]},
    importance=4  # >=4 核心记忆
)
```

### search(query, top_k)
语义搜索，返回相似记忆

```python
results = vm.search("股票预警")
# 返回: [{id, content, distance, metadata}, ...]
```

### hybrid_search(query, keyword, top_k)
混合搜索：语义 + 关键词过滤

```python
results = vm.hybrid_search("铜陵", keyword="有色")
```

## MemoryTierManager 分层规则

| 重要性 | 层级 | 说明 |
|--------|------|------|
| >= 4 | core | 永久记忆，不删除 |
| 2-3 | hot | 常用记忆，30天后可归档 |
| < 2 | cold | 冷记忆，自动归档 |

## 数据存储位置

```
~/openclaw-memory-vector/data/memory/
├── memory.db         # SQLite（所有记忆的原始文本）
└── chroma/          # Chroma（向量索引）
    ├── *.bin        # 向量数据
    └── *.sqlite     # Chroma 元数据
```

## 备份与恢复

### 备份
```bash
tar -czvf openclaw-memory-vector.tar.gz ~/openclaw-memory-vector/data/memory/
```

### 恢复
```bash
tar -xzvf openclaw-memory-vector.tar.gz -C ~/
```

## 环境变量

| 变量 | 说明 |
|------|------|
| SILICONFLOW_API_KEY | 硅基流动 API Key |

## 成本估算

- BGE-M3 向量模型：**免费无限**
- 硅基流动大模型：2000万 Tokens/月
- **总成本：≈ ¥0**
