Files
JARVIS/development-doc/plan/rag-update/phase-r-0-current-state.md

5.9 KiB
Raw Blame History

Phase R.0RAG 现状与目标

日期2026-04-03 状态:已完成 借鉴来源VCPToolBox TagMemo V6 架构


1. 本阶段目的

本文件用于统一背景认知,明确:

  • Jarvis 当前 RAG 架构处于什么水平
  • 主要短板是什么
  • 为什么要升级
  • 升级后的目标形态是什么
  • VCPToolBox 给我们什么启发

2. 当前 Jarvis RAG 架构

2.1 核心流程

用户上传文档 → DocumentService (解析/分块) → ChromaDB (向量存储) → KnowledgeService (检索)

2.2 核心文件

文件 职责
backend/app/services/document_service.py 文档上传/解析/分块
backend/app/services/knowledge_service.py ChromaDB 向量检索/混合检索
backend/app/models/document.py Document/DocumentChunk 数据模型

3. 当前能力矩阵

能力 状态 说明
多格式文档解析 PDF/MD/TXT/DOCX/CSV/XLSX
结构化分块 基于标题层级、表格、段落
向量检索 ChromaDB 语义相似度
关键词检索 SQL LIKE
混合检索 向量 + 关键词加权
Rerank 语义分×0.7 + 关键词×0.2 + 标题×0.1
上下文丰富 自动获取前/后 chunk

4. 当前短板

短板 严重程度 影响
无重叠分块 🟡 跨块边界信息丢失
单索引架构 🟡 无法按知识类型/重要性分层
无动态权重 🟡 检索策略静态,不适配查询类型
无 Tag/标签系统 🟡 无法利用语义标签增强检索
无懒加载机制 🟢 大量文档时内存占用高
无遗忘机制 🟢 存储无限增长

5. VCPToolBox TagMemo V6 核心借鉴

5.1 核心架构

日记文件变化 → TextChunker(Token感知分块85%+10%重叠) 
            → EmbeddingUtils(并发批量向量化) 
            → SQLite(元数据) + VexusIndex(Rust HNSW向量索引)

5.2 TagMemo V6 检索流程

Query → EPA分析(逻辑深度L/共振R) → 残差金字塔 → TagBoost(β动态权重) 
      → LIF脉冲扩散(2跳) → 向量融合 → VexusIndex搜索

5.3 核心模块

模块 功能
TextChunker Token 感知分块85% 安全边界 + 10% 重叠
EPA 语义空间投影分析,识别逻辑深度和跨域共振
Residual Pyramid 残差金字塔,多级剥离捕获微弱信号
TagBoost 动态权重增强,根据查询特性调整
LIF Spike 脉冲扩散2跳拓扑联想
VexusIndex Rust HNSW 向量索引,高性能检索

5.4 关键设计理念

  1. TagMemo 不是搜索引擎,是记忆联想引擎 - 模拟人类大脑的感知→编码→巩固→检索→重构
  2. 动态适配 - 根据查询意图动态调整检索策略
  3. 拓扑涌现 - 基于共现矩阵的脉冲扩散,产生非直观联想

6. 目标架构

┌─────────────────────────────────────────────────────────────┐
│                      User Query                              │
└─────────────────────────┬───────────────────────────────────┘
                          │
              ┌───────────┴───────────┐
              │   Query Analyzer       │  ← R.3 新增
              │  (查询特性分析)        │
              └───────────┬───────────┘
                          │
         ┌────────────────┼────────────────┐
         ▼                ▼                ▼
    ┌─────────┐    ┌───────────┐   ┌──────────────┐
    │ Default  │    │ Important  │   │ Code/Meeting │
    │ Collection│    │ Collection │   │ Collections  │
    └────┬─────┘    └─────┬─────┘   └──────┬───────┘
         │                  │                 │
         └──────────────────┼─────────────────┘
                            ▼
              ┌───────────────────────────┐
              │    Dynamic Reranker      │  ← R.3 新增
              │  (Core Tag Boost + 动态权重)│
              └───────────────────────────┘
                            │
                            ▼
                    ┌───────────────┐
                    │  Search Result │
                    └───────────────┘

7. 借鉴点映射

VCPToolBox 借鉴点 Jarvis 实现位置 优先级
Token 感知分块85%+10% 重叠) services/chunker.py 🟢
多索引架构 services/multi_index.py 🟡
懒加载 + LRU TTL services/multi_index.py 🟡
TagBoost 动态权重 services/dynamic_reranker.py 🟡
核心标签系统1.33x 加权) services/core_tag_search.py 🟡
语义去重 services/deduplicator.py 🔴
语义分桶 services/semantic_bucket.py 🔴
EPA 分析 - 🔴 探索
LIF 脉冲扩散 - 🔴 探索

8. 本阶段产出要求

  • 团队对 Jarvis 当前 RAG 问题和目标方向达成一致
  • VCPToolBox 借鉴点已映射到具体 Phase
  • 后续 phase 文档能够在这个认知基础上展开