问题:原 IsContradiction 使用 strings.Fields(),中文无空格时整句为一个词,
导致 overlap 始终为 0,矛盾检测永远失败。
修复:
- 新增 splitWordsCN:中文按 unicode.Han 字符级切分,英文按空格分词
- 新增 containsNegCN:检测中文否定词(不是/没有/不/没/莫/别)
- IsContradiction 合并中文/英文两种检测逻辑,阈值调至 0.3
验证:Test 2 返回 {"conflicts": ["小唯是牧尘的女朋友"]} ✅
|
||
|---|---|---|
| .github/workflows | ||
| .venv | ||
| backups | ||
| carriers/shared | ||
| deploy | ||
| docs | ||
| go | ||
| openclaw-zhiyi-plugin | ||
| plugins | ||
| proto | ||
| rust | ||
| scripts | ||
| .gitignore | ||
| BENCHMARK.md | ||
| DESIGN.md | ||
| IMPLEMENTATION-FIVE.md | ||
| IMPLEMENTATION.md | ||
| Makefile | ||
| README.md | ||
| REPAIR-FULL.md | ||
| REPAIR-PLAN.md | ||
| VERSION | ||
| WORKLOG.md | ||
README.md
织忆 (MemoryWeave) — 独立记忆基础设施
Go + Rust 双二进制架构 | port 7821 | 版本 v0.1.0-dev
织忆是多 Agent 系统的共享记忆层。
zhiyid (Go daemon, port 7821)
├── REST API / WebSocket
├── 蒸馏引擎 / 冲突治理
├── Redis 事件流
└── 调用 zhiyi-consolidate
zhiyi-consolidate (Rust binary, systemd timer)
├── LanceDB 原生读写
├── DBSCAN 聚类 / 衰减回归
├── Embedding + Rerank 管线
└── → 结果写回 LanceDB
快速开始
# 构建
make build
# 安装
sudo make install
# 验证
curl http://localhost:7821/health
文档
语言分工
| 组件 | 语言 | 原因 |
|---|---|---|
| HTTP API + 业务逻辑 | Go | goroutine 高并发,单二进制 |
| LanceDB + 向量管线 | Rust | 原生 lancedb crate,零 FFI |
| Embedding/Rerank | Rust | Candle/ort 推理 |