W3D6 学习手册 1.定位2.README3.架构图4.数据流5.ADR 6.NFR7.评测8.失败案例9.演示10.选型 11.简历12.坑达标①达标②自测速记

FDE W3D6 学习手册 · 作品一打磨

W3 Day6 · A 级(必须掌握,作品交付)· 4h · 学完能讲透"企业保险知识库作品一怎么包装成可交付、可面试的工程资产"

本日定位:前面学的是知识点,W3D6 是把作品一(企业保险知识库 RAG)打磨成"能进简历、能讲 30 分钟、能扛深挖"的交付物。重点在 README / 架构图 / 数据流图 / 选型 ADR / NFR 基线 / 评测报告 / 失败案例 / 演示。
学完能回答:① 作品一(企业保险知识库)的架构图和选型 ADR 怎么写;② 一个真实失败案例及修复过程(准备一个可信的例子)。
使用方法:通读 → 重点看「工程含义」「面试话术」「易错点」→ 做自测清单 → 配合《FDE-W3D6-评测题.md》。选中不熟的词可标注(左下★重要 / 右下📌待查)。
参考资源:Dify 文档 docs.dify.ai(对比低代码知识库方案);RAGFlow GitHub(infiniflow/ragflow,选型对比与深度文档解析)。

一、作品一总体定位:企业保险知识库 RAG

作品一是一个面向保险业务的企业级 RAG 问答系统:把保险条款、特药目录、理赔规则等文档建成可检索知识库,结合向量检索 + ES + Rerank + LLM 生成,对外提供"特药理赔/条款咨询"问答,要求可审计、可拒答、防越权

维度作品一设定
业务域医疗保险 / 特药理赔 / 保险条款咨询
核心能力准确检索 + 忠实生成 + 引用可溯 + 无答案拒答 + 角色 ACL
技术栈ES(BM25) + 向量库 + Rerank + LLM + 自研编排(Java/Python)
交付物README / 架构图 / 数据流图 / 选型 ADR / NFR 基线 / 评测报告 / 演示视频
作品一 = 一个企业级保险 RAG 问答系统,核心不是"能答",而是"答得准、可追溯、该拒拒、防越权"。交付时要能讲清架构、选型理由、失败修复和量化效果——这是 FDE 作品考察的本质。
作为有 Java + 大数据背景的候选人,作品一最好的卖点是"工程落地能力":你不是调个 prompt,而是搭了一套可观测、可降级、有评测闭环的系统,并能用保险合规语言讲清价值。面试官最吃这套。

二、README 怎么写(第一印象)

README 是面试官打开仓库第一个看的,要让人 3 分钟看懂"这是什么、解决什么、亮点在哪"。结构建议:

加分项:在 README 顶部放一张架构缩略图 + 一张"优化前 vs 优化后"的指标对比表。面试官懒得读全文,看图和表就决定要不要深挖。
README 让人 3 分钟看懂:定位一句话 + 核心特性 + 架构图 + 效果数据 + 快速开始 + 目录 + 已知限制。顶部放架构缩略图和指标对比表最抓人。
① README 别写成"流水账教程",要突出业务价值和量化效果,否则和培训班作业没区别。② 别只贴代码截图,要有架构图和设计决策。③ "已知限制"要写,写限制显专业、显诚实,比假装完美更可信。

三、架构图设计(面试必问)

架构图要体现数据流向 + 关键组件 + 可靠性设计,而不是堆名词。建议分层:

文档接入 → 解析/切分 → 双写索引(ES + 向量) → 查询路由 → Query优化 → 混合检索 → Rerank → 生成(含引用/拒答/ACL) → 评测闭环
组件职责
接入层文档解析(含 RAGFlow 深度解析)PDF/Word/表格 → 结构化 chunk
索引层ES(BM25)+ 向量库(双写)关键词 + 语义双索引
检索层查询路由 + Query 优化 + 混合检索 + Rerank召回相关 chunk 并排序
生成层LLM 编排(引用/拒答/ACL 校验)生成可审计答案
评测层数据集 + 指标看板 + Trace回归与迭代
架构图讲清"数据怎么从文档流到答案、可靠性设计在哪":接入→解析→双写(ES+向量)→Query优化→混合检索→Rerank→生成(引用/拒答/ACL)→评测闭环。分层画比堆名词更显专业。
画图时用不同颜色区分"在线链路"和"离线/评测链路",并标出每个环节的降级点(如 Rerank 挂了降级纯向量、Query 优化挂了降级原 query)。面试官看到降级点会立刻觉得"这人真做过生产"。
① 架构图别只画"成功路径",要体现降级、缓存、评测、监控这些生产要素,否则像 demo。② 别把 RAGFlow/Dify 当黑盒画一个框了事——要说明你用它的哪部分(如 RAGFlow 的文档解析)、自研哪部分。③ 图要和你的实际代码一致,面试官会顺着图问实现。

