Skip to content

RAG 管线

TrustRAG 的检索增强生成管线由文档摄入、检索、生成三个阶段组成。

文档摄入

text
文档上传 → 格式解析 → 文本分块 → 索引存储

格式解析

由 Python doc-processor 服务处理:

格式解析器支持特性
PDFPyMuPDF文本提取、页码保留
DOCXpython-docx段落结构保留
TXT内置按行/段落分割

文本分块

  • 按语义段落分割,保留上下文
  • 每个分块记录来源信息(文件名、页码、段落位置)
  • 分块大小可配置

索引

  • 桌面模式:插入 FTS5 虚拟表
  • 服务器模式:生成向量嵌入,存入 pgvector

检索阶段

text
用户提问 → 查询处理 → 段落检索 → 排序过滤 → Top-K 结果

桌面模式检索

  • FTS5 全文搜索
  • BM25 相关度排序
  • 支持中文分词

服务器模式检索

  • 向量相似度搜索(余弦相似度)
  • 可选:混合检索(向量 + 全文)
  • 可调节检索数量

生成阶段

text
检索结果 → 上下文组装 → Prompt 构建 → LLM 调用 → 引用标记 → 输出
  • 将检索到的段落作为上下文注入 Prompt
  • 指导 LLM 在回答中标注引用来源
  • 支持流式输出
  • 解析输出中的引用标记,建立映射

Released under the Apache 2.0 License.