# QMD 在 RAG 中的作用详解 ## 🎯 RAG 与 QMD 的关系 ### 通俗理解 - **RAG** = 检索(Retrieval)+ 生成(Generation) - **QMD** = RAG 中的 **"检索引擎"**(负责找资料) 就像写论文: - **QMD** = 图书馆检索系统(帮你找到相关书籍) - **LLM** = 你的大脑(根据找到的资料写内容) --- ## 🔍 QMD 在 RAG 中做了什么? ``` ┌─────────────────────────────────────────────────────────────────┐ │ 完整 RAG 流程 │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ 1️⃣ 用户提问 │ │ "我之前部署的 copyparty 地址是什么?" │ │ ↓ │ │ 2️⃣ QMD 检索(这就是 QMD 做的!) │ │ ├── 把问题转成向量(768维) │ │ ├── 在本地数据库搜索相似向量 │ │ └── 返回最相关的 memory 片段 │ │ ↓ │ │ 3️⃣ 构建上下文(Prompt) │ │ "根据以下记忆回答: │ │ [QMD 找到的 copyparty 相关信息] " │ │ ↓ │ │ 4️⃣ LLM 生成回答 │ │ "copyparty 地址是 http://129.211.3.54:3923..." │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## 💡 具体例子演示 ### 场景 **用户问**:"我之前部署的文件服务器地址是什么?" ### Step 1: QMD 检索 QMD 把问题转成向量,在本地数据库搜索: | 排名 | 来源文件 | 相似度 | 内容片段 | |------|----------|--------|----------| | 1 | `2026-03-04.md` | 0.72 | copyparty 文件服务器,地址:129.211.3.54:3923 | | 2 | `MEMORY.md` | 0.65 | 文件传输方案,copyparty 地址... | | 3 | `2026-03-05.md` | 0.31 | 今日待办清单... | ### Step 2: 构建上下文 把 Top 2 的结果发给 LLM: ```markdown 用户问题:我之前部署的文件服务器地址是什么? 相关记忆: 1. [来自 memory/2026-03-04.md] 部署 copyparty 文件服务器 ✅ - 地址:http://129.211.3.54:3923 - 账户:admin/123456, user2/654321 2. [来自 MEMORY.md] 文件传输方案 - copyparty 地址:`http://129.211.3.54:3923/files/` - 用户名:user2,密码:654321 请根据以上记忆回答用户问题。 ``` ### Step 3: LLM 生成 LLM 看到上下文后回答: > "你部署的 copyparty 文件服务器地址是:**http://129.211.3.54:3923** > > 登录信息: > - 用户名:user2 > - 密码:654321 > > 文件存放路径:`/root/copyparty-files/`" --- ## 🎨 形象比喻 | 环节 | 比喻 | 实际组件 | |------|------|----------| | 用户提问 | 学生问问题 | 你发消息 | | QMD 检索 | 图书馆查资料 | 向量相似度搜索 | | 找到记忆 | 找到相关书籍 | 返回匹配的 chunks | | 构建 Prompt | 把资料放桌上 | 组装上下文 | | LLM 回答 | 学生根据资料作答 | Kimi 生成回复 | --- ## ⚡ 为什么这样更快? ### 没有 QMD 时: ``` 用户提问 → 加载所有 memory 文件 → 拼接成大文本 → 发给 LLM [6 个文件 = 几千 tokens = 慢 + 贵] ``` ### 有 QMD 时: ``` 用户提问 → QMD 检索(<100ms)→ 只发相关内容给 LLM [只选最相关的 2-3 段 = 几百 tokens = 快 + 便宜] ``` --- ## 📊 数据对比 | 指标 | 无 QMD | 有 QMD | |------|--------|--------| | 检索时间 | 手动翻找 | < 100ms | | Token 消耗 | 几千 | 几百 | | 准确率 | 容易遗漏 | 精准定位 | | API 成本 | 高 | 低(本地运行)| --- ## 🎯 总结 **QMD 就是 RAG 的"大脑记忆检索器":** 1. **存** - 把你的记忆文件转成向量存起来 2. **搜** - 每次提问时快速找到相关内容 3. **给** - 把最相关的片段交给 LLM 生成回答 **效果**:回答问题更快、更准、更省 token! --- *文档创建时间:2026-03-07*