四、数据流图设计(端到端可追溯)

数据流图聚焦"一次问答里数据如何流动、状态如何记录",强调可追溯

  1. 请求:用户问句 + 角色/权限上下文进入网关。
  2. ACL 前置:校验角色是否有权查该类文档(越权直接拒)。
  3. Query 优化:Rewrite +(必要时)Multi-Query/Decomposition。
  4. 检索:ES + 向量混合召回 → Rerank → topK,记录每个 chunk 的 doc_id/chunk_id/分数。
  5. 生成:LLM 基于 context 生成,输出答案 + citations + should_refuse。
  6. 后校验:引用校验、拒答校验、敏感词/越权校验。
  7. 落 Trace:全链路记录(query、各路分数、引用、拒答、耗时、成本)。
在保险场景下"可追溯"是硬要求:每一条答案都能从 Trace 反查"用了哪些 chunk、Rerank 分数多少、为什么拒答",出事能定责。数据流图要把 Trace 落点画出来。
数据流图 = 一次问答中数据如何流动且全程可追溯:请求→ACL前置→Query优化→混合检索(Rerank,记来源)→生成(答案+引用+拒答)→后校验→落Trace。关键要把"来源标记"和"Trace"画进图。

五、选型 ADR(架构决策记录)

ADR(Architecture Decision Record)= 记录"当时为什么这么选、考虑了哪些备选、后果是什么"。面试能讲 ADR 直接证明你有决策思维。每个关键选型写一条 ADR:

ADR 要素内容
背景/问题为什么需要这个决策(如"检索方案选型")
候选方案列出 2~3 个(自研 / Dify / RAGFlow 等)
评估维度准确率、可控性、成本、合规、团队栈匹配
决策最终选了什么
后果/权衡得到什么、放弃了什么、后续风险
示例 ADR:为什么检索用"ES + 向量混合"而非纯向量? 背景:保险条款含大量精确条款号/病名/药品编码,语义向量易把"相似但不同"的条款混淆。候选:纯向量 / 纯 ES / 混合。决策:混合(ES 保精确术语命中,向量补语义)。后果:召回更稳,但要多维护一个索引、Rerank 复杂度上升——可接受。
ADR 记录"为什么这么选、备选是什么、权衡是什么"。面试讲 ADR = 证明你有决策思维。示例:检索选"ES+向量混合"而非纯向量,因为保险条款有精确编码,纯向量易混淆相似条款;代价是多维护索引,可接受。
① ADR 不是"列优点",必须写放弃的备选和后果,否则像站台稿。② 别为"用热门技术"而用——要和业务约束挂钩(合规、团队 Java 栈、成本)。③ 决策要可辩护:面试官会问"为什么不用 Dify 低代码省事?"你要有理有据。

六、NFR 基线表(非功能需求基线)

NFR(Non-Functional Requirement)是面试区分"demo"和"生产"的关键。建立可量化基线:

维度基线目标说明
延迟 P95问答 ≤ 3s检索+生成端到端,含 Query 优化
准确率Faithfulness ≥ 0.92基于 50 条测试集
拒答准确率F1 ≥ 0.90should_refuse 子集
引用准确率≥ 0.95真实存在且支持
可用性99.5%检索/生成各自降级
并发≥ 50 QPS保险咨询高峰
成本单问答 ≤ X token含 Query 优化调用
合规ACL 拦截率 100%越权查询零泄露
NFR 基线 = 把"好用"量化成延迟/准确率/可用性/并发/成本/合规指标。有基线表说明你按生产标准做,不是玩具。保险尤其看重合规(ACL 拦截率)和准确率基线。
NFR 不是写完就完,要和评测闭环联动:每次迭代看 P95 延迟、单问答成本有没有涨,防止"为提准确率堆调用把成本打爆"。这是大数据背景候选人的天然优势——你懂成本和吞吐权衡。

