资讯详情

RAG翻车后,我总结了AI数据治理的四个关键落点

📅 2026/11/4 21:28:34 | 华诺云谱 👁 阅读
RAG翻车后,我总结了AI数据治理的四个关键落点
1. 从一次RAG翻车现场说起数据治理到底卡在哪去年帮一个团队调一套RAG知识库场景不复杂——把公司内部几百份产品文档、运维手册、客服话术灌进去让大模型能回答一线同事的问题。模型选的是当时口碑不错的中文大模型向量库用的主流方案检索链路也是标准的三段式切块、嵌入、召回重排。Demo阶段效果惊艳问什么答什么团队上下都觉得这事成了。上线两周后问题开始冒头。同一个问题换个问法答案就飘了有些明明在文档里写得很清楚的政策条款模型硬是答成另一个版本更离谱的是客服话术里两个版本的退换货规则同时被召回模型把新旧规则缝在一起编出一条根本不存在的政策。用户投诉上来团队第一反应是模型不行换了更大的模型问题依旧。第二反应是检索不行调了切块大小、换了嵌入模型、加了重排命中率是上去了但答案的准确性还是不稳。真正的问题在第三周才被挖出来。我们把召回的知识片段一条条打印出来看发现文档本身就是乱的同一份产品手册有三个版本散落在不同目录命名分别是产品手册_final产品手册_final_v2产品手册_最终版内容互有出入客服话术里7天无理由和15天无理由并存谁也不知道哪个是现行有效的运维手册里的接口地址一半是测试环境一半是生产环境没有任何标记。模型没疯是喂给它的数据本身就是一锅粥。这就是我想聊的核心数据治理是AI落地绕不开的地基。不是因为它听起来高级而是因为所有上层AI能力——RAG、Agent、微调、评测——最终都要落到数据是不是可信、可用、可追溯这件事上。地基没打好上面盖什么都是危房。这篇不聊虚的就从我踩过的坑出发把数据治理和AI落地之间那层关系拆开讲清楚顺带把ETL、API、RAG这些环节里数据治理具体怎么落地讲透。适合正在做AI应用、被数据质量问题折磨过的开发和数据同学看。2. 为什么模型越强数据治理的短板反而越致命2.1 大模型不是万能补丁它只是放大器很多人有个错觉模型能力越强对数据质量的要求就越低反正模型能理解和容错。这个想法在Demo阶段特别容易成立因为Demo的数据是你精挑细选的几十条干净、一致、无歧义。但真实业务数据不是这样。大模型的本质是概率生成它不会去判断这条数据是不是过时了这两个版本哪个是权威的。你给它什么上下文它就在这个上下文里做最可能的续写。数据里存在矛盾它要么随机选一个要么把矛盾的两边揉在一起生成一个看似合理实则错误的新答案。模型越强这种缝合越流畅越不容易被用户一眼识破反而更危险。我常跟团队打一个比方大模型像一个极其聪明但完全不了解你公司情况的实习生。你给他一堆资料让他回答问题资料本身自相矛盾他不会举手说老板你这资料有问题他会挑一个看起来最顺的答案给你而且说得特别自信。数据治理做的就是让这个实习生拿到的资料是唯一、准确、有出处的。2.2 RAG的命中率骗局检索到了不等于答对了RAG检索增强生成是当前AI落地最主流的形态也是数据治理问题暴露最集中的地方。行业里大家特别爱聊命中率召回率这些指标但我实测下来命中率高和答案对中间隔着一条数据治理的鸿沟。举个具体的例子。用户问我们的退款到账要多久。检索系统召回了三段文本命中率指标看是满分——三段都跟退款相关。但三段分别是财务制度里写的审核通过后3个工作日、客服话术里写的一般1-2天、旧版FAQ里写的7个工作日内。模型拿到这三段生成一个通常1-2天最迟7个工作日的答案。从检索指标看完美从业务看这是个错误答案因为现行规则只有一个。问题的根子不在检索算法在于知识库没有做版本治理和权威源标记。数据治理要解决的就是哪份文档是现行有效的、哪个字段是权威口径、旧版本怎么归档、冲突怎么裁决。这些事不做RAG的命中率再高也是在错误的地基上盖楼。2.3 Agent和微调把数据问题从影响答案升级为影响行为如果说RAG里数据问题影响的是说什么那Agent和微调里数据问题影响的是做什么性质更严重。Agent要调用工具、执行操作它对数据的依赖从知识扩展到了状态和指令。一个查订单的Agent如果订单数据里状态字段有已发货已发出shipped三种写法Agent的判断逻辑就会漏掉分支做出错误操作。微调更直接训练数据里如果有脏数据、标注不一致模型学到的就是错的模式而且这种错误是内化的比RAG的检索错误更难排查。我见过一个团队做客服Agent训练数据里混进了一批标注错误的意图样本上线后Agent把投诉识别成咨询的概率明显偏高查了两周才定位到是训练集的问题。数据治理在Agent和微调场景里不是优化项是准入项。3. 数据治理落到AI场景到底要治哪几件事3.1 一致性治理同一件事只能有一个说法一致性是数据治理里最基础也最容易被忽略的一环。在传统数据仓库里一致性指的是同一指标在不同报表里口径一致在AI场景里一致性还要加上同一知识在不同文档里表述一致。具体怎么做我的经验是先建术语表和口径字典。把所有业务实体、指标、规则的定义集中管理每个定义有唯一ID、权威描述、生效时间、负责人。文档写作和知识入库时引用术语表里的ID而不是自由发挥。这一步听起来笨但它是后面所有治理动作的锚点。实操上我会用一张主数据表来承载这些定义字段大致包括术语ID、标准名称、同义词列表、权威定义、生效日期、失效日期、责任部门、关联文档链接。同义词列表特别关键它直接喂给RAG的查询改写和召回扩展让退款退货退款退钱这些说法能映射到同一个标准术语上。3.2 版本治理让现行有效成为可查询的状态版本混乱是RAG翻车的头号原因。治理的核心思路是任何知识都必须有且只有一个现行有效版本其余版本要么归档要么标记失效。落地方式我推荐用状态机来管。每条知识记录带一个状态字段取值比如草稿审核中现行有效已归档已废弃。RAG检索时只召回现行有效状态的数据其他状态的数据物理上还在库里用于审计和追溯但检索链路直接过滤掉。这样既保证了答案的权威性又保留了历史可查。配套的还有变更流程。新版本上线时旧版本自动转已归档同时记录变更原因、变更人、生效时间。这个流程最好和现有的文档管理系统或工单系统打通避免两套流程各跑各的。我见过太多团队知识库和文档系统脱节文档更新了知识库没更新RAG答的还是老版本。3.3 质量治理把脏数据挡在入库之前质量治理的目标是让进入AI链路的数据是干净的。这里的关键是把校验前移到ETL阶段而不是等RAG答错了再回头查。常见的校验维度包括完整性必填字段是否为空、格式合规日期、金额、编码是否符合规范、值域合法枚举字段是否在允许范围内、引用完整外键关联的记录是否存在、逻辑一致开始时间是否早于结束时间。这些校验在传统ETL里是标配但在很多AI项目里被跳过了因为大家觉得反正是给模型看的差不多就行。这个心态是灾难的开始。我的做法是在ETL管道里加一个质量门禁数据从源系统抽取后先过校验规则不通过的记录进隔离区并告警通过的才进知识库。隔离区的数据由数据负责人定期处理要么修正后重新入库要么确认废弃。这样知识库里的数据始终是过了质检的。3.4 血缘治理答案错了能一路追到源头血缘治理解决的是可追溯问题。RAG给出一个答案用户质疑你得能回答这个答案是基于哪几段知识生成的这几段知识来自哪份文档这份文档是谁在什么时候录入的原始数据在哪个系统没有血缘排查就是大海捞针。有了血缘排查路径是清晰的。实现上每条知识记录要带来源标识源系统、源文档ID、录入时间、录入人每次RAG调用要记录召回的知识ID列表。这两者一关联就能从答案反查到源头。血缘还有个附加价值它能帮你发现哪些知识从来没被召回过。这些知识要么是冗余的要么是表述方式和用户问法差距太大需要优化。这是知识库持续迭代的重要输入。4. ETL和API数据治理在AI链路里的两个关键落点4.1 ETL不只是搬数据是治理的执行层很多人把ETL理解成把数据从A搬到B在AI场景里这个理解太窄了。ETL是数据治理规则的执行层治理策略定得再好不在ETL里落地就是纸上谈兵。在AI知识库的ETL里我会把治理动作拆成几个阶段。抽取阶段做源系统登记每个数据源要有明确的负责人和更新频率避免不知道数据从哪来。清洗阶段做一致性映射把源系统里的各种写法映射到术语表的标准表述比如把已发货已发出shipped统一成已发货。转换阶段做版本标记根据源文档的版本信息打上状态字段。加载阶段做质量门禁不通过校验的记录不进知识库。ETL工具的选择上传统ETL工具如Kettle、DataX能覆盖大部分结构化数据的处理但AI场景里大量是非结构化文本需要额外的文本处理能力。我的经验是结构化数据走传统ETL非结构化文本走专门的文档处理管道两者在知识入库前汇合。不要强行用一套工具解决所有问题那样两边都做不好。4.2 API是治理规则的运行时守门人API在AI链路里承担两个角色一是数据进出知识库的通道二是治理规则的运行时校验点。知识入库API要做的事接收文档、校验格式、检查必填字段、验证来源合法性、打上状态标记、写入知识库、记录血缘。这些校验不能只靠调用方自觉必须在API层强制。我见过团队把校验放在调用方结果不同调用方校验标准不一知识库质量参差不齐。知识检索API要做的事接收查询、做查询改写映射到标准术语、按状态过滤只召回现行有效、按权限过滤不同角色能看的知识范围不同、返回结果时附带来源和血缘信息。权限过滤在AI场景里特别重要因为大模型不会判断这个用户有没有权限看这条知识它只会把召回的内容用出去。权限必须在检索层卡死。API的另一个治理价值是调用量监控。通过API调用量能看出哪些知识被高频使用、哪些查询经常失败、哪些接口响应慢。这些数据是知识库优化的直接依据。我一般会记录每次调用的查询词、召回数量、响应时间、是否命中定期分析。4.3 一个可复用的治理管道设计把上面这些串起来一个可复用的AI数据治理管道大致是这样阶段治理动作落地位置关键产出源登记登记数据源、负责人、更新频率配置中心数据源清单抽取按源类型选择抽取方式ETL/文档管道原始数据清洗一致性映射、去重、格式规范ETL标准化数据校验完整性、格式、值域、逻辑校验质量门禁合格数据隔离数据标记版本状态、来源、血缘入库API带元数据的知识入库写入知识库、建索引知识库可检索知识检索查询改写、状态过滤、权限过滤检索API带来源的召回结果监控调用量、命中率、失败率监控系统优化依据这个管道不是一次建成的是迭代出来的。我的建议是先跑通最小闭环再逐步加治理动作。一开始可以只做源登记和基础校验跑起来之后再补版本治理、血缘、权限。一次性设计太复杂团队推不动。5. 那些让我印象深刻的踩坑与排查链路5.1 坑一切块把一条规则切成了两半早期做RAG切块策略用的是固定长度512个token一块。有一份退换货政策文档一条完整的规则是商品签收后7天内在不影响二次销售的前提下可申请无理由退货。切块时正好切在在不影响二次销售的前提下后面前半段进了块A后半段进了块B。用户问退货条件召回了块A模型答签收后7天内可申请无理由退货漏掉了不影响二次销售这个关键前提。排查过程先看召回内容发现召回的是半条规则再看切块日志确认是切块边界问题最后看文档结构发现这条规则在原文里是一个完整的段落但固定长度切块没考虑语义边界。修复方案改用语义切块按段落、标题、列表项这些自然边界切而不是按固定长度。同时加一个重叠窗口相邻块之间保留一定重叠避免边界信息丢失。这个改动之后类似的半条规则问题基本消失。经验切块策略要匹配文档结构。政策类、规则类文档适合按条款切技术文档适合按章节切对话记录适合按轮次切。没有万能切块策略要按内容类型调。5.2 坑二同义词没治理召回漏了一半用户问怎么开发票知识库里有文档写的是如何开具发票检索没召回。原因是查询词开发票和文档里的开具发票在向量空间里距离不够近没进召回列表。排查过程打印召回结果发现相关文档确实没被召回手动用开具发票查询能召回确认是查询词和文档表述不一致导致的。修复方案建同义词表把开发票开具发票发票申请映射到同一个标准查询。检索时先做查询改写再走向量召回。同义词表从哪来从历史查询日志里挖把高频查询词和知识库里的标准表述做映射。这个表要持续维护新出现的说法及时加进去。经验同义词治理是提升召回率性价比最高的手段之一比换嵌入模型便宜得多。但它是脏活累活需要持续投入。5.3 坑三权限没在检索层卡模型把敏感信息说出去了有个项目知识库里混了内部定价文档和对外报价文档。检索层没做权限过滤一个普通销售账号提问召回了内部定价文档模型直接把成本价答出来了。虽然没造成实际损失但暴露了严重的安全隐患。排查过程复现问题确认召回内容包含敏感文档检查检索API发现权限过滤逻辑写在了应用层而不是检索层应用层某条路径漏了校验。修复方案把权限过滤下沉到检索层在向量检索之前先按用户角色过滤可访问的知识范围检索只在授权范围内进行。应用层不再承担权限判断职责避免遗漏。经验AI场景的权限控制必须在数据层做不能依赖应用层或模型自觉。模型不知道什么该说什么不该说它只知道召回什么就说什么。5.4 坑四ETL没做去重同一知识入库了五遍知识库扩容时发现存储量异常排查发现同一份文档被重复入库了五次。原因是ETL任务被重复触发而管道里没有去重逻辑。排查过程查入库日志发现同一文档ID在短时间内有五次入库记录查调度日志确认是任务重试机制导致的重复触发查管道代码确认没有幂等设计。修复方案入库API加幂等校验同一文档ID重复提交时更新而非新增ETL任务加去重阶段按内容哈希去重调度层加任务锁避免同一任务并发执行。经验ETL管道的幂等性是基本功但在快速迭代的AI项目里经常被忽略。去重不只是省存储更重要的是避免同一知识的多份副本在检索时互相竞争影响答案稳定性。6. 把数据治理做成AI项目的默认动作而不是补救措施6.1 治理要前移不能等出事再补我参与过的AI项目里数据治理做得好的都是在项目启动阶段就把治理纳入设计的做得差的都是上线后出问题才回头补的。后者的代价要大得多因为知识库已经积累了大量脏数据清理成本远高于一开始就管好。具体做法项目立项时就把数据治理列为独立工作流明确负责人、治理范围、验收标准。不要把它塞进数据准备这个模糊的筐里那样没人对它负责。治理范围要覆盖前面讲的一致性、版本、质量、血缘四个维度验收标准要可量化比如现行有效知识占比100%质量校验通过率95%以上血缘覆盖率100%。6.2 治理规则要可执行不能停在文档里很多团队有数据治理规范文档但规范和执行是两张皮。规范里写数据必须保证一致性但没人知道具体怎么保证。治理规则必须翻译成可执行的校验逻辑落到ETL和API里。我的做法是把每条治理规则对应到具体的校验代码或配置。比如版本一致性对应到入库时检查同ID是否已有现行有效版本有则旧版本转归档格式合规对应到日期字段必须匹配YYYY-MM-DD正则。规则和执行一一对应可审计、可测试。6.3 治理效果要可度量用数据说话治理做得好不好不能靠感觉要有指标。我常用的几个指标现行有效知识占比知识库里状态为现行有效的记录占总记录的比例理想是100%实际会因为归档延迟略低。质量校验通过率ETL阶段通过校验的记录占抽取记录的比例反映源数据质量。血缘覆盖率有完整来源信息的知识占比理想是100%。检索命中率查询能召回相关知识比例反映知识库覆盖度。答案准确率人工抽检RAG答案的准确比例反映端到端效果。这些指标定期看趋势比绝对值更重要。命中率下降可能是知识库没跟上业务变化准确率下降可能是数据质量退化。指标是治理的仪表盘。6.4 治理是持续过程不是一次性项目最后想说一个心态问题。数据治理不是做完就完了的项目它是持续运营。业务在变知识在更新数据源在增减治理规则也要跟着调。我见过团队把治理当成一次性任务上线前突击清理一遍上线后没人管三个月后知识库又乱了。可持续的做法是把治理动作嵌入日常流程。文档更新时同步更新知识库新数据源接入时同步登记和校验定期做知识库健康检查。治理的负责人最好是固定的不是临时抽调。这样治理才不是负担而是习惯。回到开头那个RAG翻车的项目后来我们花了大概六周做数据治理建术语表、清理版本、加质量门禁、补血缘、下沉权限。六周之后同样的模型、同样的检索算法答案准确率从六成出头提到了九成以上。模型一行没改改的全是数据。这件事让我彻底相信AI落地的瓶颈很多时候不在模型在数据。数据治理这层地基打好了上面的RAG、Agent、微调才有意义。地基不牢模型再强也是空中楼阁。
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