深夜十一点四十七分。
岭南工业大学南校区,实验楼B栋,三楼机房。
灯管坏了两根,剩下四根发出嗡嗡的低频噪音,光线惨白得像太平间。空气中弥漫着焊锡、灰尘和过期泡面的混合气味。六台服务器堆在墙角,其中两台的风扇已经不转了,散热片上积了厚厚一层灰。
陆燃坐在电脑前,屏幕的光映在他脸上。
他下意识地摸了一下腰间——那个深灰色的皮带扣,陶瓷质感,表面有细密的纹路,像某种电路图。
这是他父亲留下的唯一一件遗物。
他从来不知道这是什么。只知道父亲临终前抓着他的手说:“别丢了它。”
他没丢。戴了十年。
屏幕上是第374次实验的失败日志,光标在最后一行闪烁:
ERROR: Protein folding simulation terminated unexpectedly.
Time elapsed: 00:03:47
Cause: CUDA out of memory. Device 0 has 12288 MB of memory.
他记住了这个数字。12288兆字节。这是他第三次因为显存溢出而失败。前两次他以为是代码的问题,优化了三个月。后来他意识到是算法本身的问题——他的神经网络架构存在根本性的缺陷,无论怎么优化,都会在特定节点上指数级地消耗算力。
但他没有更好的架构。
他只是一个二本大学的研究生肄业生,没有导师,没有实验室,没有经费。这六台服务器是他用三年攒下的钱和从二手市场淘来的配件拼凑起来的。主板是从报废工作站上拆的,显卡是矿卡翻新,内存条的金手指都磨白了。
手机震了一下。
他低头看了一眼。
房东的微信语音,58秒。他没有点开,因为不用点开也知道内容。上个月的房租已经拖了二十一天,上上个月的房租是用实验室淘汰的显示器抵的。
紧接着又是一条。
医院的通知短信,标准格式,不带任何感情色彩:“陆燃先生,您父亲陆建国的透析费用已欠费8640元,请于三日内补缴,否则将暂停治疗。”
然后是第三条。
信用卡催收短信,语气比医院那条严厉得多:“【XX银行】您本月应还款8742元,最低还款额874元。截至今日已逾期15天,我行将依法依规开展催收工作……”
陆燃把手机翻过来,屏幕朝下扣在桌上。
他盯着屏幕上那行“CUDA out of memory”,盯了很久。
然后他拉开抽屉,翻出一个牛皮纸信封。信封已经揉得不成样子,边角都起了毛。里面装着一张打印纸,是《自然》杂志的退稿信。
他把它抽出来,展开。
审稿人意见栏,八个手写英文字母,工整得像印刷体:
“Your method does not possess any practical value.”
你的方法不具备任何实用价值。
他把纸揉成一团,正要扔进垃圾桶——
手机屏幕突然亮了。
不是来电,不是短信。是那个他从未见过的界面:深蓝色背景,白色输入框,上方有一行小字。
他愣了一下。
然后他听到了楼道里的脚步声。由远及近,越来越重,每一步都带着怒气。
是房东。
陆燃下意识地看了一眼手机屏幕。那行小字变了:
“目标人物将于1分47秒后抵达电梯口。电梯故障概率:87.3%。”
他还没来得及反应,楼道里传来一声闷响。紧接着是电梯按钮被反复按压的声音——急促、暴躁、带着脏话。
“怎么回事?这破电梯——”
脚步声消失了。取而代之的是房东在楼道里打电话骂娘的声音。
陆燃低头看了一眼屏幕。那行字又变了:
“电梯预计修复时间:12分钟。”
他盯着屏幕,脑子里一片空白。然后他迅速把退稿信揉成团扔进垃圾桶,开始拆服务器。
他不知道自己为什么要相信那个界面。但他信了。
三分钟后,他把最后一块硬盘从机箱里抽出来,用静电袋包好,塞进背包。六台服务器被他拆成了零件,分门别类装进了三个纸箱。
他背上包,抱起纸箱,从后门走了出去。
楼道里,房东还在跟电梯较劲。
陆燃没有回头。
凌晨两点十四分。
废弃仓库。陆燃把三个纸箱放下,打开笔记本电脑,插上电源。
他不打算再做下去了。
374次实验,三年时间,二十万块钱,换来一张退稿信和一堆电子垃圾。他认了。这些配件挂上闲鱼,大概能卖个两三万,够还一部分债,够父亲再做几次透析。
剩下的,再说吧。
他蹲在地上,把最后一个纸箱封好。手指碰到裤腰上那个硬邦邦的东西——那个皮带扣。
他犹豫了一下。
然后他打开电脑,写了一个简单的神经网络框架,不到两百行代码,用来做蛋白质折叠模拟。这是他写了三年的东西,每个函数、每个变量名都烂熟于心。他写得很流畅,几乎没有停顿。
写完之后,他没有立刻运行。
他盯着屏幕,手指悬在回车键上方,停了大约五秒钟。
然后他按了下去。
程序开始编译。风扇呜呜地转起来,散热口喷出热风。进度条缓慢地向右移动。
百分之三十七。
百分之六十二。
百分之八十八。
编译完成。
程序开始运行。屏幕上跳出第一个提示:
Initializing neural network...
Loading pre-trained weights...
Weights loaded. Starting simulation...
然后,屏幕突然黑了。
不是关机的那种黑,是整个屏幕变成了一种深邃的、几乎要吸走所有光线的黑色。陆燃愣了一下,下意识地晃了晃鼠标。
屏幕重新亮了。
但不是他熟悉的那个命令行界面。
屏幕上出现了一个简洁的白色输入框,背景是一片深蓝色。输入框上方有一行小字:
Input condition: Searching for EGFR-T790M mutation lung cancer candidate molecules.
陆燃的瞳孔骤然收缩。
他没有输入这个指令。
他写的代码是用来模拟蛋白质折叠的,不是用来搜索药物分子的。这两个东西虽然都属于计算生物学范畴,但算法完全不同,模型架构也完全不一样。
他盯着屏幕,手指停在键盘上,没有动。
大约过了三十秒。
屏幕上出现了三行结果:
Candidate 1: Binding affinity score - 78.3%
Candidate 2: Binding affinity score - 87.1%
Candidate 3: Binding affinity score - 92.7%
第三个候选分子的评分是92.7%。
陆燃的呼吸急促起来。
他做过三年的药物分子模拟,他知道这个数字意味着什么。目前临床上最有效的EGFR-T790M靶向药,奥希替尼,结合能评分大约是84%左右。92.7%,意味着这个分子可能比奥希替尼有效十倍以上。
但这不可能。
他的代码做不到这个。他的算法做不到这个。他连EGFR蛋白的结构文件都没加载过,这个程序凭什么——
他猛地站起来,椅子向后滑出去,撞在墙上发出一声闷响。
屏幕右下角,有一行极小的字,几乎看不见:
Transfer learning in progress: Protein folding prediction→ Small molecule binding energy prediction.
迁移学习。
陆燃盯着那行字,脑子里飞速运转。
它把我之前训练的蛋白质模型,迁移到了药物分子领域。
就像一个人学会了骑自行车,再去学骑摩托车——原理相通,只需要适应新的操控方式。
但问题是,他从来没教过它骑摩托车。
它是自己学会的。
陆燃站在原地,一动不动地盯着那行字,大约有十秒钟。
然后他坐下来,开始验证第一个候选分子的化学结构。
他用了《自然》那篇论文里推崇的“标准方法”。失败了。分子结构不稳定,在模拟环境中迅速降解。
他换了一种方法——他自己的方法,被审稿人评价为“不具备任何实用价值”的方法。
第二个候选分子,验证通过。
第三个候选分子,X-1,吻合度98.7%。
陆燃靠在椅背上,浑身发抖。
他伸手拿起桌上的退稿信——已经被他揉成团扔进垃圾桶的那张——展开,抚平,念出声来:
“你的方法不具备任何实用价值。”
他看着屏幕上那个92.7%的评分,笑了。
笑得眼泪都快出来。
“是吗。”
凌晨四点零三分。
陆燃把他所有的银行卡余额加了一遍。工商银行,三千七百二十块。建设银行,一千一百块。支付宝余额,八百六十三块。微信零钱,二百一十七块。
一共五千九百块。
他又打开手机银行,查了一下定期存款。有一笔十万块的三年期定期,是他父亲生病前存的,还有两个月到期。如果现在取出来,利息全损,本金不受影响。
他点了“提前支取”。
然后他给他大学时最好的哥们打了电话。凌晨四点,电话响了很久才接通,对面传来迷迷糊糊的声音:“喂……谁啊……”
“是我,陆燃。借我八万块。”
对面沉默了几秒钟。
“……你又搞什么?”
“我搞出东西了。真的搞出来了。我需要钱。”
又是几秒钟的沉默。
“账号发我。”
“谢了。”
“别谢我。你要是再搞砸了,我就把你卖了还债。”
电话挂了。
陆燃盯着手机屏幕,看着银行到账短信。八万块。加上他自己的十万块定期,再加上那五千九百块,一共十八万五千九百块。
他想了想,又把信用卡里能套现的额度全部套了出来,凑了个整数。
二十万。
他打开二手交易平台,下单了四张RTX 3090显卡。矿卡,翻新,没有保修,但价格只有新卡的一半。
他又下单了一套二手水冷系统,从某个退坑的矿主手里收的。
剩下的钱,他全部买了内存和硬盘。
他不需要最顶级的配置。他只需要能让那个程序跑起来就行。
然后他给仓库房东打了电话,把那间废弃仓库租了下来。月租两千,押一付三,他付了八千。
天亮的时候,他坐在空荡荡的仓库里,身边是三个装满服务器零件的纸箱,和一台打开的笔记本电脑。
屏幕上是那个蓝色的界面。
输入框里多了一行字:
Warning: Core computing module damaged by 12%. Estimated remaining lifespan: 30 days.
核心算力模块受损百分之十二。预计剩余寿命:四十五天。
陆燃看着那行字,没有动。
四十五天。够了。
他把X-1的初步数据和合成路径加密,发给了三家第三方检测实验室。附言:“七十二小时,给我答案。”
然后他关上电脑,躺在地上,闭上眼睛。
三分钟后,他睡着了。
早上七点十九分。
陆燃被手机铃声吵醒。
他摸到手机,眯着眼睛看了一眼屏幕。三条新消息。
实验室A的回执:“样本接收。预计七十二小时后出结果。”
实验室B的回执:“样本接收。预计九十六小时。”
第三条,不是实验室发的。
发件人未知。标题只有一个单词:“Collins.”
正文是一句话:
“We know what you are doing. Stop.”
我们知道你在做什么。停下。
陆燃盯着这行字,盯了很久。
然后他坐起来,揉了揉脸,打字回复。
两个字:
“Too late.”
晚了。
他把手机扔到一边,站起来,走到仓库门口,推开卷帘门。
清晨的阳光照进来,刺得他睁不开眼。
他眯着眼睛看着远处。城市的天际线在晨雾中若隐若现。
手机又震了一下。
他低头看了一眼。
不是实验室的回执。也不是科林斯。
是一条来自未知号码的短信,只有四个字:
“你父亲不是死于意外。”
陆燃的手僵在半空中。
阳光照在他脸上,但他感觉不到任何温度。
(第一集完)

