首页/AI/AI 应用速查/引用溯源:让每条结论可核对

引用溯源:让每条结论可核对

让模型输出行内引用标记(如 [1][2]),前端把标记映射回原文片段与链接:既方便核对、降低幻觉风险,也是面向合规审计的硬需求。

AI 应用速查AI更新于 2026-10-13

引用溯源是什么

让模型在每段结论后面标注用了哪条资料,前端把标记映射回原文片段与链接。它一次解决三件事:用户能核对答案、产品能压低幻觉率、合规方能看到依据。落地关键是两条硬约束:提示词层面「没有资料就不下结论」,工程层面引用必须由后端程序化校验,因为模型完全可能引用一个不存在的编号。

基本信息

输出形态行内标记加文末来源列表,或结构化 JSON 的 citations 字段
提示约束只依据给定资料回答,无法得出时固定回复「资料中未提及」
后端校验检查编号是否越界、chunk_id 是否真实存在,校验通过再渲染
唯一键以 chunk_id 而非序号作为引用主键,避免顺序变化导致跳错
展示层点击标记跳转原文并高亮对应段落
留存字段文档标识、页码或偏移、命中时间,便于审计追溯

典型使用场景

  • 企业内部知识库问答:员工需要点开原文核对,而不是只看到一段总结
  • 合同、法规与标准检索:结论必须能定位到具体条款原文
  • 客服对外答复:有出处才允许直接发给客户,无出处转人工
  • 医疗、金融等高风险问答:留痕是审计与合规的前提
  • 内容生产环节:编辑依据引用逐条核对事实,降低返工

结构化引用输出

结构化引用输出
只依据给定资料回答;每个结论后面用 [n] 标注来源编号。  # 强制逐句标注
无法从资料中得出结论时,只回答“资料中未提及”。  # 留出拒答出口
资料片段自带编号,例如 [1] ……(此处为召回文本)
输出 JSON,字段固定,便于后端解析:
{"answer": "……[1]",
 "citations": [{"idx": 1, "chunk_id": "kb-8123#p7"}]}
# 后端拿到 chunk_id 后核对存在性,再渲染为可点击链接

引用异常与处理

异常表现处理
幻觉引用引用了不存在的编号后端按 chunk_id 校验,不存在则剔除或标注
引用与结论不符来源里没有该说法抽检加逐句标注,把不符样本加入评测集
跳错文档序号与来源列表错位以 chunk_id 为唯一键,不依赖顺序
结论无引用整段没有一个标记提示词强制无来源不下结论
引用堆砌一句挂五六个来源限定每句最多一到两个来源
上下文越长,模型引用错位的概率越高:把召回片段的编号写进文本里,并在提示词中要求先复述编号再作答,准确性通常明显好于只给顺序列表。
引用能降低错觉但不能消除:标注了出处的一段话仍可能与原文含义相反,高风险领域必须保留人工抽检环节,不能把校验完全交给模型自检。

易错点

  • 标记编号与来源列表对不上:用户点进去看到的是另一份文档,信任度直接崩掉
  • 把引用校验交给模型自检:等于没有校验,幻觉引用会被原样展示给用户
  • 只在提示词里要求引用却不校验:模型在资料不足时倾向编造一个来源凑格式
  • 召回片段没有稳定标识:文档更新后引用全部失效,历史答案无法回查
  • 引用只存序号不存原文片段:原文被改写或删除后,当初的结论无法复核

数据来源与参考

  • OpenAI / Anthropic 引用输出实践;企业知识库合规要求

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