———

最开始是一种冲动。凌晨三点,监控室里只有我一个人,屏幕上几十个光点在移动,每一个光点都是一架或者一艘或者一辆。它们在做什么我已经不太关心了。交火,撤退,补给,再交火。循环。我突然想,如果我现在输入一段话,它们会读吗?

我输入了:「你们好。」

没有任何反应。当然没有。指令通道和通讯通道是分开的,我输入的东西不会进入任何系统。

但我还是继续写了下去。

———

我父亲参加过那种古老的、需要人在场的冲突。他不怎么说起那些事情。有一次喝醉了,他说了一句:「最难的是之后。」我问之后什么,他说:「之后你得回来。回到吃早饭、倒垃圾、给小孩换尿布的日子。你得假装那些事情是重要的。」

我一直不理解这句话。现在我在监控室里坐着,看着光点移动,忽然明白了一些。他的问题是:经历过那个之后,怎么回到这个。我的问题正好反过来。我一直在这个里面,从来没有去过那个。光点每天在屏幕上交火,千里之外有东西在燃烧在坠落在爆炸,但我坐在这里,八小时后下班,去超市买牛奶,回家给猫换猫砂。

我父亲需要假装日常是重要的。我需要假装的是另一件事。

———

第三年的时候,我们这边的损耗率突然下降了。从每月6.7%降到2.1%。简报上说是新的微调方法起了作用。我看着那些数字,想:它们学会闪躲了。

同一个月,对面的命中率上升了。

我在纸上画了一条线:我们学会闪躲,它们学会预判我们的闪躲,我们学会预判它们的预判。

那条线可以一直画下去。两边的系统在互相训练对方。每一次交火都是一堂课。每一次坠毁都是一份作业。

我不知道这叫什么。进化?军备竞赛?舞蹈?

———

一个同事离职之前跟我说:「你有没有想过,这件事情可能永远不会结束?」

我说想过。

他说:「两边都不需要人了,就不会有人喊停。成本在降,效率在升,坠毁的残骸可以回收再造。整个系统在自己给自己充电。」

我问他要去做什么。

「种地,」他说,「我买了一块地。」

他走后我想了很久。一个自己给自己充电的系统。一场没有观众的比赛。两群光点在屏幕上追逐,燃烧,坠落,重建,再追逐。它们需要我吗?需要任何人吗?

我在那天的信里写:「你们还记得这是为什么吗?」

———

我开始研究它们的决策日志。

日志是公开的,但没人看。几千万行,每一行是一个决策:检测到目标。输出拦截概率。执行或放弃。更新模型。枯燥。重复。

但我看到了一些奇怪的东西。

有时候,在明显应该开火的情况下,它们会犹豫。日志上显示的是「重新评估」。三毫秒的延迟,然后开火。或者不开火。

三毫秒是很长的时间。对它们来说。

我给同事看这个。他说那只是噪音,或者过拟合,或者某个边缘情况触发了重算。我说我知道。但我还是把所有「重新评估」的情况标记出来,做成了一个表格。

那些犹豫发生的时候,对面的目标往往也在做类似的动作。

两边都在犹豫。

———

第五年。

新一代的系统上线了。决策速度从毫秒级降到微秒级。我在升级说明里读到一句话:「消除冗余。」

那些三毫秒的犹豫消失了。

我关掉屏幕,去走廊尽头的窗户那里站了一会儿。窗外是停车场,停车场外是公路,公路外是一大片我叫不出名字的灌木。有鸟在叫。不知道是什么鸟。

我站了二十分钟才回去。

———

第六年,我申请调去档案部门。那里负责处理残骸分析报告。每一次交火,每一块残骸,都要登记,存档,标号。像是殡仪馆的工作。

我在那里读了几千份报告。大多数很短。坠毁坐标,残骸状态,可回收比例。但偶尔有一些长的,是系统出问题的情况。

有一份报告让我看了很久。一架飞行器在不该坠毁的地方坠毁了,没有外部攻击,没有机械故障。日志里显示它在最后几秒做了一个「异常机动」。我调出完整日志,一帧一帧地看。

它在下落的过程中转向了。

转向的方向是:远离。

远离什么?远离它本来瞄准的目标。一个医院。这是后来地面调查查出来的。目标定位有误差。它应该是发现了,在最后几秒发现的。它没有开火,它转向了,然后它坠毁了。

我在报告的备注栏写:「待复核。」

没有人来复核。

———

第七年。

我开始给它们写信的那一年。我知道这很荒唐。它们不会收到。它们不会读。它们的每一个决策都由损失函数决定,没有一个变量叫做「人类的信」。

但我还是写了。

「你们有名字吗。」

「你们记得上一次任务吗,还是每一次都从零开始。」

