AI 智能体的知识库是什么?
智能体被允许据以作答的那批文档。agent4.io 分开管两种——你公司审定过的材料,和每位客户自己的文件——一起检索,但绝不混为一谈。
知识库是让一个智能体成为「你的」而不是通用的东西。它是「这话哪儿来的」这个问题的答案——而如果答案不在里面,智能体就应该直说没有。
是两套知识库,不是一套
多数平台只给你一堆文档。对一个答 FAQ 的客服机器人够用,对真正的业务差得远,因为客户真正会问的两类问题,性质根本不同:
「你们的条款是什么,我符不符合?」——这是你的材料。费率表、准入规则、现行法规、产品说明。它对所有人都一样,由你审定,具有权威性。
「这是我的学历证明和在职证明——我这情况算什么?」——这是他的材料。只属于某一位客户,往往敏感,对别人毫无意义。
agent4.io 把这两者做成两套独立的系统,故意不共用一套实现:
| 租户知识库 | 客户知识库 | |
|---|---|---|
| 归属 | 你,也就是这家企业 | 某一位终端客户 |
| 内容 | 法规、定价、政策、产品条款 | 他的文档、证书、往来函件 |
| 隔离 | 在 API 层按租户过滤 | 由数据库强制,按客户和空间隔离 |
| 静态存储 | 不加密——本来就是你对外发布的材料 | 用该客户自己的密钥加密 |
| 维护 | 你的管理员整理,发布前审核 | 客户随时自行上传 |
为什么真实的问题两边都要用
拿一个移民咨询举例:「这条通道的薪资门槛我够不够?」
门槛在你的租户知识库里——现行规则,由你们机构审定过。他的薪资在他自己那套里——上周上传的在职证明。任何一半都答不了这个问题。只有你的文档,智能体只能把规则背一遍然后让客户自己去比;只有他的文档,智能体知道他挣多少,却不知道要够到哪条线。
同一个问题会把两边都检索出来,答案就是那个比对结果。
让它们不至于被混淆的那一步
检索到的段落不会被倒进同一个桶里。每一个来源都作为独立的块进来,各自带着自己的框定:
- 你的材料被标注为权威的、必须遵循的,而且每个知识库都可以携带你自己写给模型的指令。一个法规库可以写:这是审定过的现行规则;只据此作答,不要退回到你自己的先验知识;这里没写的,就说没有。
- 客户的材料被标注为仅供参考——是他的东西,有用,但不是政策来源。
这个区分,就是「贵公司的费用是 X」和「客户以为费用是 X,因为他上传的某份文件里这么写」之间的差别。分不清这两者的智能体,迟早会把客户自己写错的东西,当成你的政策再念给他听。
一个没有任何相关段落的知识库,什么都不会贡献——连一个标题头都不会有。相关性在模型看到任何东西之前就由向量距离判定了,所以一个不相干的库不会杵在那里消耗它的注意力。
按知识库分别调严格度
每个知识库都有自己的相关性下限,因为该多谨慎,各处并不一样。法规库应该严:低于下限就什么都不返回、老老实实回答「这个我没有」,这是正确做法,比返回一段讲另一条通道的「差不多」的文字要好得多。一个通用 FAQ 库可以松一些,那里一个大致相关的答案仍然有用。
知识库不是训练集。你上传的任何东西都不会改变模型,它改变的是模型在作答那一刻被允许读到什么。这也是为什么改一份文档,之后所有回答立刻就跟着改了——不用重新训练,不用重新发布。
常见问题
- 要准备多少材料,智能体才开始有用?
- 比多数人以为的少。几页能回答客户真正会问的问题的材料——定价逻辑、服务范围、办理流程、常见异议——胜过一整个文档库,因为检索找的是能回答这个问题的那一段,而不是最大的那个文件。
- 如果我的文档互相矛盾,或者过期了怎么办?
- 智能体根据检索到的内容作答,所以一份过期文档就会产出一个过期答案。让知识库保持诚实是你自己要做的维护工作:把被取代的文档替换掉,而不是把新的加在旧的旁边;回答看起来不对时,去看它引用了什么。
- 我需要把文档重新排版吗?
- 不需要。文件会被自动解析并切分以供检索,PDF 和扫描件也包括在内——没有文字层的扫描页会用视觉方式读取。把内容写成更短、更像问答的小节有利于检索,但那是锦上添花,不是前提。
- 不同的客户可以看到不同的知识吗?
- 可以——知识挂在智能体上,而每位终端客户自己上传的文件和历史都留在他自己的空间里。一位客户的文档永远不会被另一位客户看到。
一份常驻的自我描述,说明这个智能体是谁——它的性格、语气和不可退让的底线——与它当下在干的具体活儿分开存放。
一个有名字的能力包——包含一句「什么时候用它」的说明、一份更完整的操作指令,以及它解锁的工具——智能体只在它变得相关时才加载。
Model Context Protocol(模型上下文协议)——一个把智能体连到外部工具和数据的开放标准,让一套系统只需把自己的能力暴露一次,而不是每接一个 AI 产品就重写一次。
三件经常被当成一件事的活儿——知识库存放事实,MCP 工具执行那些不能让模型即兴发挥的计算,而 Skill 是决定该伸手去拿哪一个的规程。
在你想要的行为的示例上继续训练模型,让那种行为成为它的默认,而不是每次请求都要额外要求的东西。它改变的是模型怎么做,而不是它知道什么。