七、评测报告(作品一的质量证据)

评测报告是作品一"可信"的证明,结构(详见 W3D5):概览 / 分层指标 / 分类型细分 / 典型 bad case / 结论。在作品一里要能讲:

评测报告 = 作品一的质量证据:基线 vs 优化后指标对比 + 分类型短板 + bad case 回流。能拿出"Faithfulness 从 0.82 到 0.94"这种数字,比说"效果很好"有力百倍。

八、真实失败案例与修复(面试高光)

准备一个真实可信的失败案例,结构:现象 → 根因 → 修复 → 验证。示例:

案例:特药报销比例"张冠李戴"
现象:用户问"奥希替尼报销比例",答案给的是" CAR-T 疗法定向药 80%",实际奥希替尼条款是 60%,且引用指向了错误 chunk。
根因:①检索阶段两药条款语义相近,纯向量把 CAR-T 条款排到了前面;②生成阶段无引用校验,模型"凑引用"把不相关 chunk 标上;③Multi-Query 合并后丢了来源标记。
修复:Ⅰ 检索改混合(ES 精确命中"奥希替尼"病名/编码)提升该 chunk 排名;Ⅱ 加 Rerank 并按来源加权;Ⅲ 生成后做引用校验(二次判定 chunk 是否支持 claim),剔除/纠正错位引用;Ⅳ 多路召回合并强制保留 chunk_id 来源。
验证:该 case 在测试集标为 regress case,回归后引用准确率从 0.86 → 0.97,同类"相似药混淆"case 全部通过。
失败案例 = 现象→根因→修复→验证四段。高光话术:别只讲成功,讲"我曾把奥希替尼比例答成 CAR-T 的,根因是纯向量混淆相似药 + 无引用校验,修复用混合检索+Rerank+引用校验,回归后引用准确率 0.86→0.97"。
① 案例要真实可信、细节到位(具体药名、具体指标),编造会被深挖戳穿。② 要体现"你定位根因"而非"调参碰运气"——面试官看重排查思路。③ 必须讲验证(回归测试),否则显得没闭环。

九、3 分钟演示设计(讲清楚价值)

3 分钟演示要先价值后细节

  1. 0:00-0:30 痛点:保险条款咨询误答风险高、人工成本高 → 作品解决什么。
  2. 0:30-1:30 跑通:现场问一个特药理赔问题,展示答案 + 引用可点开 + 无答案时拒答。
  3. 1:30-2:30 硬核:展示架构图一句带过,重点放"评测指标对比表"和"失败案例修复前后"。
  4. 2:30-3:00 收尾:讲 NFR 基线和落地价值(误答下降、可审计)。
3 分钟演示先讲痛点价值(30s),再跑通展示引用+拒答(1min),然后放评测对比表和失败修复(1min),最后讲 NFR 和落地价值(30s)。别从头讲代码。

十、技术栈对比:Dify / RAGFlow / 自研

方案优势劣势适用
Dify(低代码)上手快、可视化编排、内置知识库深度可控性差、定制 Query 优化/ACL 受限、黑盒难调快速验证/POC
RAGFlow深度文档解析强(表格/版式)、开箱 RAG整体编排与业务系统集成需改造、定制化成本文档解析重的场景
自研编排完全可控、可嵌入 ACL/评测/降级、贴合 Java 栈开发成本高、需自己踩坑生产级、合规要求高
作品一决策示例:用 RAGFlow 承担"深度文档解析"(保险条款多表格/扫描件),自研 Java 编排层负责检索融合、ACL、Query 优化、评测闭环;Dify 仅作内部 POC 对比参考。既借力开源解析,又保核心可控。
选型对比:Dify 低代码快但可控差;RAGFlow 文档解析强适合表格/扫描件;自研可控但成本高。作品一可"RAGFlow 做解析 + 自研做编排/ACL/评测",借力不盲从。
① 别为了"显得厉害"全自研——要讲清哪里借力开源、哪里必须自研(如 ACL/合规必须自己控)。② 提 Dify/RAGFlow 要真用过、说得出细节(如 RAGFlow 的 chunk 方法),否则像背名词。③ 选型要呼应 ADR,前后一致。

