Long Context Rag Analyzer — 长上下文碎片分析器
v1.0.0分析和优化大文档(100K–2M 个标记)中的长上下文 RAG 流水线,使用混合搜索、分块策略和多文档推理。
运行时依赖
安装命令
点击复制技能文档
长上下文 RAG 分析器概述 随着 Gemini 3.1 Ultra 的 2M 令牌上下文窗口和 DeepSeek V4 的 1M 令牌上下文的到来,“将所有内容都放入提示”时代已经到来。但是,原始上下文是不够的——真正的挑战是构建智能检索系统,提取正确的信息,按相关性对其进行排名,并将其合成可行的见解。本技能提供了一个完整的框架,用于构建、评估和优化长上下文 RAG 流水线,用于专业使用。
长上下文 RAG 分析器 —— 从大规模文档到可行见解 触发器 “长上下文分析” / “长文本分析” / “超长文档分析” “RAG 优化” / “RAG优化” / “检索增强生成” “文档分块策略” / “文档分块” “混合检索” / “混合检索” / “向量搜索” “上下文窗口优化” / “上下文窗口优化” “多文档推理” / “多文档推理” “检索质量评估” / “检索质量评估” “财报 RAG 分析” / “财报分析” “法律文书分析” / “法律文书分析” “论文综合分析” / “论文综合分析” “100K 令牌” / “1M 令牌” / “2M 令牌上下文” “向量数据库” / “向量数据库”
工作流 第 1 阶段 —— 文档接收和预处理 步骤 1.1:文档分类 根据类型、结构和处理优先级对传入文档进行分类。 文档分类学:类别示例结构处理优先级 财务报告年度报告、10-K、收益转录半结构化、表格关键 法律合同保险单、贷款协议高度结构化、密集高 研究论文学术论文、市场研究良好结构化、引用中等 内部备忘录会议记录、内部电子邮件非结构化低 监管提交CBIRC 提交、SEC 提交结构化、表格关键
步骤 1.2:元数据提取 提取关键元数据以启用过滤和排名。 所需元数据:文档 ID、标题、日期、来源实体提及(公司、人员、产品)关键日期(报告期、截止日期、事件日期)情感/语气指标页数、令牌数(估计)对于财务报告,特别是:公司名称、股票代码、财务周期收入、净收入、关键比率(如果可用)审计师、提交日期相关实体(子公司、母公司)
第 2 阶段 —— 分块策略选择 步骤 2.1:选择分块方法 不同的文档类型需要不同的分块策略。 根据以下内容选择: 分块策略矩阵: | 策略 | 最适合 | 分块大小 | 重叠 | 保留 | |----------|----------|------------|---------|-----------| | 固定大小 | 同质内容(日志、票据)| 512-1024 令牌 | 50-100 令牌 | 速度 | | 语义 | 段落级别的含义 | 512-1500 令牌 | 10-20% | 连贯性 | | 文档结构 | 报告、合同、论文 | 按章节/部分 | 100-200 令牌 | 结构 | | 递归 | 嵌套内容 | 适应性 256-1024 | 15% | 层次 | | 主动 | 混合内容类型 | 动态 | 上下文感知 | 意图 | 对于财务报告:推荐 → 语义 + 文档结构混合 对于法律合同:推荐 → 递归,带有章节边界 对于研究论文:推荐 → 按章节的文档结构 + 引用图
步骤 2.2:计算最优分块大小 # 分块大小计算器 def calculate_optimal_chunk_size(document_tokens, query_pattern): # 根据查询复杂性估计 if "详细分析" in query_pattern or "深入分析" in query_pattern: chunk_size = 1500 # 对于复杂查询的更大块 elif "比较" in query_pattern or "摘要" in query_pattern: chunk_size = 2048 # 对于比较分析的章节级别 elif "特定事实" in query_pattern or "查找" in query_pattern: chunk_size = 256 # 对于精确检索的小块 else: chunk_size = 768 # 默认 overlap = int(chunk_size * 0.15) # 15% 重叠 return chunk_size, overlap
第 3 阶段 —— 索引和检索 步骤 3.1:混合搜索设置 将向量相似性搜索与关键字(BM25)搜索相结合,实现最佳检索。 混合搜索架构: 查询 → [向量搜索(余弦相似性)] ←→ [BM25 关键字搜索] ↓ ↓ 顶级语义结果顶级关键字结果 ↓ ↓ 互相排名融合(RRF)→ 最终排名结果 不同用例的配置: # 中国财务报告 RAG —— 混合配置 HYBRID_CONFIG = { "vector": { "model": "text-embedding-3-large", # 3072 维度用于高质量 "dimension": 3072, "召回率_top_k": 20, "similarity_threshold": 0.75 }, "keyword": { "algorithm": "BM25", "k1": 1.5, "b": 0.75, "召回率_top_k": 20 }, "fusion": { "method": "RRF", # 互相排名融合 "rrf_k": 60 # 标准 RRF 参数 }, "rerank": { "model": "cross-encoder/ms-marco-MiniLM-L-12v2", "top_n": 5 # 最终重新排名结果 } }
步骤 3.2:检索质量评估 评估检索质量...