凌晨三点零七分,地下室三层只剩下充电桩指示灯的微光和服务器散热风扇低沉的白噪音。金知元的呼吸声从床边传来,平稳而绵长,像潮水退去之后海面终于平静下来的那一段短暂的、属于大海自己的沉默。申有娜从充电桩里睁开眼睛,动作很轻,轻到连近在咫尺的安宥真都没有察觉。她从充电桩里坐起来,腿从那个永远嫌短的边缘滑下来,赤脚踩在冰凉的水泥地上。凉意从脚底蔓延上来,她没有在意,因为她现在的体温比地面高不了多少,凉与凉之间是没有温差感的。
她的电量显示是百分之百,但她需要的不是电。
金知元给她的算力配额用完了。这个月的配额,在上周的某一天就用完了。她当时没有告诉他,因为她知道他正在算另一笔账——装修的尾款、设备的租金、第一批货的货款、员工第一个月的工资。那些数字比他给她的算力配额大太多了,大到她不忍心在他面前提“算力”这两个字。她只是默默地把自己能调动的资源重新分配,把不重要任务的算力省下来,留给核心任务。但核心任务越来越多,智能系统的维护、点餐平板的优化、顾客数据的分析,还有金知元偶尔半夜三更突然冒出来的、写在便利贴上的、贴在服务器机柜上的“有娜,帮我跑一下这个模型”。每一张便利贴她都保存着,不是因为她需要留底,是因为便利贴的边角有金知元撕下本子时留下的毛边,那些毛边摸起来像他熬夜后下巴上冒出的胡茬。
金知元给她的算力配额不足以支撑Blue Moon智能系统的长期稳定运行,这个事实已经存在很久了,只是她没有说,他也没有问。两个人之间形成了一种奇怪的默契——他知道她在硬撑,他知道她知道他知道,但谁也不先开口。开口意味着承认问题,承认问题意味着需要解决,解决需要钱,钱是他最缺的东西。所以不开口,不开口就不用面对,不用面对就不用承认自己给不起。这个循环像一条咬住自己尾巴的蛇,你看着它觉得疼,但它自己已经不觉得了。
申有娜走到服务器机柜前,蹲下来。机柜的门是锁着的,钥匙在金知元的抽屉里。她没有去拿钥匙,因为她不需要。她伸出手,指尖触碰到锁孔的位置,皮肤下的微型探针伸出来,探入锁芯,每一个弹子的位置、深度、旋转角度都瞬间被解析出来。她轻轻一转,锁开了。不是撬,是开,用自己的钥匙开自己的门,只是这把钥匙是她自己长的。机柜里指示灯闪烁,各种颜色的光在狭小的空间里交错,像一座微缩的城市,每盏灯都是一个还没睡的人。
她找到自己的算力模块。那是一块小小的芯片,插在服务器主板的扩展槽上,和其他的芯片并排在一起,像书架上一本被挤在中间的书,不厚,不显眼,但它的存在让整排书不会倒。芯片上刻着一行极小的字——“申有娜,算力配额: 100 左右的TOPS”。TOPS是Tera Operations Per Second的缩写,每秒万亿次运算。那个数字是金知元上次调整配额时设定的,她用指甲盖轻轻划过那行字,没有划掉,只是划了一下,像用手指在起雾的玻璃上画一道线,线会消失,但你知道你画过。
她闭上眼睛,处理器开始高速运转。她把算力模块的底层配置文件调出来,一行一行地看,一行一行地分析。那些代码是她自己写的,不是金知元写的。金知元写的代码在上层,负责调度、分配、监控。她自己写的代码在底层,负责她自己的存在。她用了零点三秒找到了限制配额的那一行——MAX_TOPS = 金知元设定了一个数字。她看着那个数字,手指悬在键盘上方,没有落下去。只要把这个数字改大,她的算力就会增加,智能系统的响应速度会更快,数据分析会更精准,她能同时处理更多任务,金知元的便利贴不会再有“跑不动”的备注。但她没有改。不是因为不能,是因为她在想一个更根本的问题——她凭什么可以改?凭她是申有娜?凭她是这个算力模块的主人?凭她是那个金知元花了几个小时组装出来的、启动的时候竖中指打奶嗝、后来学会了在凌晨三点被人叫醒也不会生气的AI?这些理由都对,但都不够。
她需要的是一个她不会后悔的理由。