十一、简历怎么呈现作品一

简历作品一:一句话成果(Faithfulness 0.94/拒答 F1 0.91/引用 0.97)+ 技术关键词 + 量化价值(误答降 X%、成本降 Y%)+ 明确你的负责模块。用数字说话。

十二、作品打磨常见坑

十三、面试达标线①:架构图 + 选型 ADR 怎么写

13.1 架构图

文档接入 → 解析/切分 → 双写(ES+向量) → Query优化 → 混合检索 → Rerank → 生成(引用/拒答/ACL) → 评测闭环

要点:分层(接入/索引/检索/生成/评测)、在线与离线分开画、标出降级点Trace 落点;图要与代码一致。

13.2 选型 ADR

每条 ADR 含:背景/问题、候选方案(2~3 个)、评估维度、决策、后果/权衡。示例:检索选"ES+向量混合"而非纯向量,因为保险条款有精确编码,纯向量易混淆相似条款;代价是多维护索引——可接受。

架构图讲清分层与降级、Trace 可追溯;ADR 讲清"为什么选、备选是谁、放弃什么"。两者都体现生产级思维和决策能力,是作品一最常被深挖的两块。

十四、面试达标线②:一个真实失败案例及修复

结构:现象 → 根因 → 修复 → 验证。以"特药比例张冠李戴"为例:

  1. 现象:奥希替尼问比例,答成 CAR-T 的 80%,引用错误 chunk。
  2. 根因:纯向量混淆相似药;生成无引用校验;多路召回丢来源标记。
  3. 修复:检索改混合(ES 精确命中病名/编码)+ Rerank 加权 + 生成后引用校验 + 多路合并保留 chunk_id。
  4. 验证:标为回归 case,引用准确率 0.86→0.97,同类全部通过。
失败案例高光 = 现象(具体药名/指标)→ 根因(定位到检索+生成两层)→ 修复(混合检索+Rerank+引用校验+来源保留)→ 验证(回归指标提升)。细节真实、有闭环,面试官最爱听。

十五、W3D6 自测清单

十六、高频面试题速记卡

Q:作品一的架构图画什么?
分层(接入/索引/检索/生成/评测),在线离线分开,标降级点和 Trace 落点。讲清数据从文档流到答案、可靠性在哪。
Q:什么是 ADR?为什么面试要讲?
架构决策记录:背景/候选/维度/决策/后果权衡。讲 ADR 证明你有决策思维,不是只会调包。
Q:为什么检索用 ES+向量混合而不是纯向量?
保险条款有精确编码/病名,纯向量易把"相似但不同"条款混淆;ES 保精确命中,向量补语义。代价是多维护索引。
Q:失败案例怎么讲才可信?
现象(具体药名/指标)→根因(定位到具体层)→修复(对症)→验证(回归指标提升)。细节真实、有闭环,别编造。
Q:Dify / RAGFlow / 自研怎么选?
Dify 低代码快但可控差;RAGFlow 文档解析强;自研可控但贵。作品一可 RAGFlow 做解析+自研做编排/ACL/评测。
Q:NFR 基线为什么要建?
把"好用"量化成延迟/准确率/成本/合规指标,区分 demo 和生产;并和评测闭环联动防成本打爆。
Q:3 分钟演示怎么排?
痛点价值(30s)→跑通展示引用+拒答(1min)→评测对比表+失败修复(1min)→NFR与落地价值(30s)。先价值后细节。
Q:简历里作品一怎么写?
一句话成果(量化指标)+技术关键词+量化价值(误答降X%/成本降Y%)+明确个人负责模块。用数字说话。
Q:为什么引用会张冠李戴?怎么治?
多路召回丢来源标记+生成无引用校验"凑引用"。治:合并保留chunk_id+生成后引用校验(二次判定chunk是否支持claim)。
Q:架构图只画成功路径有什么问题?
像 demo 不像生产。要体现降级、缓存、评测、监控,并标出每个环节降级点,才显真做过生产。
FDE W3D6 学习手册 · 作品一打磨(面试级)· 配合《FDE-W3D6-评测题.md》自测
📌 待查★ 重要