INNER 05 / RAG / 05 · ENGINE v1
核心 RAG 闭环与引用溯源控制(Module 3: SimpleRAG)
本关练习:设计带强制角标溯源与防脑补护栏的 SimpleRAG 生成模板。
30 SECONDS / 30 秒看懂
这一关只解决一件事:在 StepByStep-RAG 的第三模块 SimpleRAG 中,检索出 Top-K 文档块后,如何把它们与用戶问题拼装成最终 Prompt 决定了生成的可靠性。许多初学者只是简单地把检索文本拼在问题前面,结果大模型把自己的预训练幻觉和知识库事实混在一起输出,用戶根本分不清哪句话出自哪份文件。
- 用带 id 与 source 属性的 XML 标签(如 <context id="1" source="医保手册_p
- pdf">)结构化封装检索片段(
- 5 分);
3 MINUTES / 3 分钟拆解
先看来源里的例子:PDF 本关任务(来源)
你将检索到的 3 个带编号的知识库片段注入大模型,要求模型回答客戶的医保报销比例问题, 且每一句结论都必须标明具体出处编号。
发生了什么
来源要求:用带 id 与 source 属性的 XML 标签(如 <context id="1" source="医保手册_p / pdf">)结构化封装检索片段( / 5 分);
输出
参考答案:参考答案:带角标溯源与证据冲突披露的 SimpleRAG 生成模板请严格依据下方 <retrieved_contexts> 标签内提供的知识库片段回答用戶问题。 <retrieved_contexts> <context id="1" source="员工补充医疗手册_2026.pdf#第12页"> 门诊医疗费用报销:起付线为每年累计 500 元,超过起付线部分按 90% 比例报销,年度封顶 2 万元。 </context> <con
术语拆开
- 引用溯源
- 把回答绑定到具体检索片段。
- 拒答
- 证据不足时明确说无法回答。
为什么有效
来源核心原理:在 StepByStep-RAG 的第三模块 SimpleRAG 中,检索出 Top-K 文档块后,如何把它们与用戶问题拼装成最终 Prompt 决定了生成的可靠性。许多初学者只是简单地把检索文本拼在问题前面,结果大模型把自己的预训练幻觉和知识库事实混在一起输出,用戶根本分不清哪句话出自哪份文件。高标准的 RAG 生成指令必须强制执行“封闭域作答 + 句末角标溯源(如 `[来源1: 文件名#页码]`) + 证据冲突显式披露”。
结构长什么样
用带 id 与 source 属性的 XML 标签(如 <context id="1" source="医保手册_p pdf">)结构化封装检索片段( 5 分); 强制规定输出中的每一个事实断言末尾必须紧跟 [来源X] 角标引用( 5 分); 规定当所有检索片段与问题无关时,直接输出固定拒答话术且不附带虚假引用( 5 分)。
为什么没有证据时不能随便引用一个最像的片段?
SOURCE READING / 来源精读
在 StepByStep-RAG 的第三模块 SimpleRAG 中,检索出 Top-K 文档块后,如何把它们与用戶问题拼装成最终 Prompt 决定了生成的可靠性。许多初学者只是简单地把检索文本拼在问题前面,结果大模型把自己的预训练幻觉和知识库事实混在一起输出,用戶根本分不清哪句话出自哪份文件。
逐点读懂
- 用带 id 与 source 属性的 XML 标签(如 <context id="1" source="医保手册_p
- pdf">)结构化封装检索片段(
- 5 分);
怎么对应本关练习
先读 30 秒与 3 分钟拆解,再读本关原文与实验,最后做客观题和实操题;答案在下方。
例子在哪
本关任务与参考答案见页面下方;来源为本册 PDF 对应关卡。
本关先记住:用带 id 与 source 属性的 XML 标签(如 <context id="1" source="医保手册_p
核心原理
在 StepByStep-RAG 的第三模块 SimpleRAG 中,检索出 Top-K 文档块后,如何把它们与用戶问题拼装成最终 Prompt 决定了生成的可靠性。
许多初学者只是简单地把检索文本拼在问题前面,结果大模型把自己的预训练幻觉和知识库事实混在一起输出,用戶根本分不清哪句话出自哪份文件。
高标准的 RAG 生成指令必须强制执行“封闭域作答 + 句末角标溯源(如 `[来源1: 文件名#页码]`) + 证据冲突显式披露”。
第 5 关实操练习题:设计带强制角标溯源与防脑补护栏的 SimpleRAG 生成模板
任务背景
你将检索到的 3 个带编号的知识库片段注入大模型,要求模型回答客戶的医保报销比例问题, 且每一句结论都必须标明具体出处编号。
通关硬性要求(满分 12.5 分)
1. 用带 id 与 source 属性的 XML 标签(如 <context id="1" source="医保手册_p
2.pdf">)结构化封装检索片段(
4.5 分);
2. 强制规定输出中的每一个事实断言末尾必须紧跟 [来源X] 角标引用(
4.5 分);
3. 规定当所有检索片段与问题无关时,直接输出固定拒答话术且不附带虚假引用(
3.5 分)。
PRACTICE / 本关练习 · 本地规则 + 覆盖检查
设计带强制角标溯源与防脑补护栏的 SimpleRAG 生成模板
本地检查在你的浏览器里完成,不上传。覆盖检查需要先登录(免费注册),并把这段答案发送到服务器计算一次,算完即弃、不存档,需你点同意;只核对本关评分项覆盖的方向,不在评分项里的题目不会被检查。
评分项
结构分 — / 12.5 分
查看参考答案与得分点 先自己写,再打开+
参考答案与得分要点
参考答案:带角标溯源与证据冲突披露的 SimpleRAG 生成模板请严格依据下方 <retrieved_contexts> 标签内提供的知识库片段回答用戶问题。 <retrieved_contexts> <context id="1" source="员工补充医疗手册_2026.pdf#第12页"> 门诊医疗费用报销:起付线为每年累计 500 元,超过起付线部分按 90% 比例报销,年度封顶 2 万元。 </context> <context id="2" source="家属连带医疗福利说明.pdf#第4页"> 员工子女门诊费用按 50% 比例报销,无起付线,年度封顶 5,000 元。 </context> </retrieved_contexts>
【生成与溯源硬性规则】
1. 严禁使用外部常识:只能使用 <retrieved_contexts> 中的信息。若提供的片段无法回答问题,请直接输出:
“抱歉,当前知识库中未检索到与该问题相关的明确规定。”
2. 强制句末角标引用:回答中的每一条数据或结论末尾,必须标注对应的来源编号与文件名,格式严格为 [来源
1: 员工补充医疗手册_2026.pdf#第12页]。
3. 若不同片段之间存在条款冲突,必须在回答中同时列出双方表述并注明各自来源。
用戶问题:我自己看门诊和给孩子看门诊,报销比例和起付线分别是多少? 得分要点拆解:用带 `id` 和 `source` 属性的 XML 标签包裹片段(4.5 分);强制要求句末附上 `[来源X: 文件名#页码]` 角标(4.5 分);包含无证据拒答与条款冲突披露规则(3.5 分)。 第 6 关
网页永久免费。完整 PDF 会按顺序发给留邮箱的读者,不转售、不群发广告。
留邮箱,获取完整 PDF ↗