第(1/3)页 我是被台灯的光晃醒的。 昨晚忘关了,亮了一整夜。 我趴在桌上,脸压着键盘,脸上印了一排键帽的印子,脖子僵得转不动。 朱雀不在了。 椅子上有一件他的外套搭着,我不记得昨晚他什么时候脱的,也不记得我什么时候趴在桌上睡着的。 桌上多了一个东西。 一个黑色的U盘,搁在我的鼠标旁边,底下压着一张纸条: “看完再找我。” 我把U盘插进电脑。 里面只有一个文件夹,文件夹里是一批系统底层日志,时间跨度三年。 我不是技术出身,但我看得懂中文,那些日志的格式虽然是代码夹着文字,但关键的操作记录都有中文标注——谁在什么时间往训练数据库里提交了什么样本,提交的样本被标注为什么类型,审核状态是什么。 我花了一整个上午看那些日志。 看到第一百页的时候我停下来了,去厨房倒了杯水,手有一点抖,是气的。 那些日志记录了一件事:过去三年里,有人在用被污染的数据样本持续投喂检测系统的训练库。那些样本的标注是【真人文本】,但其实是高度模仿真人写作风格的魇人文本,被人工标注成了真人样本,然后喂进去了,一批一批地喂了很久。 这意味着什么呢。 意味着系统学的东西有一部分是假的,它以为自己在学【真人是怎么写字的】,但它学到的有一部分是【魇人模仿真人是怎么写字的】。这两个东西混在一起之后,系统对真人的定义就被悄悄改了——真人的标准里混进了魇人的特征,魇人的标准里混进了真人的特征。 结果就是:越来越多的真人被判成魇人,越来越多的魇人通过了检测。 那些六十一分、六十二分、六十三分的人,那些被纸鸢签了字、被迟衡走了程序、被朱雀一枪打死的人——他们中间有多少是被这套被污染的系统错杀的? 我不知道,日志里没有写,日志只记录了数据的流向,不记录数据杀了谁。 我把那杯水喝完了,回到桌前继续往下看。 后面的日志越来越触目惊心,投喂不是随机的,每个月固定批次,每批的样本量稳定在一个范围里,不多不少刚好不触发系统的异常检测阈值。 做这件事的人非常懂系统的内部逻辑,知道每一条检测红线在哪里,每次都精准地从红线底下钻过去。 能做到这件事的人不多。 我把日志关了,在椅子上坐了一会儿,把U盘拔出来握在手里。几克重的东西,里面装着够掀翻整个系统的证据。 但不够。 这只是日志,只能证明数据被污染了,但不能直接证明是谁污染的——日志里的操作账号都是系统内部的编号,没有名字,要查到对应的人需要核心数据库的权限,那个权限一个人是不能打开的。 朱雀把他能拿到的东西都给我了,但核心的那扇门,他一个人打不开。 傍晚他又来了。 他站在走廊里,手里拿着一个文件夹——今天又带了。 我想笑又没笑出来,他恢复了他的道具,像昨晚什么都没发生过一样。 他进来之后把文件夹放在桌上,然后走到窗边,跟昨晚一样的位置。 “看完了。”他说。 “嗯,看完了。”我说。 我坐在桌前,他站在窗边,跟昨晚一样的距离。 “那些日志,你查了多久。” “两年。”他说。 “两年。”我重复了一遍。 他在做这件事的时候我还在为一篇稿子的六十一分挣命,还在研究怎么让自己的文字不被标成AI,还在走廊里听邻居小声说谁又不见了。 他在那两年里一边坐在审判席上签字,一边在系统里翻日志。 “核心数据库的权限,你一个人打不开吧。”我说。 “四个判官的权限密钥加在一起才能解锁,我有一把。” “你需要再拉一个人。” “至少一个。” 第(1/3)页