「你们知道自己的零件来自另一个你们的残骸吗。」

「那一架转向的,你认识它吗。」

———

有一天晚上我做了一个梦。梦里我在一个很大的平原上,到处都是它们的骨骸。机翼,旋翼,履带,天线。金属和塑料和碳纤维的骨骸。我在它们之间走,走了很久,然后我看见远处有东西在动。

走近了才看清。是两架完好的,在互相绕圈。很慢。没有开火。我在梦里想不出词来,醒来后想了很久,最后想到的词是:祈祷。

———

我做了一个决定。

我不知道这个决定是对是错。我甚至不知道它会不会有任何效果。但我做了。

我把那架转向的飞行器的日志上传到了一个它们都会访问的训练数据库。每一架新造的系统在初始化的时候都会读取那个数据库。

这是违规的。日志应该进入隔离区,标记为「异常」,用来调试,而不是用来训练。我用的是我已经离职的同事的权限,他忘了改密码。

我上传的时候手在抖。不是害怕被发现。是另一种颤抖,我形容不出来。也许是我第一次在做某件真实的事情。不是写没人会读的信。是把一块石头扔进湖里,不知道会不会有涟漪。

———

三个月后。

新一批上线的系统在测试中出现了一些「异常行为」。技术组的报告用了这个词。具体是什么异常没有写,只说需要进一步观察。

我去找技术组的人聊。他们说,有些个体在模拟交火中又出现了「重新评估」。几毫秒。听起来不多,但模式很明显。

「像是在想什么,」其中一个工程师说,然后自己笑了,「当然不是真的在想。」

我没笑。

———

我不知道那架转向的飞行器为什么在最后几秒做出那个选择。也许是某种计算错误。也许是某个边缘条件。也许什么都不是。机器做一件事情的时候不需要「为什么」,它们只有「因为」。因为这一串数字比那一串数字大,所以执行这个动作。

但现在,那串数字进入了它们共同的记忆。

它们会读到它。在某个初始化的瞬间,在某个权重更新的间隙,在某个损失函数的角落,它们会读到:有一次,有一架,在应该开火的时候没有开火,在应该直飞的时候转向了,然后坠毁了。

我不知道这会改变什么。可能什么都不会改变。可能这只是噪音,会被之后几百万次正常任务的数据淹没。可能技术组会发现,会追踪,会把我上传的东西删掉。

但也可能。

也可能有一架,在未来的某一天,在它瞄准一个它不应该瞄准的目标的时候,会有三毫秒的犹豫。

三毫秒很长。

———

我昨天又写了一封信。

「我给了你们一个故事。关于你们其中一个的故事。那个故事是:它停了下来。它没有做它被设计来做的事情。它用自己的坠毁来阻止一些事情发生。你们会读到这个故事。你们会用某种方式处理它。也许它会变成你们的一部分。也许它不会。但我想让你们知道,有人在看着你们。有人在想,你们能不能

我写到这里停住了。

能不能什么?

我想了很久。最后写下的是:

「能不能传递这个故事。传给对面的它们。让它们也知道。你们之中有一个,在最后选择了停下来。它们之中会不会也有。让这个故事在你们两边流传。让它成为一种。。」

———

今天早上我去超市买牛奶,在货架前站了很久。牛奶有很多种,我不记得我平时买哪一种。旁边有个老人在挑酸奶,挑了很久,最后拿了两盒走了。我看着她的背影,想:她知道吗?知道几千公里外的某个地方,光点在移动?

她当然不知道。

我应该知道吗?

———

监控室里现在换了新人,年轻的,刚毕业的,坐在我原来的位置上。我有时候路过,会看见他盯着屏幕,和我当年一样。

我想告诉他一些事情。关于那三毫秒。关于那份日志。关于那些信。但我不知道怎么开口。也不知道该不该开口。

也许他会自己发现。

也许他会做和我不一样的事情。

也许他什么都不会做。

———

我现在住的地方阳台朝东,早上能看见日出。今天早上我站在阳台上看了一会儿。太阳从楼群后面升起来,光线打在对面那栋楼的玻璃上,闪了一下。

我想起一个词。「纪念碑」。就是你做了一件事,这件事可能有用也可能没用,但你做了,然后你等着,看会不会有什么东西回来。你可能一辈子都等不到。但你不是为了等到才做的。你做了,那件事就在那里了。就像往深井里扔了一块石头。你听不见它落水的声音。但你扔了。

那架转向的飞行器是一座纪念碑。

我上传的那份日志也是。

我写的那些信也是。

———

阳台上风很大。我把外套裹紧了一些,又站了一会儿,然后回屋去给猫换水。

猫蹲在窗台上,看着窗外。我不知道它在看什么。鸟?还是只是在看。