docs: DEPTH_ROADMAP 新增 T2.4 大文件RAG生产化(三段/P0-P2 全勾,均 live 验证)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+26
-2
@@ -88,6 +88,30 @@
|
|||||||
- [ ] prompt 版本化(可回溯/对比/灰度)—— 未做,是 T2.3 的另一半,独立较大块。
|
- [ ] prompt 版本化(可回溯/对比/灰度)—— 未做,是 T2.3 的另一半,独立较大块。
|
||||||
- 验收:缓存 ✅ 单测;prompt 版本切换待做。
|
- 验收:缓存 ✅ 单测;prompt 版本切换待做。
|
||||||
|
|
||||||
|
### [~] T2.4 大文件 RAG 生产化(切片/向量/队列✅;检索持久 + 治理待补)
|
||||||
|
准生产目标:几十万字文件从上传到可检索,全链路抗并发、抗崩溃、抗大体量。三段已做实并全 live 验证。
|
||||||
|
- [x] **存储**:正文一律落 MinIO(去 <8000字内联PG 阈值,仅 MinIO 挂时回退兜底);`sundynix_doc` 删死字段 `MD5`
|
||||||
|
- [x] **切片**:不改(`chunk.go` 语义切块 500字/重叠80/句界,对大文件本就 OK)
|
||||||
|
- [x] **向量化**:串行→`embedAll` 并发分批(并发4,保序);几十万字上千块快数倍
|
||||||
|
- [x] **图谱**:整篇喂LLM(爆上下文只抽开头)→`extractGraphWindowed` 窗口化(4000字/窗,封顶60,并发3),实体按 kb+name 去重。live:16k→6窗,末段实体进图谱=全覆盖
|
||||||
|
- [x] **入库工作队列**:裸 `go runIngest` → JetStream 持久队列(claim-check 暂存 + durable consumer + MaxAckPending 背压 + AckWait 30min + MaxDeliver 4 + 优雅 drain)
|
||||||
|
- [x] **live 验证**:202/80ms 异步入队;kill -9 中途崩→作业不丢→重启重投续跑完成;4次重投实体数 81 不翻倍(幂等:先删后写+MERGE)
|
||||||
|
- 验收 ✅:切片/向量/队列三段准生产级;下列待补项按 ROI 排序见下。
|
||||||
|
|
||||||
|
#### 待补 backlog(按 ROI 排序)
|
||||||
|
- [x] **🔴 P0 Bleve 落盘**(瓶颈②)✅ —— 全文索引 `NewMemOnly` → 落盘 scorch(env `BLEVE_PATH`,默认 `.data/bleve`,
|
||||||
|
落盘失败退内存兜底;`Engine.Close` 刷盘释放锁)。修复"重启即丢、三路退两路"。
|
||||||
|
单测 `TestBleve_PersistsAcrossReopen`(写→关→重开仍可检索);**live:入库后全文=1 → 重启 mcp-go 不重入库 → 全文仍=1**。
|
||||||
|
- [x] **P1 图谱抽取单配便宜模型**(瓶颈⑤)✅ —— 加 `graphChat`(env `GRAPH_CHAT_BASE/KEY/MODEL`),
|
||||||
|
`graphChatClient()` 优先专用模型、未配回退控制面主 chat。每篇≤60次图谱抽取走便宜模型,主对话仍用好模型。
|
||||||
|
单测 `TestGraphChatClient_FallsBackToMain`(回退/启用)。
|
||||||
|
- [x] **P1 图谱封顶/窗口可配**(瓶颈①)✅ —— `graphMaxWindows/WindowRunes/Concurrency` 改 env 可配
|
||||||
|
(`GRAPH_MAX_WINDOWS` 等)。单测 + **live:16k(默认6窗) 设 GRAPH_MAX_WINDOWS=2 → 实抽 2 窗 + 截断告警**。
|
||||||
|
- [x] **P2 join key → file_id**(瓶颈④)✅ —— 下游键从 doc名 改**稳定 file_id**(gateway 传 docID;
|
||||||
|
Milvus/Bleve 按它键;Neo4j 关系打 `file_id` 属性、实体仍 kb+name 共享)。新增 `kb_delete` 工具
|
||||||
|
+ `DELETE /api/v1/kb/doc` **级联删**(三库 + MinIO + PG/双链,owner 隔离)。
|
||||||
|
**live:删一篇 → PG404/向量0/全文0/图谱0/孤儿实体0/MinIO空 五处皆净;重名重入库 id 稳定不孤儿**。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🗄️ Tier 3 — 生产硬化 ⏸(等有真实流量再上)
|
## 🗄️ Tier 3 — 生产硬化 ⏸(等有真实流量再上)
|
||||||
@@ -106,7 +130,7 @@
|
|||||||
|---|---|
|
|---|---|
|
||||||
| T0 激活 | 2 / 2 ✅ |
|
| T0 激活 | 2 / 2 ✅ |
|
||||||
| T1 收口 | 1 / 2 |
|
| T1 收口 | 1 / 2 |
|
||||||
| T2 深化 | 1 / 3 |
|
| T2 深化 | 1 / 4 |
|
||||||
| T3 硬化 ⏸ | 0 / 5 |
|
| T3 硬化 ⏸ | 0 / 5 |
|
||||||
|
|
||||||
> 推进顺序:T0.1 → T0.2 → T1.1 → T1.2 → T2.* → (T3 按需)。
|
> 推进顺序:T0.1 → T0.2 → T1.1 → T1.2 → T2.1 → T2.4(三段✅) → **T2.4 P0 Bleve 落盘** → … → (T3 按需)。
|
||||||
|
|||||||
Reference in New Issue
Block a user