第六周的周一早上,律和医院上头的天空还是灰蒙蒙的。
在七楼走廊尽头那间没有窗户的房间里,只有服务器的电源指示灯亮着,在阴影里一明一灭地跳动。
孙雨萌坐在屏幕前面,头发被随手扎成了一个松垮的丸子,后颈有头发散落出来搭在衣领上。
她面前的那台电脑从凌晨四点起就没有熄过屏,屏幕最下方的输出窗口正在滚动显示最后一批验证日志——她刚刚手动调整了学习率参数,重启了第七版训练,中间因为服务器资源冲突暂停过一次,重启之后又走了将近四个小时,现在终于跑完了。
她把鼠标往下划了一下,翻到了输出日志的最底端。那一行数字安静地停在屏幕右侧,前面没有多余的标点修饰——0.29mm。她盯着那行数字看了五秒,然后又看了五秒。她把手从鼠标上拿开,拿起手机,在项目群里发了一条消息。发完之后她把手机放在桌面上,屏幕亮着,自己靠进椅背里,闭了一会儿眼睛。额前的碎发被墙角的暖气片吹得微微动了一下,她睁开眼,手机已经震成了一片。
赵一鸣:“我靠!”
小王:“真的假的?!是我理解的那个0.29吗?”
林笑笑紧接着也跳了出来:“孙雨萌你是神!!”
孙雨萌看着那些跳出来的感叹号,重新拿起手机,按着语音键说了一段话,声音平稳但尾音带着一点收不住的颤:“是苏主任调了前面那版,我顺着她调的思路试了二十多种参数组合。今天凌晨四点跑出来的。”她说完这段话把语音消息发出去,屏幕上的未读消息还在不停地往上跳动。苏清月最后回了一条,在满屏的感叹号中间显得特别短:“辛苦了。今天休息一天。”
孙雨萌看着那条消息,打字回过去:“我不休!我还要跑临床验证!”她的手指在发送键上按了一下,紧接着又补充了一句:“马上就验证。”苏清月没有回文字,但孙雨萌发现自己电脑屏幕上的训练界面被弹出了一个远程锁屏提示——她的账号被强制退出了,系统的锁屏界面上显示着一行提示信息,她的桌面窗口被全部关闭了,光标停在输入密码的框里,旁边挂着一行字:“系统已被远程管理员锁定。请稍后再试。”
孙雨萌看着那行字,朝那个方向沉默地坐了一会儿。她低头拿起手机,林笑笑私聊她:“师姐,孙雨萌是不是睡了?”她正看着那条消息犹豫要不要回的时候,项目群里多了一条苏清月发的消息。内容很短,几乎被前面那堆感叹号吞没了,但孙雨萌看见了——“我让顾言深把她电脑远程锁了。”林笑笑接了一条问“你怎么锁的”,苏清月回了一句“他那边有权限”。林笑笑又问“顾主任帮你锁的?”,苏清月没有直接回答。但林笑笑自己追了一条消息:“他说‘她再不睡你自己先睡’?”苏清月这次回了一个字:“嗯。”
林笑笑在对话框里刷了一排感叹号。孙雨萌看着那排感叹号,把手机放下来,侧身躺到了墙角那张旧沙发上。她侧躺的时候外套没有脱,鞋子没有蹬,整个人蜷在沙发靠垫上,侧脸贴着沙发表面的旧布料,后背微微弓着。暖气片在她脚边持续散发热量,房间里的灯光被人关掉了,不知道是谁经过的时候顺手按了一下开关。那盏日光灯熄灭了,房间沉入暗色里,只有服务器的电源指示灯在角落里持续亮着那颗小小的绿点。她闭着眼躺了大约五个小时,中间没有翻过身。
她醒来的时候光已经回来了——不是从窗户透进来的自然光,而是天花板上那根日光灯被人重新打开了,冷白的光线均匀铺满了整间屋子。她动了动肩膀,身上多了一件东西。一件深灰色的薄外套,被人披在她肩膀上的。她坐起来的时候外套从她肩头滑下来搭在膝盖上,她把外套拿起来叠好放在桌角。手机上有一条未读消息,苏清月发的,时间显示是下午两点多:“睡醒了就来试临床数据。”
孙雨萌看着那条消息,把那件叠好的外套往桌角推了推。她走到自己的工位前面坐下来,打开电脑,登录系统,加载了第一组临床数据。数据加载完成之后她抬头看了一眼墙上白板上的备注——“临床验证流程第一组”。她把输出窗口调整到最大化,点下了运行键。屏幕上开始加载验证模块的进度条,一秒,两秒,三秒。结果在屏幕左下角跳出来了。0.28mm。她把窗口里的数据拉到顶部,确认了输入的文件名和病例编号——没有错,是真实的临床数据,不是训练集。
她盯着那个数字,手指在键盘上方停了一下。然后她站起来,转身推开门,从走廊跑了出去。
她的脚步声在空旷走廊里急促地响着。她跑过护士站的时候护士抬头看了她一眼,她的白大褂下摆在膝盖后面翻卷,她跑到神外办公室门口的时候没有敲门,直接推开门冲了进去。苏清月正坐在办公桌后面翻一份病理报告,孙雨萌的声音从门口的位置传进来,带着一口气没喘匀的颤动:“苏主任!!结果出来了!!0.28!!!”
办公室里安静了一瞬。苏清月放下报告,看着她,说了一句:“多少?”
“0.28!我跑了三遍!每一遍都是0.28!不是那组测试数据,是真正的临床影像!”孙雨萌站在门口,声音有点抖。
林笑笑从隔壁隔间探出半个头:“多少?”然后她整个人从隔间里弹了出来,手里还攥着一支笔,笔帽都没来得及盖上。
“0.28!!”孙雨萌重复了一遍。
“你确定?!”林笑笑的音量跟她的脚步一样在升高。
“确定!我跑了三遍!”孙雨萌的声音从喘匀了恢复成了平稳的确认,尾音向上扬了半度,带着一层不易压制的弧度。
林笑笑从隔间冲出来,一把抱住了她。两个人站在办公室门口,林笑笑的胳膊环过她的肩膀,孙雨萌的胳膊从下面穿过去搭在林笑笑后背上。赵一鸣和小王从楼梯口那边跑上来,不知道是谁喊了一声“怎么了怎么了”,林笑笑把脸从孙雨萌肩膀上抬起来半寸,声音带着气:“0.28!比目标还低!!”
赵一鸣愣了一秒,然后挤过来加入了拥抱。小王是最后一个过来的,他站在外围拍了拍孙雨萌的肩膀,又拍了拍赵一鸣的肩膀,最后退后半步站在旁边笑——笑容不大,但持续着没有收。
苏清月从办公桌后面站了起来。她绕过桌面走到门口的时候四个人正挤成一团——林笑笑在最中间,孙雨萌被她搂着肩膀,赵一鸣从侧面挤进来一只胳膊,小王站在外围。她站在他们面前,声音不高不低,像一只水杯被放回桌面上时轻轻磕了一下桌面的声响:“行了,抱完了回去干活。下午还有三组验证。”
四个人散开。林笑笑把笔重新握好,孙雨萌擦了擦眼镜片,赵一鸣活动了一下被压酸的肩膀。他们穿过走廊走回项目组办公室,各就各位,重新打开了各自的电脑。
下午的三组验证全部通过了。每一组的误差数字分别停留在0.30、0.28、0.31。最后那组0.31比目标高了一丁点,但也只是刚刚好地飘过了边界,在可接受范围之内。苏清月坐在自己的工位上,把最后一份验证报告翻到最后一页,拿起笔在签名栏的位置写了自己的名字,然后合上了文件夹放在桌角。她说:“可以了。下周一做全院临床演示。”
“临床演示?”林笑笑从自己的工位转过头来看她。
“全院大会。现场展示系统运行效果,所有主任都会到场。演示完了,项目才算正式落地。”苏清月的声音平稳。
四个人没有说话。赵一鸣的呼吸频率在他自己意识到之前变快了一些,小王的咖啡杯在手里转了两圈没有端起来,孙雨萌的手指搭在键盘边缘没有敲下去。林笑笑第一个开口,声音比她自己预期的稳一点:“那我们——”
“好好准备。这次演示完之后,这个项目才算真正落地。”苏清月说完站起来,把文件夹夹在胳膊底下往门口走了。她已经走到门口了,手搭在门框边缘停了一下,偏头看了他们一眼——她看到那四张脸上的表情,跟她想象中差不多,有紧张,但更多的是亮。“下周一全院大会。”她推开门走了。
走廊上,林笑笑追出来。“师姐。”她喊住她。苏清月转过身来,站在走廊尽头的窗户前面,外面的天已经完全暗了。
“你最开始说‘我知道能做出来’——是因为你知道自己能调出参数?”林笑笑站在离她两步远的地方问。
苏清月站在窗前看着她。走廊的灯从她背后照过来,她的轮廓被那道光线勾了一圈亮边,声音不高不低地传过来:“不是。”
“那是什么?”
“是因为我知道你们不会中途跑掉。”
林笑笑站在走廊里没有说话。风从窗口挤进来,把她额前的碎发吹动了一下,她抬手拢了一下,手放下之后仍然站在那里。
苏清月往办公室方向走了几步。声音从她前面飘回来,已经被走廊的距离磨短了一些:“一个项目最重要的是人。人对了,结果迟早对。”她的脚步没有停,白大褂的下摆在走廊的光线下掠过了一扇又一扇门,消失在拐角。
林笑笑站在原地,看着那道背影消失在走廊尽头,从口袋里掏出手机,打开正义小分队群,打了一行字发了出去:“同志们,我师姐刚才说了一句让我想哭的话。”
秦墨秒回:“什么话?”
林笑笑打了又删,删了又打,最后把那句话原样发了出来:“她说‘人对了结果迟早对’。”
秦墨回了一排拥抱表情包。那排拥抱列在屏幕上,像一道简短的墙。
顾言深回了一个句号。
林笑笑看着那个句号,低头笑了。她认识他够久了,知道那个句号跟别人的句号不太一样——那是他的表达方式。他听到了,他同意,他自己也有同样的意思。他不需要多说,一个句号就够了。她把手机锁屏放进口袋里,走廊的灯光在她面前均匀地铺开着。她听见前面拐角传来一道脚步声,不重不轻,间隔均匀,是她熟悉的频率。她笑了笑,朝着那步声音的方向,一路小跑着追了过去。