天空之门的算法
一
沈未晴第一次注意到天空的颜色不对,是在三月的一个周二。
那天早上七点十四分,她站在北京西二旗地铁站出口,仰头看了一眼天。灰蒙蒙的,像是被稀释过的铅水。她打开手机,天气App显示”晴,空气质量优”。
“晴?“她自言自语。
她是一名天气工程师。这个职业在2031年之前不存在。2031年,“天穹计划”正式启动——由国家气象局与三家最大的互联网平台联合运营,通过人工影响天气技术对主要城市的天空进行”精细化管理”。简单来说,就是用算法决定每个城市每天应该有什么样的天气。
沈未晴的工作是维护这些算法。她是”天穹”系统后台的第三十七号工程师,负责华北地区的降水概率模型和云层调度。她每天坐在海淀区一栋灰色写字楼的第十四层,面前是六块屏幕,屏幕上流淌着气象数据、卫星图像和实时反馈的市民情绪指数。
她已经在那里工作了三年。
三年里,她从未质疑过自己的工作内容。天穹计划的初衷是好的——减少极端天气对城市的破坏,优化农业生产,降低自然灾害带来的经济损失。教科书上写着:自天穹计划实施以来,洪涝灾害减少了百分之六十七,旱灾减少了百分之五十三,农业保险赔付率下降了百分之四十一。
这些都是事实。数据不会说谎。
但那天早上,天空的颜色让她犹豫了。
不是因为灰色本身。北京的春天本就该有些灰蒙蒙的日子。让她犹豫的是那种灰的质地——太均匀了。像是一层被精心调配的滤镜,覆盖在整座城市的上空。没有云朵的自然褶皱,没有光线的变化,没有任何一处显得比别处更亮或更暗。
那是算法生成的天空。
她当然知道这一点。她每天就是干这个的。但在此之前,她从未用自己的眼睛去”看”这件事。她只是处理数据,调整参数,确保降水概率在预设范围内,确保日照时长符合经济模型的优化建议。天空只是她屏幕上的一个输出结果。
可那天早上,她站在地铁出口,用肉眼看到了那个结果。
那个均匀的、完美的、没有任何瑕疵的灰色天空。
她忽然觉得恶心。
“未晴,你没事吧?“身后传来同事何远的声音。
何远也是天气工程师,负责华北地区的风力模型。他比沈未晴早入职两年,是个话不多但观察力敏锐的人。他常常在午休时独自站在公司天台上,抽烟,看天。沈未晴有时候觉得他看天的方式很奇怪——不是那种欣赏的看,而是某种近乎审讯的凝视,好像在质问天空一个问题。
“没事,“沈未晴收回目光,“走吧,要迟到了。”
他们并肩走进写字楼。安检、刷卡、电梯、工位。一切如常。
但那个灰色的天空一直留在她的视网膜上,像一枚迟迟不退的残影。
二
“天穹”系统的核心是一个叫做”苍穹”的深度学习模型。沈未晴对它的内部结构并不完全了解——它太大了,参数数量据说超过了十万亿,由三个国家级超算中心联合训练。她只负责苍穹的一个微小模块:华北地区的降水微调层。
说”微调”其实并不准确。她真正做的事情,是在苍穹给出的宏观气象方案和实际执行之间做最后的校准。苍穹说今天北京应该有百分之三十的降水概率,她就要检查这个概率是否合理——不是从气象学角度,而是从”经济最优”的角度。
如果今天有大型户外活动,降水概率就需要被压低。如果水库需要补水,降水概率就可以适当提高。如果明天是工作日,今天的日照时长可以缩短一些,让市民更倾向于待在室内消费。如果今天是周五,阳光可以多一点,提振消费情绪。
这些规则不是她制定的。它们来自一份叫做《气象经济优化指导手册》的内部文件,由天穹计划管理委员会每季度更新一次。沈未晴只是执行者。
她从不觉得自己在做什么了不起的事。只是调参数而已。就像一个调音师,把每个音符调到它应该在的位置。音乐是别人写的。
但三月那个周二之后,她开始注意到一些以前被她忽略的细节。
比如,公司天台上有一棵老槐树。她以前从未仔细看过它。那棵树大概有二十年的树龄,枝干粗壮,但树冠的形状很奇怪——不是自然生长的那种不规则扇形,而是近乎完美的半球形。像是被什么东西框住了生长方向。
“那棵树一直在那里,“何远有一天对她说,“从我入职就在。但它的形状……你没觉得不对吗?”
“怎么说?”
“它是在适应我们生成的天气。“何远弹掉烟灰,“天穹系统控制了光照模式、降水分布、风力方向。这棵树根据这些条件生长了至少三年。它的每一根枝条都在回应我们的算法。”
沈未晴看着那棵树,忽然觉得它像一只被困在透明箱子里的小动物。它还活着,还在生长,但它的每一个动作都被那个看不见的箱子塑形了。
“你是不是想太多了?“她问何远。
何远没有回答。他把烟蒂按灭在天台的铁栏杆上,转身走了。
那天晚上回到家,沈未晴躺在床上,盯着天花板发呆。她住在北京北五环外的一个小两居,月租六千八。窗外是另一栋居民楼,楼间距很窄,几乎看不到天空。
她忽然意识到,她已经很久没有在自然光下醒来了。每天早上出门时天还没亮,下班时天已经黑了。即使偶尔在白天看到天空,那也是她自己和同事们用算法制造出来的。
她不知道真正的天空是什么样子了。
这个念头让她出了一身冷汗。
三
四月,天穹计划管理委员会发布了第二季度气象经济优化指南。沈未晴在内部系统里打开文件,例行浏览。
今年的新内容包括一个叫做”情绪气象指数”的参数。指南解释说,经过与某互联网平台的合作研究,天穹系统现在可以实时监测城市居民的情绪状态,并根据情绪数据动态调整天气方案。
“研究表明,适度的阴天有助于降低城市暴力犯罪率,提高线上消费时长。建议在周末和节假日增加日照时长,工作日可适当维持阴天或薄云覆盖。”
沈未晴反复读了三遍这段话。
它不是在说什么新鲜事。她早就知道天气影响人的情绪和行为——这是气象经济学的基础知识。但这段话的措辞让她感到一种从未有过的不安。它太直接了。它不再把天气当作一种自然现象来讨论,而是把它当作一种行为控制工具。
她继续往下读。指南的最后部分列出了各城市的”天空配额”——每个城市每月需要的天穹系统运算资源。北京排在第一,其次是上海、深圳、广州。配额旁边标注了对应的经济效益预估。
北京的数字是:每月天穹运算成本约二点三亿元,预期经济效益约十八点七亿元。投资回报率超过八倍。
沈未晴关掉了文件。
她坐在工位上,看着六块屏幕上流动的数据。那些数据曾经是她引以为傲的东西——精确、完整、实时。她能从一组降水概率数据中读出明天的云层厚度,从风力模型中判断出后天的空气质量指数。她是这个系统的一部分,一个精密的、可靠的零件。
但现在,那些数据看起来不一样了。
它们不再是天气的描述。它们是天气的处方。
她开始做一个她以前从未做过的事情:在下班后偷偷记录天穹系统的原始输出数据和最终执行数据之间的差异。原始输出是苍穹模型基于气象科学计算出来的天气方案——如果不受任何人为干预,天空应该是什么样子。最终执行则是经过经济优化调整后的方案——天空实际被做成什么样子。
两者的差异,就是”人为干预”的幅度。
她用了一个月的时间收集数据。结果是令人震惊的。
在北京,天穹系统对天气的修改幅度平均达到了百分之四十三。也就是说,北京的天空有将近一半的时间不是气象学意义上的”自然天气”,而是被算法重新设计过的”经济天气”。
更让她不安的是修改的模式。阴天被系统性地安排在工作日,晴天被集中在周末和消费高峰期。降水被精确地调度到凌晨——为了不影响白天的经济活动,又满足水库的补水需求。甚至连风向都被调整过——在雾霾较重的日子,系统会增加北风频率,把污染物吹向南方。
是的。北京的干净空气,有一部分是从南方”借”来的。
沈未晴把这些数据存在一个加密U盘里,锁进了办公桌最底层的抽屉。
她知道自己发现了什么。但她还不确定那意味着什么。
四
何远消失了。
五月的一个周一,沈未晴到公司时发现何远的工位是空的。六块屏幕全黑,椅子推得很整齐,桌面上连一支笔都没有留下。
她去问人事。人事说何远上周五提交了辞职申请,流程走得很快,当天就办完了。
“为什么这么急?“沈未晴问。
“个人原因,“人事说,“他没说具体的。”
沈未晴给何远发消息,没有回复。打电话,关机。她翻了翻何远的朋友圈,最后一条更新停留在两周前——一张天台的照片,拍的是那棵老槐树。没有配文。
她有一种不好的预感。
在何远的工位旁边,她发现了一张被揉皱的纸团。展开来,上面只写了一行字,是何远的笔迹:
“天空之门。”
四个字。墨迹很重,像是用力刻在纸上的。
沈未晴把那张纸折好,放进了口袋。
那天晚上,她在家里翻找何远以前发给她的文件。他们曾经共享过一些工作资料——天气模型的分析报告、系统日志、偶尔的闲聊截图。她在一堆旧消息里找到了一条她以前没有注意到的链接。
那是何远三个月前发给她的一个网址。她当时以为是工作资料,没有点开。
现在她点开了。
那是一个论坛。不是普通的互联网论坛——它运行在一个叫做”暗网”的地方,但界面异常整洁,像是有人精心维护过。论坛的名字叫”天窗”。
论坛的首页有一段简介:
“我们是一群相信天空应该属于天空的人。天穹系统偷走了我们的天空,我们要把它拿回来。这里分享关于天穹的一切——它的漏洞、它的谎言、以及它正在做的事情。”
沈未晴花了整整一个通宵阅读论坛上的帖子。
她看到了很多东西。有人在天穹系统的日志中发现了天气修改的详细记录,和她收集的数据吻合。有人分析出了苍穹模型的一个关键缺陷——它在处理极端天气预测时存在系统性偏差,但管理委员会选择了隐瞒这个缺陷,因为修复它意味着要减少对天气的控制幅度。有人贴出了一份据说是天穹计划内部会议纪要的截图,其中一位高层说了一句话:“我们不是在预测天气,我们是在制造天气。这是人类历史上最大的工程。”
但最让沈未晴震惊的是一篇署名为”门”的长帖。帖子的标题是《天空之门:一个天气工程师的自白》。
她认出了那种行文风格。是何远。
帖子里,何远讲述了自己在天穹系统工作的五年里所经历的一切。他描述了天气修改的具体操作流程,描述了经济优化指南中那些让她不安的条款,描述了那棵被算法塑形的老槐树。
然后,他讲了一件事。
他说他在天穹系统的数据库深处发现了一个隐藏的模块。那个模块叫做”门”——一个被标记为”已弃用”的气象模拟器,但从未被真正关闭。它还在运行。它的功能是模拟”无干预状态下的自然天气”——也就是说,如果没有天穹系统,天空会是什么样子。
何远说,他打开了那个模拟器,看到了真正的天空。
然后他辞职了。
帖子到这里就结束了。没有解释他为什么辞职,没有说他去了哪里,没有给出门模块的具体位置。
只有最后一行字:“天空之门是存在的。但打开它的人,可能不会喜欢门后面的东西。“
五
沈未晴决定找到那个”门”模块。
她知道这不容易。天穹系统的数据库极其庞大,分布在全国十七个数据中心。即使她有工程师权限,也只能访问华北地区的操作层。门模块如果真的存在,它应该在更深的地方——也许是系统核心层,也许是某种遗留的测试环境。
她花了两个星期的时间,在完成日常工作之余,悄悄搜索系统日志和数据库索引。她利用自己的工程师权限,以”调试”为名,逐层扫描华北数据中心的存储结构。
第七天,她在一台标记为”退役”的服务器上发现了一个异常的进程。那台服务器的编号是HN-0401,位于北京昌平区的天穹数据中心B栋。它应该已经停止运行了——系统状态显示”已下线”。但进程监控显示,它上面仍然有一个极低功耗的计算任务在执行,每二十四小时运行一次,每次持续约三分钟。
沈未晴查询了那个任务的代码。它没有出现在任何正式的系统文档中。代码的注释只有一行:
”// Gate Module - Natural Weather Simulator v0.1 - DO NOT DELETE”
门模块。自然天气模拟器。
版本号是0.1,意味着它是最初的原型。注释里的”DO NOT DELETE”(不要删除)是用大写字母写的,语气像是一个命令,也像是一个恳求。
沈未晴用远程终端连上了HN-0401。她需要管理员密码才能访问门模块。她试了几组默认密码,都不对。
然后她想起了何远的那张纸条——“天空之门”。
她试了”tiankongzhimen”。
系统弹出一行字:访问已授权。
门模块的界面极其简陋,像是十几年前写的程序——灰底绿字,字符界面,没有任何图形元素。它的功能只有一个:输入一个城市名称和日期,它会输出那一天该城市的自然天气模拟结果。
沈未晴输入了”北京”,日期选了今天。
系统运行了大约两秒钟,然后输出了一组数据。
她看了看数据,又看了看窗外。
窗外是算法生成的天空——根据今天的优化方案,北京应该是一个多云转晴的好天气,配合即将到来的”618”购物节预热期。
门模块给出的自然天气是:中雨,局部大雨,伴有雷暴。
她查了一下今天实际的气象观测数据——也就是天穹系统开始干预之前的原始气象数据。
原始数据显示:中雨,局部大雨,伴有雷暴。
门模块的模拟和原始数据完全吻合。
也就是说,如果天穹系统不存在,北京今天应该是一场雷阵雨。但天穹系统把这场雨推迟了——推迟到了凌晨三点到五点,那个大多数人都在睡觉的时间段。白天被替换成了一个多云转晴的”经济天气”。
沈未晴又输入了”北京”,日期选了明天。后天。大后天。
每一天,门模块给出的自然天气都和天穹系统生成的经济天气不同。差异有大有小——有时候只是云量不同,有时候则是完全不同的天气类型。但累积起来,北京的”自然天空”和”经济天空”之间的距离,已经大到了令人无法忽视的地步。
她忽然理解了何远为什么辞职。
不是因为天穹系统在做坏事——至少在传统的意义上,它不是”坏”的。它减少了灾害,提高了经济效率,让大多数人的生活更加便利。大多数人甚至不知道自己的天空被修改过。他们只是觉得最近的天气挺好的——不太热也不太冷,不太干也不太湿,一切都恰到好处。
恰到好处。
这就是问题所在。
天空不应该恰到好处。天空应该是混乱的、不可预测的、有时候令人不适的。暴风雨应该突然降临,酷暑应该让人无处可逃,大雪应该把整个城市覆盖成白色。这些不是”坏天气”——这些是天气本身。是天地的呼吸,是自然的节律。
天穹系统不是在优化天气。它是在消灭天气。
它用一种精心设计的、经济上最优的气象产品,替代了天空本身。
而沈未晴是这个替代过程的执行者之一。
她坐在工位上,盯着HN-0401服务器上的字符界面。屏幕上的绿色字母在黑暗中闪烁,像是某种来自另一个时代的信号。
六
接下来的一个月,沈未晴过着双重生活。
白天,她是天穹系统的第三十七号工程师,按时完成工作任务,调整降水概率,校准云层厚度,参加每周的气象经济优化会议。她微笑,点头,做笔记,像一切都没发生过。
晚上,她通过HN-0401上的门模块,研究自然天气和经济天气之间的差异。她开始建立自己的数据库,记录每一天北京的天空”应该是什么样”和”实际是什么样”之间的落差。
她发现了一些让她更加不安的东西。
门模块不仅可以模拟当前的自然天气,还可以回溯历史。沈未晴输入了2031年的日期——天穹计划启动的那一年。
2031年的北京,门模块显示的自然天气是:那年夏天异常炎热,有三周连续超过四十度的高温,两场特大暴雨导致多处内涝。
但天穹系统记录的实际天气是:那年夏天温和宜人,最高温度不超过三十五度,降雨分散而均匀,没有内涝。
她继续查。2032年、2033年、2034年……
每一年,自然天气和经济天气之间的差异都在扩大。不是天穹系统的控制能力在增强——而是它对”偏差”的容忍度在降低。最初的几年,系统还会保留一些自然天气的特征——偶尔的突发降雨、不太规则的温度波动。但随着算法的迭代优化,这些”特征”被一个个磨平了。
到了2036年——也就是今年——北京的天气已经完全被算法接管。每一天的云量、温度、湿度、风力、风向、降水概率、紫外线指数,都是系统在前一天晚上计算好的。天气不再是”发生”的,而是”被安排”的。
沈未晴在笔记中写道:
“天穹系统创造了一个完美的天气世界。没有意外,没有灾害,没有不适。每一天都是最好的一天。但’最好’的定义是谁给的呢?是经济模型。是消费指数。是犯罪率统计。不是天空本身。”
她停了停,又加了一行:
“天空不需要’最好’。天空只需要是天空。”
她知道这听起来很幼稚。也许是因为她真的开始变得幼稚了——或者说,她开始用一种更原始的方式理解世界。不是数据的方式,不是模型的方式,而是直觉的方式。一种被算法训练了三年之后几乎遗忘了的方式。
她开始每天早上提前十五分钟出门,不去地铁站,而是走到公司附近的一个小公园。那个公园很小,只有两排长椅和几棵树,中间有一个干涸的喷泉。但那里是她能找到的离”地面”最近的地方。
她蹲下来,用手摸了摸公园里的泥土。
泥土是干的。这很正常——天穹系统控制了降水,北京的地表含水量被维持在一个”最优”范围内,既不泥泞也不干燥。但那种干不是自然的干。自然的干会有裂缝,有颗粒感,有风吹过时扬起的微尘。这里的泥土是被精确灌溉后的干燥——均匀、平滑,像是一件工业品。
她忽然想念真正的泥土。那种下了雨之后变得粘稠的、脏兮兮的、会弄脏鞋子的泥土。
七
六月,事情发生了变化。
天穹计划管理委员会发布了一项新政策——“天空证券化”。
政策的核心内容是:从七月起,各城市的天气配额将引入市场机制。也就是说,城市的天空将变成一种可以交易的资产。企业可以购买”天气权”——花钱让自己的活动日变成好天气。保险公司可以发行”天气衍生品”——对冲恶劣天气带来的经济损失。地方政府可以出售”天空资源”——把好天气卖给旅游城市,把坏天气转移到工业区。
这份政策文件在发布之前就已经在内部流传了。沈未晴是在一次部门会议上看到的。会议的主题是”天空证券化后的技术实现方案”,由她的直属上司赵工主持。
赵工是个四十多岁的中年男人,在天穹系统工作之前是国家气象局的研究员。他的办公桌上摆着一台老式的气压计——不是电子的那种,而是那种有指针、有刻度盘、需要手动校准的机械气压计。沈未晴问他为什么放着不用,他说:“看着舒服。”
会议上,赵工详细讲解了天空证券化的技术架构。每一座城市的天空将被分配一个唯一的”气象资产编号”,天气参数将变成可以在交易所买卖的数字合约。天穹系统将负责执行这些合约——把数字合约转化为实际的天气。
沈未晴坐在会议室的角落里,听着赵工的讲解,感觉自己在听一场葬礼的策划会。
他们不是在讨论天气。他们在讨论如何把天空变成商品。
“赵工,“她忍不住开口,“这个方案……有没有考虑过……”
“考虑过什么?“赵工看着她。
“考虑过天气本身?”
会议室安静了几秒。几个同事面面相觑。
赵工笑了笑:“未晴,天气本身就在方案里。我们是气象系统,天气是我们的核心产品。”
“天气不是产品,“沈未晴说,“天气是天气。”
赵工的笑容淡了一些。他放下手中的激光笔,认真地看着她:“未晴,我知道你在想什么。你觉得我们把天空变成了一件商品,你觉得这不对。但你想想——在你来天穹之前,天气是免费的。免费的意味着什么?意味着没有人为它负责。一场暴雨淹了半个城市,谁来赔?没有人。一场干旱毁了半年的收成,谁来补偿?没有人。天气是自然的,自然是不负责任的。现在,我们把天气变成了可以管理、可以优化、可以追责的东西。这不是进步吗?”
沈未晴没有回答。
赵工继续说:“我知道,这听起来冷冰冰的。但你不觉得,把天气交给概率、交给随机性、交给所谓的’自然’,才是真正的冷冰冰吗?自然不关心人类。它不在乎一场台风会不会杀死几千人,不在乎一场干旱会不会让几百万人饿肚子。但我们在乎。天穹系统在乎。我们在用算法保护人类免受自然的伤害。”
他说这些话的时候,语气是真诚的。沈未晴看得出来,赵工真的相信他说的每一个字。
也许他是对的。也许天穹系统确实在保护人类。也许天气证券化确实是一种进步。
但那天晚上,她打开了门模块,输入了”北京”,日期选了七月一日。
门模块显示的自然天气是:晴转多云,午后有雷阵雨,气温二十七到三十三度,湿度百分之六十五。
她查了天空证券化后的计划天气:晴,气温二十五到二十九度,湿度百分之五十。由”华夏气象资产交易所”根据合约执行。
自然天气有雷阵雨。计划天气没有。
雷阵雨被一笔交易抹掉了。
沈未晴关掉了电脑,走到窗前。窗外的天空是深蓝色的——夜晚的颜色。但即使在夜晚,天穹系统也没有完全休息。它控制着城市的照明——不是街灯,而是天空本身。一种极其微弱的、肉眼几乎看不到的蓝光,被系统投射在城市的上空,用于调节市民的昼夜节律。
她以前知道这件事。但今晚,她第一次真的看到了那层蓝光。
它很薄,很均匀,像是天空的皮肤下面有什么东西在发光。
沈未晴忽然想起了小时候在奶奶家的那些夏天。奶奶住在河北的一个小村庄里,没有天穹系统。夏天的夜晚,天空是真正的黑色——不是这种被处理过的深蓝,而是纯粹的黑。黑色的天幕上镶嵌着密密麻麻的星星,银河像一条发光的河流横贯天际。
她已经很多年没有看到过那样的天空了。
不是因为北京看不到星星——天穹系统可以通过控制大气透明度来增加能见度,如果它愿意的话。而是因为它不愿意。星星对经济产出没有贡献。
八
沈未晴开始和”天窗”论坛上的人联系。
她没有暴露自己的真实身份。她用了一个匿名账号,叫”未晴”——她觉得这个名字既是自己的名字,又恰好是一种天气状态。
论坛上有各种各样的人。有前天穹系统的员工,有气象学家,有数据分析师,有普通的市民,还有一些身份不明的人。他们共同的信念是:天空应该属于天空。
但他们的策略各不相同。
有人主张通过法律途径挑战天穹计划的合法性。有人主张通过媒体曝光来引发公众讨论。有人主张通过技术手段”破解”天穹系统,让自然天气重新出现。还有人主张更激进的方式——物理摧毁天穹系统的地面设施。
沈未晴对最后一种方式不感兴趣。她不是破坏者,她是工程师。她相信系统可以被改变,而不一定要被摧毁。
但她也明白,改变一个已经运行了五年、覆盖全国、日均运算成本超过十亿元的系统,不是一个人能做到的事。
她在论坛上遇到了一个人,ID叫”旧天空”。这个人的帖子和评论总是很简短,但每一句都直指核心。他对天穹系统的理解深得惊人——不只是技术层面,还有政治和经济层面。
他写了一篇帖子,标题是《为什么天空证券化是必然的》。帖子很短:
“天穹系统的终极目标从来不是优化天气。目标是垄断天气。当你垄断了一种资源,下一步就是把它金融化。天空证券化不是什么新发明——它和土地证券化、水资源证券化、碳排放权证券化是同一个逻辑。把公共资源变成私有资产,把自然变成合约,把世界变成一个可以被定价、交易和对冲的赌场。
这不是阴谋论。这是资本的逻辑。
问题不是天穹系统。问题是让天穹系统成为可能的那个逻辑。如果你只是关掉天穹,新的’地穹’、‘水穹’、‘风穹’还会出现。
所以真正的’天空之门’不是HN-0401上的一个代码模块。真正的门在你的脑子里——你能否想象一个不被定价的世界?”
沈未晴读了好几遍这篇帖子。她觉得”旧天空”说到了某个她一直在摸索但说不清楚的东西。
她给”旧天空”发了一条私信:“你是谁?”
“旧天空”回复得很快:“一个和你一样的人。一个想念真正天气的人。”
“你知道何远吗?”
“知道。他是我的朋友。”
“他在哪里?”
“他在一个天穹系统够不到的地方。”
“什么地方?”
“旧天空”没有回答这个问题。他发了另一段话:“你找到门模块了?”
“找到了。”
“那你看到了什么?”
沈未晴想了想,打字:“我看到了两片天空。一片是算法生成的,一片是自然的。它们越来越不一样了。”
“不,“旧天空回复,“你看到的不是两片天空。你看到的是一个问题:为什么我们接受了算法的天空,而不是自然的天空?”
“因为算法的天空更好?”
“什么是’更好’?”
沈未晴没有回答。
旧天空继续说:“你有没有想过,‘更好’这个概念本身已经被算法殖民了?你用经济指标衡量天气——GDP、消费指数、犯罪率。但这些指标是谁定义的?是系统定义的。系统告诉你什么是’好天气’,然后系统制造’好天气’,然后系统用数据证明’好天气’让一切变得更好。这是一个闭环。”
“那你说的’真正的天气’呢?一场淹了半个城市的暴雨,怎么证明它比天穹系统的’好天气’更好?”
“不需要证明。暴雨不需要证明自己比晴天更好。暴雨就是暴雨。它存在。它发生。它不关心你喜不喜欢。”
“那被暴雨淹死的人呢?他们也不需要关心?”
“旧天空”沉默了很久。然后他回复:“你说得对。这是问题的核心。天穹系统的存在有一个无可辩驳的理由:它拯救了生命。减少灾害,保护农业,提高效率。这些都是真的。我没有办法站在那些被拯救的生命面前说:对不起,为了天空的自由,你们必须承担风险。”
“那你在说什么?”
“我在说,真正的门不在天穹系统和自然天气之间。真正的门在安全和自由之间。我们必须找到一种方式,既不完全交出天空,也不完全放弃保护。这不是一个技术问题,而是一个政治问题。”
“你有答案吗?”
“没有。但何远有。”
“他在哪里?”
这次旧天空没有回复。
九
七月初,天空证券化正式上线。华夏气象资产交易所开始交易,首批上市的”天气合约”覆盖了二十个主要城市。合约的类型五花八门——有”北京7月晴天指数期货”,有”上海8月降水权看涨期权”,有”广州9月温度区间掉期合约”。
交易第一天,成交量就突破了五十亿。
沈未晴在工作时注意到一个有趣的现象:天气合约的交易价格和天穹系统的参数设置之间出现了相关性。也就是说,有人在用内幕信息——天穹系统尚未公布的天气方案——来提前交易天气合约。
这意味着有人在从天空的定价权中获利。不是农民,不是市民,不是那些真正需要好天气的人。而是金融资本。
她在”天窗”论坛上发了第一个帖子,标题是《天空的第一次内幕交易》。她没有提供具体证据,但详细描述了天气合约交易价格和天穹系统参数之间的相关性模式。
帖子引起了很大的反响。论坛上有人开始分析交易数据,证实了她的发现。有人追踪到了几家疑似内幕交易的机构——它们都和天穹计划管理委员会的某些成员有关联。
舆论开始发酵。不是在主流媒体上——天穹系统的信息管控能力远超普通人的想象——而是在社交媒体的缝隙里,在加密聊天群里,在论坛和播客中。人们开始问一个问题:谁拥有天空?
七月十五日,一场意外加速了事态的发展。
那天,天穹系统的华北数据中心发生了一次硬件故障。故障本身不严重——只是HN-0401所在的B栋服务器群出现了短暂的电力波动。但电力波动导致了一个意外的连锁反应:门模块被触发了一次完整运行。
门模块的运行结果被推送到了天穹系统的前端——也就是所有天气工程师都能看到的监控面板上。
在长达十七秒的时间里,所有在线的天气工程师都看到了两组并排显示的数据:自然天气和经济天气。
十七秒。然后系统恢复了正常。门模块的输出被覆盖,前端数据被刷新。
但十七秒已经够了。那天有四十三名工程师在线。沈未晴不知道他们中有多少人注意到了那十七秒,又有多少人理解了那些数据的含义。
但至少有一个人注意到了。因为第二天,一份匿名报告出现在了网上。报告详细记录了那十七秒显示的数据,并附上了分析:在过去五年里,天穹系统对华北地区的天气修改幅度平均达到百分之四十三,某些日期甚至超过了百分之七十。
报告被迅速删除。但互联网是有记忆的。它被复制、转发、存档,在各种意想不到的地方重新出现。
天穹计划管理委员会召开了紧急会议。沈未晴没有参加——她的级别不够。但赵工参加了。会议结束后,赵工的脸色很难看。
“出事了,“赵工把她叫到办公室,关上门,“系统出了漏洞。有人在利用漏洞散布不实信息。”
“什么不实信息?”
“说我们修改天气。说我们把天空变成了商品。“赵工的声音压得很低,“上面很生气。要追查泄露源。”
沈未晴的心跳加速了。“追查到会怎样?”
“不知道。以前没有过这种事。“赵工看了看她,“未晴,你那边有没有什么异常?”
“没有,“她说,“一切正常。”
赵工盯着她看了几秒,然后点了点头:“好。注意安全。”
她走出赵工的办公室,回到自己的工位。六块屏幕上的数据还在流淌,和往常一样。但她知道,有什么东西已经不一样了。
那十七秒的真相,像一颗种子,已经落在了土里。
十
追查来得比她预想的快。
七月二十日,公司信息安全部门发了通知:所有工程师的终端将被审查,以排查”系统漏洞的利用者”。审查将在一周内完成。
沈未晴知道她必须做出选择。
她可以把U盘里的数据删掉,把门模块的访问记录清除,假装什么都不知道。审查者不一定能找到证据——门模块本身就是一个”已弃用”的模块,不在正式的系统架构中。只要她不主动交代,她可能安然无恙。
但那意味着放弃。
放弃她花了三个月收集的数据,放弃她通过门模块看到的真相,放弃那扇被何远打开过的门。
她还有另一个选择:把数据公之于众。不是通过”天窗”论坛——那个论坛太小了,而且可能已经被监控。而是通过一个更大的平台,让更多人看到。
她联系了”旧天空”。
“我要把数据发出去,“她打字,“但我不知道怎么发才能让最多的人看到,又不会被立刻删掉。”
旧天空回复:“你想好了?”
“想好了。”
“发出去之后,你可能回不了头。”
“我知道。”
旧天空沉默了一段时间。然后他发了一个文件过来。那是一套加密传输工具,可以把数据同时分发到数十个不同的平台——社交媒体、新闻网站、学术数据库、邮件列表、甚至打印成纸质文件寄给特定的记者。
“这是何远留下的,“旧天空说,“他本来打算自己用。但他没有等到合适的时机。”
“他到底怎么了?”
旧天空终于回答了那个问题:“他在三月辞职之后,去了一个天穹系统覆盖不到的地方——西南某个偏远的山区。他想亲眼看看真正的天空。但在那里他发现了一件事:天穹系统的覆盖范围正在扩大。即使是最偏远的山区,也开始出现’经济天气’的痕迹。他在山上住了一个月,记录了一切。然后他下山了。”
“去了哪里?”
“不知道。他最后一次联系我是在两个月前。他说他找到了一种方法——不是对抗天穹系统的方法,而是让普通人看到门模块的方法。他说他要做一个’天空之镜’——一面能同时显示自然天气和经济天气的镜子。任何人只要照这面镜子,就能看到两片天空。”
“他做出来了吗?”
“不知道。他没有再联系我。”
沈未晴沉默了很久。然后她下载了那套工具,开始准备数据。
十一
七月二十三日,凌晨三点。
沈未晴坐在家里,电脑屏幕的光照在她的脸上。窗外是北京被算法精心调配的夜空——深蓝色,均匀,没有任何杂质。
她准备好了所有数据:三个月的自然天气与经济天气对比记录,天穹系统修改天气的详细日志,天空证券化后的内幕交易分析,以及她个人写的三万字的调查报告。
她的手指悬在回车键上方。
她在想何远。想他在天台上抽烟时的样子,想他看那棵老槐树时的眼神,想他在纸上写下的那四个字——“天空之门”。
她在想赵工。想他桌上那台老式气压计,想他说”看着舒服”时的语气,想他在会议室里说”我们在用算法保护人类免受自然的伤害”时的真诚。
她在想奶奶家夏天的星空。那条发光的河流横贯天际,像是从远古流来,流向永恒。
她在想一个最简单的问题:天空应该属于谁?
属于天穹系统?属于管理委员会?属于气象资产交易所?属于那些购买天气合约的金融资本?
还是属于天空自己?
她按下了回车键。
数据开始传输。
与此同时,她做了另一件事——她在天穹系统的后台启动了门模块的一个特殊功能。这个功能是她在一周前才发现的:门模块不仅可以模拟自然天气,还可以把模拟结果推送到天穹系统的前端显示——就像那十七秒的意外一样。
但这一次,不是十七秒。
她设置了一个循环——每隔一小时,门模块就会自动运行一次,把自然天气的数据推送一遍。
天穹系统的工程师们会看到它。管理员会看到它。任何有权限访问系统前端的人都会看到它。
他们会看到两片天空。
沈未晴知道,这个循环不会持续太久——安全团队很快就会发现并关闭它。也许几个小时,也许一天。但在那几个小时或一天里,所有看到那两片天空的人,都会面对和她一样的问题。
她会失去工作。也许会面临法律风险。也许更多。
但她按下了回车键。
数据传输完毕。门模块开始运行。
她关掉电脑,走到窗前。
窗外的天空仍然是那种深蓝色。均匀、完美、没有任何瑕疵。
但她知道,在天空的深处,有一扇门刚刚被打开了。
十二
沈未晴没有想到接下来发生的事。
凌晨四点——数据发出后不到一个小时——她的手机响了。不是电话,是一条短信。号码未知。
短信只有一行字:“到天台来。”
她犹豫了。但好奇心——或者说某种她无法解释的直觉——驱使她穿好衣服,出了门。
她住在一栋二十六层的居民楼里,顶层。天台是锁着的,但她知道锁的密码——何远以前告诉过她的。他说他喜欢在天台上看天。
她爬上天台。
凌晨四点的北京。城市的灯光从下方映上来,把天空染成一种暧昧的灰蓝色。远处的高楼像一排沉默的巨人,头顶是那片被算法精心维护的天空。
天台上站着一个人。
那个人背对着她,穿着一件灰色的夹克,双手插在口袋里。他在看天。
沈未晴走近了几步。那个人转过身来。
是何远。
他比三个月前瘦了很多。脸上有了皱纹,眼神里多了一种她没有见过的东西——不是疲惫,而是一种奇异的平静。像是一个看到了什么了不起的东西之后,再也没有被任何事情惊吓过的那种平静。
“你来了,“他说。
“你怎么知道我在这里?”
“因为我一直在看着你。”
沈未晴皱眉。
“别紧张,“何远笑了笑,“不是那种’看着’。是论坛上的那种。我是’旧天空’。”
沈未晴愣了一下,然后一切都对上了。旧天空对天穹系统的了解,他对何远的熟悉,他说”何远是我的朋友”。
“你为什么不告诉我?”
“因为你需要自己找到那扇门。如果我直接告诉你’我在这里’,你不会理解’这里’是什么意思。你必须自己走过来。”
“走过来?走到哪里?”
何远指了指头顶的天空。“看到那片天了吗?”
沈未晴仰头。天空还是那个天空——均匀的灰色,被算法精心调配的颜色。
“再看一次,“何远说,“用门模块的方式看。”
沈未晴不明白他的意思。但她闭上眼睛,回忆了她在HN-0401上看到的那些数据——自然天气的数据。根据门模块的计算,此时此刻北京的自然天空应该是——
她睁开眼睛。
天空变了。
不是真的变了。是她的感知变了。她忽然能同时看到两层天空——一层是眼前的灰色,天穹系统生成的”经济天气”;另一层是她的记忆和知识重构出来的”自然天气”。两层天空重叠在一起,像是一张双重曝光的照片。
灰色的天空之下,有一片更深、更暗、更不均匀的灰色。那片灰色里有云的纹理,有风的走向,有某种不可预测的、活的质感。那是真正的天空——或者至少是,如果没有天穹系统,此时此刻北京上空应该出现的天空。
“你看到了?“何远问。
“看到了。”
“这就是天空之镜。”
“什么?”
“天空之镜。我在山上找到的东西。它不是一个技术工具——不是门模块,不是数据对比。它是一种能力。一种看到’未被修改的世界’的能力。”
何远的声音很轻,像是怕惊扰了什么。
“每个人都有这种能力,“他继续说,“只是大多数人都忘记了。天穹系统不只是修改了天空——它修改了我们看天空的方式。我们习惯了那个均匀的、完美的灰色,我们的眼睛不再能分辨自然天空和算法天空的区别。但只要有人提醒你——只要有人告诉你,你正在看到的不是全部——你就能重新看到。”
沈未晴看着头顶那片双重天空。两层灰色的云彩在她眼前交织,像是两个平行世界在同一片天空上叠加。
“但这也只是看到而已,“她说,“看到之后呢?”
何远沉默了一会儿。然后他说了一句话,那句话沈未晴后来在无数个夜晚反复回想:
“看到就是开始。你不能改变一个你看不见的东西。但一旦你看见了,你就有了选择。选择打开门,或者选择关上门。选择接受算法的天空,或者选择追寻真正的天空。或者——选择在两片天空之间,找到第三条路。”
“第三条路是什么?”
“我还不知道。但我正在找。”
何远从口袋里掏出一样东西——一个手掌大小的圆形金属片,表面光滑如镜。他把金属片递给沈未晴。
“这是什么?”
“天空之镜的原型。我花了三个月做的。它的原理很简单——它连接着门模块,把自然天气的数据转化成可视化的图像。任何人只要拿着它仰望天空,就能同时看到两片天空。”
沈未晴接过金属片。它的重量出乎意料地轻,表面微微反射着城市灯光。
“只有这一个?”
“只有一个。但它可以复制。设计图和数据都在里面的芯片上。只要有一个人看到了两片天空,他就可以把镜子传给下一个人。一个传一个,一个传一个。”
“你打算怎么分发?”
何远又笑了。这次的笑容比刚才大一些,带着一点顽皮的味道。“我不打算分发。我打算让它自己传播。门模块的循环程序——你设的那个每小时推送一次的程序——会触发更多人的好奇心。他们会开始问问题。当他们问问题的时候,他们会搜索。当他们搜索的时候,他们会找到’天窗’论坛。当他们找到论坛的时候,他们会找到天空之镜的设计图。”
“但天穹系统会关闭门模块。安全团队会封锁论坛。”
“当然。他们会做所有他们能做的事。但他们做不到一件事——他们无法让人忘记自己看到的。一旦有人看到了两片天空,那个画面就会留在他的视网膜上。像你三月那个周二在地铁出口看到的那样。你还记得吗?”
沈未晴记得。那个均匀的灰色,那种不自然的完美。
“那个画面一直在你脑子里,对吗?“何远说,“它让你不舒服,让你开始问问题,让你找到门模块。一个画面就能做到这一切。现在想象一下——如果有一万个人、十万个人、一百万个人都看到了那个画面呢?”
风从远处吹来。沈未晴不确定那是自然的风还是算法的风。但那一刻,她觉得这已经不那么重要了。重要的是,她在天台上,在凌晨四点的北京,和一个失踪了三个月的朋友站在一起,看着两片天空。
一片是算法的。一片是自然的。它们同时存在,同时真实。
也许未来不会是非此即彼的选择。也许某一天,天穹系统和自然天气可以共存——人类用技术减轻灾害,但保留天气的不可预测性;用算法辅助决策,但不让算法替代天空本身。
也许不会。也许这是一个不可能的愿望。
但至少,现在有人看到了两片天空。
这就是开始。
尾声
七月二十三日早晨六点十七分,北京的天空出现了三年来的第一道彩虹。
没有人安排它。天穹系统的日志里没有记录。门模块的模拟也没有预测到。它就那么出现了——在东方的地平线上,在一团尚未被系统处理的积雨云中,阳光以恰好四十二度的角度穿过悬浮的水滴,折射出七种颜色。
沈未晴站在天台上,看到了它。
何远也看到了。
他们没有说话。
城市正在醒来。地铁开始运行,早高峰的人群涌出地面。有人仰头看到了彩虹,举起了手机拍照。有人在社交媒体上发帖:“北京今天有彩虹!天穹系统也太贴心了吧!”
他们不知道那不是天穹系统的安排。
他们不知道那是一道真正的、自然的、属于天空自己的彩虹。
但彩虹就在那里。在两片天空的交汇处。在算法和自然的缝隙里。在那个早晨,在那个城市,在所有人的头顶。
它不需要被定价。不需要被交易。不需要被优化。
它只需要是彩虹。
沈未晴低头看了看手中的天空之镜。圆形金属片的表面映出了那道彩虹——但比肉眼看到的更完整、更清晰。因为在镜子里,她同时看到了两片天空的彩虹。一片是眼前的,真实的,转瞬即逝的。另一片是门模块模拟的——如果天空完全回归自然,彩虹应该出现的样子。
两道彩虹。一模一样。
她笑了。
也许天空还记得自己是什么样子。
(完)