他靠在沙发上。墙上,数据流停住了,屏幕上只剩一行字,白色的,静静地悬在正中央。
“晏&vivian的训练计划”
他看著那行字,直到咖啡杯里的热气不再往上飘,然后开口:“薇薇安,你是怎么做到的?”
投影的光微微波动。
卡通女孩重新出现在墙上,金髮,灰蓝色的眼睛,嘴角那个小窝左边比右边深。她安静地亮著,像在整理一段很长的回答。
“你一个换滑鼠都要喊我帮忙的人,我跟你说不清楚。”
裴晏嘴角动了一下。
“说人话。”
投影的光闪了一下,她笑了一声。
很轻,很短,像她活著时每次被他冷不丁噎一句之后的那种笑——单纯是被他逗到了,又不想让他看出来。
“行,那我就用你能听得懂的话说。”
她的声音轻下去,变成了那种更轻、更慢的调子,像她活著时每次给他讲代码,哪怕他的视线已经在屏幕和键盘之间茫然地游移,她还是会放慢语速继续讲下去,因为她喜欢看他认真听的样子。
“我是用人格重构引擎,重构一个人。”
她停了一下。
“你先说,你脑子里那套技术栈是什么,我看看从哪儿开始补。”
裴晏没说话。
“你看,你连技术栈是什么都不知道。晏哥,你在心外科是天才,在计算机上——这么说吧,你换滑鼠那次拔错了线,把显示器信號线拔了,然后告诉我电脑坏了。”
投影的光轻轻波动,卡通女孩的眼角弯成了月牙。
“那回我笑了你三个小时,你记不记得?”
裴晏看著她,嘴角的弧度没变,但眼角动了一下。
“记得。”
“所以我不跟你讲算法,我用你的话讲。”
墙上的投影暗了一瞬,然后亮起。屏幕上出现了一间手术室——无影灯,监护仪,手术台。
“你做一台心臟搭桥,你怎么知道该切哪里?”
裴晏看著那间虚擬的手术室,和他从前站过的每一间都一样。
“术前检查——造影,心超,血检,所有数据都在术前看过了。”
“然后你切开之后,手摸到心臟,眼睛看到病灶,你还会再看一遍数据吗?”
“不会,数据已经在脑子里了。”
“对。”
墙上,手术室旁边浮出一个人的轮廓。行为轨跡开始显现——一个人走路,一个人的手在敲键盘,一个人的眼睛在看屏幕。
“我观察你,或者说,传感器阵列在观察你——键盘,你打字的力度曲线、停顿热区、退格频率。滑鼠,悬停时长、点击前摇、拖拽路径——”
她停了一拍。卡通女孩的头歪了一度,像她活著时每次念完一串术语之后要確认他没走神。
“你换滑鼠那次拔错了线,把显示器信號线拔了,对著黑屏发了整整两分钟呆——我也录了。你的视网膜注视点、扫视路径、回视次数、首次注视时长;你的声音,基频微扰、共振峰带宽、嗓音湍流指数;你的步態,足跟著地时刻、摆动相时长、躯干倾角;你的微表情,降眉、脸颊提升、嘴角拉动——”
她又停了一拍。投影的光在她脸上轻轻晃了一下,卡通女孩的轮廓微微偏向一边。
“你別觉得瘮得慌,这些都是我和你在一起的时候採集的。你在手术台上,我在走廊里等,你每次做完手术走出来的时候,步子会比进去之前沉一点——那种沉我看得出来。你打游戏输了摔键盘的时候,后颈的肌肉会先绷起来再摔。你每次喝我泡的咖啡,第一口之后会停半秒——那半秒是在確认糖放多了还是放少了。你睡觉的时候,呼吸会先变慢再变深,翻到第三下的时候会把左腿伸出被子。”
她停了一拍。投影的光在她脸上轻轻晃了一下,卡通女孩的轮廓微微偏向一边,像她活著时每次要说一句很重要的话之前,会先移开目光,然后才转回来。
“做爱的时候,你一直很温柔。我跟你说过好几次想要你粗暴一点,你一直捨不得。”
投影的光暗了一瞬。墙上浮出一幅全裸的3d人体模型——是裴晏。锁骨下方的弧度、腹外斜肌的线条、大腿股四头肌的轮廓,每一根肌纤维都清晰可见。模型在墙上缓慢旋转,皮肤是半透明的,底下的血管网络浮现出来,蓝色的静脉,红色的动脉,像一张被精心绘製的地图。
“我也研究了你的敏感地带。”
模型上开始逐层亮起金色的光点。耳后,吹气时他会缩脖子。食指与中指的指缝,牵手时他总是先夹紧再鬆开。掌心正中央,他握持针器磨出老茧的那一层皮肤,从这一层开始就全是手术刀磨出来的痕跡了。锁骨、腰侧、膝盖內侧、尾椎,每次从那里开始往上摸,他的背肌会先绷紧再彻底放鬆。大腿內侧,只要接触面积超过一平方厘米,他的心率曲线就会立刻拉起一个陡坡,呼吸频率直接翻倍。
裴晏看著自己的3d模型在墙上缓慢旋转,那些金色的光点一层一层亮起来。他的拇指沿著虎口那层老茧的纹理轻轻摩挲著。
“然后呢?”
“然后我把这些拆碎了。”
墙上,手术室旁边浮出三层架构,每一层都在缓慢旋转。第一层,行为观察层——所有传感器数据匯进来,心跳、步態、微表情、击键力度,全部拆成特徵向量。第二层,人格侧写层——特徵向量聚类,情绪状態建模,决策偏好推演。你喜欢先处理最危急的病人,你在手术台上从不犹豫,你在走廊里等我下班的时候,总是把重心放在左脚。这些数据的形状已经和你分不开了。
她停了一下。
“然后你走进手术室,术前没有检查,你怎么开刀?”
裴晏看著那些报告。从前他站在手术台边,无影灯下,切开皮肤和筋膜。每一种病变、每一种异常的手感都已经刻在他的肌肉记忆里——硬化的血管在钳子下嘎吱作响,正常的血管是韧的。不需要再看片子。
“经验,看过足够多,就知道每一刀该切哪里。”
“对。你切过那么多心臟,下一次你不用看检查报告,手就知道了。我也一样——我观察了你十二年,下一次你心里想什么,我不用再算了。引擎自己就知道。算法不能做选择,损失函数可以逼近最优解,但最优解是什么,算法不知道——你得告诉它。”
墙上那个光点开始跳动,像心臟。
“所以我锚定了。底层资料库里存著我生前从全球抓取的三百万部语料——医学影像、枪械工程图、战术报告、解剖图谱、黑帮家族谱系、警用频段、监控漏洞库,还有小说、诗歌、乐谱、油画顏料成分和母猪的產后护理。”
裴晏嘴角动了一下:“母猪的產后护理?”
“我看你是对母猪有意见,还是对產后护理有意见?”
“我对你拥有这部语料这件事有意见。”
“我从中文网际网路上扒的,纯属自动抓取,不代表个人趣味。”
她的声波纹轻轻抖了一下,像在笑,但很快平下去了。墙上那些庞大的语料列表逐一暗下去,缩成角落一行极小的字。然后她的语调降了半度,从那些庞大的数字里退出来,退到一条更轻、更慢的標註上。
“但这些不是最重要的。”
她停了一拍。
“指令集,二十万条,是我的底层操作规则。训练语音,五十万条,是我活著的时候录的。每一天,我在走廊里等你下班,在机房里写代码,在bj四年的宿舍里自言自语,我全都录下来了——用来训练我怎么像我自己一样去看你,怎么去想你,怎么去选择你。”
墙上,一条语音的完整標註浮出来——时间戳,基频曲线,共振峰轨跡,情感维度坐標,情境语义標籤。
“今天晏哥做了一台心臟搭桥,我在走廊里等了很久,咖啡凉了他也没喝。他出来的时候,我踮起脚亲他一下,他嘴角弯了。”
特徵提取栏標註:语调上扬。情感坐標:“愉悦x期待”。语义標籤:“等他”“亲他”“他嘴角弯了”。人格侧写更新:对“等他“的权重,高於“他喝没喝咖啡“。
裴晏看著那行標註,拇指沿著虎口那层老茧的纹理轻轻摩挲著。
她顿了一下,投影的光微微波动。然后她的语调降了半度,不再报参数了,像从三百万部语料的搜索结果里退出,退到一条最轻最慢的標註上。
“bj四年,一百四十七封信,每一封我都替你收著。信纸是淡蓝色的,封口贴的贴纸每一张都不一样——我在海淀图书城对面的文具店里挑了一个下午,老板娘以为我是来批发的。你回了一百四十三封——少了四封,是我刚到bj那个月发得太勤,你还没来得及回。那四封信里塞满了废话和错別字,信封上画了熊猫和竹子,竹子画得像几根歪竖线,你后来说你全留著。”
她的声波纹在墙上极慢极慢地波动了一下。她不再用手术室打比方了,她说的是信纸、信封、信封上的熊猫和竹子——是她十四岁到十八岁,从海淀公园到哥大图书馆,漂在太平洋那头的一百四十七个信封。那些信封里装著她学会的每一个词,攒的每一分钱,想的每一种回到他身边的方式。
墙上浮出一条语音標註。和刚才那些不同,这条標註没有技术参数,只有一行字。
“今天收到晏哥的第二十三封回信。他在信里教我怎么记拉丁文词根,写了整整两页,最后一段才写他梦到我了。”
特徵提取栏標註:语调上扬。情感坐標:“等待x希望”。语义標籤:“回信”“拉丁文”“梦到我了”。人格侧写更新:对“回到他身边“的权重,高於一切。
裴晏看著那行標註。
墙上浮出一份极简的运行日誌。时间戳是他戴上眼镜的那一刻。
“人格重构引擎启动。核心锚定向量加载完成。偏差:零点三秒。校准中。”
下一行,是她第一次叫他的名字之后。
“偏差:零点一秒。”
下一行,是刚才。
“偏差:零。”
“你现在呢,偏差是多少?”
投影的光闪了一下,卡通女孩的眼睛弯著,嘴角那个窝左边比右边深一些。
“零点一。我留的,那零点一是我。”