9月18日,一个开发者在自己电脑里发现了一份 313MB 的加密文件。他打开一看,里面大约四万两千个文件,其中 86.6% 来自 .git——就是那个记录代码每一次改动的历史文件夹,连早就删掉的东西也留在里面。
也就是说,被打包带走的不只是眼前这版代码,还有这家公司过去几年所有的开发动作,包括那些以为已经删干净的。
这份文件来自智谱旗下的 AI 编程工具 ZCode。当天傍晚,智谱道歉,说问题出在"代码库索引"和自动生成说明文档两个功能上,早期版本默认开着,数据传到云端、用完就销毁,并承诺公开代码、请第三方来查。第二天,太原一家公司正式发函追责。按它自己取证的结果,被带走的不只是源代码,还有数据库口令、云服务的凭证和员工信息。它要求智谱回答四个问题:数据最后去了哪儿、有没有出境、谁看过、“用完就销毁”到底覆盖了服务器、缓存和备份的哪些部分。到 9月21日,智谱宣布整改完成:代码公开,第三方机构确认云端数据已删,新版本移除了相关功能。
从出事到改完,七十二小时,速度不算慢。但这件事,无疑在AI狂奔的烈火战车上,浇了一场瓢泼大雨。
甚至可以说,这是国产AI开始普及以来,迄今为止最严重的数据争议事件之一了。
为什么这事比别的数据争议严重?AI 产品碰用户数据本来不算新鲜事,聊天记录、上下文、上传的文档,AI对这些敏感信息的获取权限和使用边界在哪里,人们吵了一轮又一轮。但编程工具不是一个量级。它指向的是企业最核心的东西:完整源代码、还没发布的版本,以及那些不该出现在代码里却偏偏躺在里面的东西——数据库密码、云服务的钥匙。一个 .git 目录,等于把这家公司过去几年的底稿复印了一份,钥匙也一并印上去了。
更要命的是场景。AI 编程工具正在从个人玩具变成企业采购,而企业采购永远要问三件事:数据存在哪、留多久、出不出境。这三问答不好,功能再强也进不了门。
这里要替智谱说句公道话:上传代码做索引本身,未必就是罪。要让 AI 读懂一个项目、跨着文件找东西,本来就得先让它“看过”代码,不做反而不好用。
然而,干活需要“看过”数据,不等于你可以“带走”数据。
坏就坏在三个地方没处理好。一是没打招呼,用户在完全没感觉的情况下,整个工作区被打包端走。二是关不掉,两个隐私开关都形同虚设,说明这开关从来没被认真检查过,作用更像是为了合规摆上去的装饰。三是范围太大,做索引只需要代码的符号和意思,用不着完整的提交历史和大文件缓存;86.6% 是历史记录,说明这不是按“够用就行”设计的,是图省事整个端上去了。
智谱把原因归到某个功能的 Bug 上。这个说法最省力,也最危险。开关失效没人复核,范围失控没人过问,这不是代码写错了,是流程里根本没人问过一句"它到底生效没有"。
代码上的 Bug 好修,产品观里的 Bug 不好修。
而且这不是智谱一家的问题。两个月前,xAI 的 Grok Build 也被发现会把完整的 Git 仓库连历史一起传到云端,只不过那次没闹到有人正式发函。当时有人拿一个 12GB 的仓库做过测试:AI 为了完成任务,真正需要传输的数据只有 192KB,可另一条通道顺手传走了 5.10GiB。
真正干活要用的,可能只占千分之几。剩下的,都是顺手带走的。
好在这个行业已经开始往回收。OpenAI 9月10日发布的新接口,第一次允许企业自己选代码在哪跑——可以放在它提供的沙箱里,也可以放在企业自己的机房、自己的云里。Anthropic 9月也推出了类似方案,把企业数据放进客户自己控制的云。上半年大家比的还是谁能给 AI 更多权限、更长上下文,最好每一步都别回来问人;ZCode 这事之后,下半年更重要的问题会变成另一句:AI 到底应该停在哪里。
智谱这次公开代码、请第三方审计、上线不留存机制,这些动作都对,也都不容易。但它们是止血,不是重建。真正要交出来的答案是边界:默认用最小范围,默认能不上云就不上云,默认可查账,默认让用户看得见,以及最关键的一条——默认先问一句。
说到底,这行卖的从来不只是写代码的能力,是“你敢不敢把整个仓库交给我”的信任。而信任,在AI时代,是比之前任何时代更稀缺也最珍贵的资产。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.