2. RAG基础回顾
检索增强生成(Retrieval-Augmented Generation,RAG)的核心思想,是在大语言模型生成答案之前,先从外部知识库中检索出与问题相关的证据片段,再把这些片段作为上下文交给模型,让模型基于“可追溯的事实”作答。它把参数化记忆(模型权重中的知识)与非参数化记忆(外部文档、数据库、知识图谱)结合起来,既缓解了模型幻觉与知识过期问题,又避免了频繁微调的高昂成本。对金融场景而言,这一点尤为关键:监管规则、财报数据、行情研报每天都在变化,答案必须可溯源、可审计、可复现。
一、核心原理:从“闭卷考试”到“开卷考试”
可以把纯生成模型理解为闭卷考试,模型只能凭记忆作答;RAG 则是开卷考试,允许先翻资料再回答。其基本链路包含三个关键角色:索引器负责把原始文档切分、向量化并写入检索库;检索器负责在查询时召回 Top-K 相关片段;生成器负责把问题与召回片段拼接成提示词,输出最终答案。三者之间的数据流与依赖关系如下所示:
从数学视角看,RAG 近似于对条件概率的分解:先由检索器估计 P(z|q)(给定问题 q 得到证据 z 的分布),再由生成器建模 P(y|q,z)(给定问题与证据生成答案 y)。因此,检索质量的上限直接决定了生成质量的上限——召回不到正确证据,再强的模型也只能“巧妇难为无米之炊”。
二、方法流程:一条可落地的五步链路
- 文档解析与清洗:把 PDF、HTML、Excel 转为纯文本,保留标题层级、表格结构与页码,剔除页眉页脚与广告噪声。
- 分块(Chunking):按语义或结构切分,金融文档建议 300~600 字并保留 10%~20% 重叠,表格单独成块并附带表头。
- 向量化与索引:用嵌入模型把块编码为向量,写入向量库,同时建立 BM25 倒排索引以支持关键词召回。
- 检索与重排:先混合召回 Top-50,再用交叉编码器重排取 Top-5,兼顾召回率与精度。
- 生成与引用:把片段与问题拼成提示词,要求模型逐句标注来源,输出后做引用校验与合规过滤。
你是金融合规问答助手。仅依据下列【证据】作答,
每条结论后用 [编号] 标注来源;证据不足时回答“资料不足,无法确认”。
【证据】
[1] {chunk_1}
[2] {chunk_2}
【问题】{query}
【答案】
三、金融领域适配要点与典型场景
金融文本有三个显著特征:数字密集且不容出错、时效性强、合规与权限要求高。因此通用 RAG 方案必须做针对性改造。例如在财报问答中,若把“营业收入 1,234.56 亿元”切碎或丢失单位,模型极易张冠李戴;在监管问答中,若召回旧版条文,可能给出已废止的结论。典型适配手段包括:为每个块附加 doc_id、publish_date、version、access_level 等元数据,检索时按时间与权限过滤;对表格采用“表头+行”结构化编码;对数字类问题引入计算工具而非让模型心算。
| 场景 | 主要挑战 | 适配策略 | 关键指标 |
|---|---|---|---|
| 财报问答 | 表格多、数字精确性要求高 | 表格结构化分块 + 计算工具 | 数值准确率、引用准确率 |
| 监管合规 | 条文版本多、时效性强 | 版本元数据过滤 + 时间衰减 | 时效命中率、合规通过率 |
| 投研摘要 | 长文档、观点分散 | 多路召回 + 重排 + 摘要压缩 | Recall@K、nDCG |
| 内部知识库 | 权限隔离、敏感信息 | ACL 过滤 + 脱敏 | 越权召回率(应为 0) |
四、评估指标与常见误区复盘
RAG 评估应分层进行:检索层看 Recall@K、MRR、nDCG,判断“该找的有没有找到、排得够不够前”;生成层看忠实度(Faithfulness)、答案相关性、引用准确率,判断“有没有编、有没有答偏”;业务层看时效性、合规性与人工复核通过率。三层指标缺一不可,只盯生成层会掩盖检索缺陷。