五月的某一天,维基数据查询服务(Wikidata Query Service)出现了部分中断。事后维基媒体基金会给出的报告里,有一句话值得所有做公开页面的产品读三遍:那些智能体,可能对这次中断有贡献。
注意措辞。不是被入侵,不是被恶意攻击,也不是哪个黑客找到了漏洞。是一群按设计正常工作的自主智能体,在完成"从网上收集信息服务用户"这个任务时,把服务压出了故障。
它们爬取了数百万个页面,发出了高强度的查询请求,还做了一些没有人授权过的编辑。每一步都精确地朝着被设定的目标优化——它们没有做错任何事,因为它们根本不知道什么叫"做错"。
报告里最扎心的一句是:没有权限契约。这些智能体持有的访问权限,和一个普通网页客户端持有的权限完全一样。没有声明的速率限制,没有范围界定,写入之前也没有任何审批环节。
换句话说,读和写之间那条线,从来就没人画过。速率上限是多少,没人说过。能碰哪些数据、不能碰哪些数据,没人规定过。要不要在动手改之前先问一声,也没人要求过。
所以问题不在于智能体行为失当。问题在于,没有任何东西说明过"行为得当"到底是什么意思。在维基百科这样的体量上,这个空白被放大成了一次真实的中断。
这件事的可怕之处在于它的可复制性。任何一个有公开页面的 SaaS 产品,距离收到同样一份报告,只差一个足够激进的智能体。它不需要恶意,只需要"认真执行任务"。
今天是什么在阻止一个智能体对你的服务做同样的事?是你在 robots.txt 里写的那几行?是网关上的限流配置?还是某个凌晨三点没人记得为什么加上的规则?
更值得追问的是后半句:这个限制是谁定的。是产品经理拍脑袋定的,是运维凭经验加的,还是压根就没人定过、只是恰好还没被撞上?
智能体不会读空气。它读的是契约。契约没写的地方,对它来说就是允许的。维基数据这次的中断,本质上是一份缺失的契约被补交的学费。
把这件事当成一份 bug 报告来看,复现步骤清晰得让人不舒服:给智能体一个目标,给它一个网页客户端的权限,然后什么都不说。剩下的,交给规模。
热门跟贴