ARTICLE · 1117638
AI 知识库里的文档打架了,答案该听谁的?
知识库里躺着两份说明,一份写“试用7天”,另一份写“试用10天”。你问 AI:标准套餐能试用多久?
它答得很流畅,甚至顺手补了一句“祝您体验愉快”。
可惜,体验是否愉快还不知道,答案先把两份文档的矛盾藏起来了。
这类问题很容易被归到“提示词还不够严谨”。于是再加一句:严格依据知识库回答。结果只是让 AI 更认真地从互相冲突的资料里挑一个数字。
要解决它,得把“搜到相关资料”和“选到有效依据”分开处理。前者找到可能有关的段落,后者决定这段话是否适用于这次问题。检索结果不能直接充当裁判。
新文件说得更晚,不一定说的是同一件事
先看一个具体问题:“标准套餐能试用几天?”
旧说明写着:标准套餐试用7天。新公告写着:企业套餐试用14天。
两份资料都有“套餐”“试用”“天数”,新公告的日期也更晚。看起来很相关,却不能把标准套餐的答案改成14天。它更新的是企业套餐,和这次问题不在同一个范围。
所以,选依据的第一步是匹配范围:问的是哪个产品、哪个套餐、哪个地区、哪个时间段。资料中还可能有渠道、客户类型或功能版本等条件,是否需要这些字段取决于实际业务规则。
问题没说清楚,先问清楚。用户只问“能试用多久”,而不同套餐规则不同,就追问套餐名称。不要让 AI 一边猜用户买了什么,一边替业务决定送几天。
有明确范围后,再筛资料。无法确认适用范围的文档可以用于补充背景,不能直接支撑确定结论。这一步能排除一大批“相关但不适用”的答案。办公室里的“最新版”有时只是文件名里的三个字,业务范围才是它真正的身份证。
日期有三种,别把上传时间当生效时间
同一范围内,两份说明仍然冲突,才轮到版本判断。
这里至少要分清三类时间:文档发布或修订时间、规则生效时间、进入知识库的上传时间。它们可能相同,也可能差很多。
一份去年有效的说明,今天重新上传,并不会因此自动取代昨天生效的新规则。上传时间只告诉你资料什么时候进入系统,不能单独证明规则什么时候成立。
继续看标准套餐:旧说明写试用7天;新公告写“自10月1日起改为10天,替代旧说明”。这次有了两个关键依据:生效日期,以及明确的替代关系。
问10月2日的规则,核对公告来源有效、适用范围一致且已经生效,就依据新公告回答10天。问9月的规则,则回到当时有效的版本。历史问题需要历史答案,不能把今天的规定穿越回去。
还要注意,新公告可能只修改某一条。它改了试用天数,不代表旧说明里的退款、账号数量和功能限制全部失效。替代关系应能定位到具体范围或条款,不能把“改了一行”处理成“整本作废”。

给文档补上能判断的身份
如果有效性全靠模型从正文里猜,每次回答都得重新破一次案。更稳妥的做法,是在资料进入知识库时就整理它的身份。
可以先从这些字段开始:文档标识、适用范围、版本标识、生效时间、失效时间、替代对象、维护方和有效状态。原始资料没给出的值保持缺失,交维护方补齐,不让 AI 自动编出日期。
有效状态和时间范围要一起看。标成“已生效”的文档,不代表它能回答任何历史日期;标成“已归档”的旧版,也可能是回答过去规则的正确依据。
分段入库时,这些信息还要跟着段落走。否则整份公告知道自己是企业套餐,切成小段以后只剩“试用14天”,范围就丢了。段落最好能追溯到文档标识、章节位置和原始版本,方便检查检索结果。
不一定要一开始就造一个复杂管理后台。先整理一张资料登记表,把正在使用的规则、谁负责维护、什么被什么替代写清楚,也能比“所有 PDF 丢进去再说”前进一步。
检索前,根据问题中已明确的范围和时间筛选候选资料;检索后,再检查实际返回段落是否保留了这些条件。范围匹配、版本有效和答案有依据,是三次相关但不同的检查,不能指望一条提示词全部兜住。
找不到替代关系,就把冲突交接出去
最难处理的情况是:两份来源有效的资料讲同一范围,一份7天,一份10天,没有明确生效依据,也没有谁替代谁的说明。
这时,系统应暂停给出确定天数。不要按“哪个段落更像答案”选数字,也不要取平均值。8.5天不是折中方案,是冲突又长出了小数点。
冲突交接要包含两段原文、文档名称、版本与对应位置,并写清本次问题的套餐和时间。交给维护方的问题也要具体:哪个版本有效?从哪天生效?替代整份说明还是某个条款?适用于哪些对象?
面向提问者,可以直接说:“资料对标准套餐的试用天数有冲突,目前无法确认有效规则,已转资料维护方核对。”这里的“已转”必须对应实际交接动作;尚未交接时,改为说明需要维护方确认。回答可以不知道天数,但必须说清卡点和下一步。
维护方确认后,更新文档的有效标记、时间和替代关系,再重新检索并核对答案。不要只在聊天记录里补一句“后来确认是10天”,让知识库继续保留两套互相争吵的规则。
如果系统缓存了答案或检索结果,还要处理相关缓存的失效或刷新;最终检查用户再次提问时拿到的是更新后的依据。修好资料却继续发旧答案,通常不是模型恋旧,而是更新没有走到最后一环。

回答带上依据,排查才有抓手
依据确认后,给用户的答案可以很短,但内部记录不能只存一句“试用10天”。
一条可追溯的回答记录可以这样组织:结论是标准套餐可试用10天;适用条件是10月2日、标准套餐;依据是已经生效的新公告及对应条款;核对记录是维护方确认它替代旧说明。
用户端按需要展示适用条件和来源入口,内部保留文档版本、条款位置及确认信息。下次发现答案不对,才有办法判断是问题理解错了、资料选错了,还是有效规则已经更新。
这也提醒我们:回答正确不只意味着数字碰巧对。一个答案报出10天,却引用企业套餐公告,仍然没有通过核对。结果和依据必须指向同一范围、同一条有效规则。
发布前,换三种问法看看
验证时,不要只反复问“标准套餐能试用多久”。同一个问题问十次都回答10天,只能说明它很坚持。
先把套餐改成企业套餐,检查是否重新选择企业套餐资料,而不是继续沿用标准套餐答案。再把时间改成9月,检查是否查询当时有效的规则。最后去掉替代关系或放入另一份冲突资料,检查是否停止给确定数字、保留冲突并进入人工确认。
再补两个维护侧检查:规则只改了一个条款时,其他条款有没有被误判失效;资料确认更新以后,检索结果和已有缓存有没有同步到新版本。
这些检查对应的是前面的设计方法:范围决定资料是否适用,生效与替代关系决定版本是否成立,冲突处理决定什么时候不能继续,留痕决定出了问题能否追查。
准备接入知识库时,先拿最常被问到的一条业务规则,把适用对象、生效日期、替代关系和维护方整理出来。然后分别问当前、历史和冲突三类问题,核对它选的依据。
文档的身份和关系清楚了,AI 才能把答案说得清楚。否则,提示词写得再像合同,也解决不了资料自己还没达成一致。