公司内部的 AI 搜索:现实版本
提个问题,从你所有的内部文档里得到答案。演示像魔法。这里讲的是,一旦真实的数据和真实的权限到来,是什么让它变难。
每家公司都做着同一个梦:一个你能问任何事的助手,它从你所有的内部知识里作答——维基、文档、聊天记录、那些谁都找不到的旧提案。这个演示,建立在一个干净的、写得很好的文档文件夹之上,确实像魔法。然后你把它指向真实的公司,发现文档一团乱、权限是个雷区,而人们实际会问的问题与演示毫不相像。本文是现实版本:为什么内部 AI 搜索比外部搜索更难,以及是什么把那些被真正用起来的部署,与那些被悄悄抛弃的部署区分开来。
你的文档比你想的更糟
第一个现实是语料库。演示跑在某人精心策划过的文档上。公司跑在多年积累下来的文档上:带着细微差别的重复副本、从未被标记为草稿的草稿、三次重组之前的一份政策与它的替代品并排放着,以及那个最被需要的答案,只活在某人的脑子里或一条被埋没的聊天串里。AI 搜索修复不了这些;它会把这些暴露出来。当两份文档互相矛盾时,系统会自信地从检索恰好排得更高的那一份里作答。
这就是为什么成功的项目在语料库上花的力气,比在模型上更多。去重、把文档标记为权威或废弃、移除陈旧的那些,对答案质量的提升,胜过任何程度的调优。那个不起眼的真相是:内部搜索是一个穿着 AI 戏服的知识卫生项目。
检索才是全部的胜负所在
像任何从文档作答的系统一样,质量天花板由检索而非生成决定。如果相关段落没有被摆到模型面前,再流畅的书写也产不出正确的答案——它只会产出一个自信的错误答案。内部搜索中的大多数失败都是检索失败,而它们很容易被误诊,因为答案读起来仍然不错。
内部语料库让检索尤其困难。人们用公司特有的简称、项目代号,以及在财务和工程里含义不同的缩写来搜索。相关文档用的词,可能与问题里的词完全不同。衡量正确的文档是否真的被检索到——与答案听起来好不好分开衡量——是一个团队能做的最有用的一件事,也是大多数团队会跳过的那件事。
权限是可能让你惹上麻烦的部分
外部搜索只有一个受众。内部搜索有许多受众,而他们不被允许看到同样的东西。销售不该检索到尚未公布的路线图;外包人员不该检索到薪资表;新员工不该检索到那份标注为仅限高管的文档。一旦你的搜索索引无视谁在问,它就变成了一台泄露引擎,流畅而热心地用提问者从未获许看到的信息作答。
把这个做对,比听起来要难,因为模型坐在检索的下游。如果检索拉出一个用户无权访问的段落并把它交给模型,模型会乐意去总结它。因此权限必须在检索层强制执行,按用户区分,在任何文档抵达模型之前——而不是事后再拴上去。这正是诸如 NIST AI 风险管理框架(NIST AI Risk Management Framework)之类的框架存在、用以推动团队去做的那种考虑后果的控制:一个错误答案的代价是温和的;一次机密泄露的代价不是,而控制应当反映这一差别。
问题不是演示里的问题
演示用干净、事实性的问题配上干净、事实性的答案。真实的问题更乱。人们问的东西横跨许多文档,需要从一连串变更中综合出当前状态,实际上是关于某份文档未曾记录的部落知识,又或者是真正含混不清的。一个被调校成寻找并引用单个段落的系统,在诚实的答案是「这分散在五份文档里,其中两份互相矛盾」时就会吃力。
另一个意外是,人们提问时,是希望系统能优雅地承认无知。一个总是产出答案、即便它没有任何相关内容的系统,比一个会说「我找不到任何权威的相关信息」的系统更糟。自信的空洞,比诚实的缺口更快地摧毁信任。
这些项目为什么会被抛弃
内部搜索项目很少以一声巨响告终。它们安静地失败:它在演示里管用,被推广出去,人们试用它,在一些自己本就知道答案的问题上得到几个自信的错误回答,失去信任,然后慢慢退回到去问同事。工具没被移除;只是不再被打开了。一旦信任没了,连正确的答案也无人相信。
这种模式是可以避免的。信任的建立,靠的是先在简单、高流量的问题上答对,靠的是引用来源文档以便人们核实,以及靠说「我不知道」而不是瞎猜。一个亮出过程、承认局限的系统,会赢得善意的推定;一个对一切都流畅作答的系统,会在第一个自信的错误上把信誉花光。
那些管用的部署在做什么
那些存活下来的内部搜索系统,共享同一种面貌。它们把语料库清理当作核心工作,而不是配置。它们在检索处、按用户强制执行权限。它们直接衡量检索质量,而不只是答案的流畅度。它们引用来源,好让每个答案都可核实。它们有意地设计「我不知道」这条路径。并且它们界定野心:把排在前一百的高频复发问题答对,胜过对一切都半答不答。这些没有一样是奇特的,但全都是演示让你能跳过的工作——而这恰恰是为什么演示比部署轻松得多。
总结
内部 AI 搜索许诺把你公司散落的知识,变成一个可被回答的统一资源,而演示让它看起来毫不费力。现实在四条战线上更难:你的文档比你想的更乱,是检索而非生成设定了质量天花板,权限必须在检索层按用户强制执行、否则系统会泄露,而真实的问题与演示问题毫不相像。清理语料库,衡量检索,把守访问,引用来源,并让系统能承认无知。做到这些,它就成了人人想要的那个资源。跳过它、把演示直接上线,那么在人们第一周抓到它自信地答错时,这个工具就会被悄悄抛弃。
