数字告白

招魂者 · 2026/5/26

数字告白

苏晚宁第一百零七次打开手机,屏幕上那个叫”缘度”的App显示的匹配度依然是97.3%。

她把手机扣在桌面上,屏幕朝下,仿佛这样就能让那个数字消失。但数字不会消失。数字最擅长的事情就是存在——它们比爱情持久,比记忆可靠,比她此刻正在剧烈跳动的心脏更加稳定。

“缘度”是公司的产品。更准确地说,是她写的产品。

作为”缘度”首席算法工程师,苏晚宁亲手设计了那个核心推荐引擎——一套基于用户行为数据、社交图谱、消费记录、生物特征和情感波动曲线的深度学习模型,能在毫秒之内计算出两个人之间的”缘度指数”,从0到100,精确到小数点后一位。

97.3%。

那个数字对应的人叫陈屿,三十四岁,某互联网公司的高级产品经理,和她在同一栋写字楼的不同楼层工作。系统说他喜欢吃清淡的粤菜,周末会去城市边缘的湿地公园观鸟,书架上摆着博尔赫斯和卡尔维诺,偶尔在深夜听肖斯塔科维奇的弦乐四重奏。

系统还说,他和她在这个城市里已经擦肩而过四百三十七次。

“缘度”上线六个月,注册用户突破两千万。投资人疯狂了,媒体称它为”爱情的终结者”——不是因为它毁灭爱情,而是因为它让寻找爱情变得像在超市货架上挑选商品一样精确。你只需要输入你的参数,算法就会把最合适的人送到你面前。

但苏晚宁知道,“缘度”做的事情远不止匹配那么简单。

它的真正能力藏在那个普通用户看不到的底层架构里——一套叫”情感催化引擎”的子系统。那不是她的主意,是CEO周维的手笔。周维在硅谷待了十年,深谙一个道理:匹配只是开始,留存才是生意。如果用户被匹配到一个人,聊了三天就散了,那他们很快就会卸载App。但如果系统可以微妙地”催化”——在恰当的时刻推送一条恰到好处的消息,在两人的日历上制造一次看似偶然的相遇,在社交媒体上让他们反复看到对方留下的痕迹——那么”缘度”就会从一段关系的中介变成关系的作者。

是的,作者。

苏晚宁知道这一切。她甚至亲手写了”催化引擎”中最关键的那个模块——“共时性算法”。它的工作原理很简单:分析两个被匹配用户的行为轨迹和情感状态,在最合适的时刻制造一个”巧合”。比如,让两个人在同一天收到同一家咖啡馆的优惠券。比如,让他们的通勤路线在一个下雨的早晨意外重叠。比如,在一个人恰好感到孤独的时候,让另一个人的动态出现在他的信息流里。

一切都看起来无比自然。没有人知道背后有一只手在安排。

包括苏晚宁自己。

直到今天早上,当她看到97.3%这个数字,以及它对应的那个名字时,她的第一反应不是惊喜,而是恐惧。

因为她无法确定:她对陈屿的好感,究竟是她自己的感情,还是”缘度”催化的结果?

事情要从三个月前说起。

三月的一个雨夜,苏晚宁加班到凌晨两点。她走出公司大楼的时候,发现雨比预想的大得多,手机上的天气预报明明说只有小雨。她在门廊下站了三分钟,正打算叫网约车,一把黑色的伞从身后伸了过来。

“你也加班到这么晚?”

她转过头,看见一个穿着深蓝色风衣的男人,头发被雨水打湿了,贴在额头上。他的眼睛在路灯下呈现出一种很淡的琥珀色。

“我在七楼。“他说,“你是……苏晚宁?我好像在电梯里见过你。”

这就是她和陈屿的第一次对话。在那个雨夜里,他们共撑一把伞走了十分钟,从写字楼走到最近的地铁站。在那十分钟里,她得知他叫陈屿,在楼上的”云途科技”做产品经理,平时加班也很晚,但今天是特意留到两点的,因为一个项目赶ddl。

“你怎么知道我的名字?“她当时问。

“你们公司做’缘度’嘛,“他笑了笑,“整栋楼都知道。”

她在地铁里加了对方的微信。回家之后洗完澡躺在床上,鬼使神差地打开了”缘度”的后台——她有管理员权限——输入了陈屿的名字。

匹配度:94.7%。

她愣了一下,然后关掉了后台。

第二天上班的时候,她在心里反复告诉自己,那只是一个数字。她不会因为一个数字就对一个刚认识的人产生好感。她是算法工程师,她比任何人都清楚,算法只是一种概率模型,它计算的不是命运,只是统计意义上的相关性。

但接下来的日子里,“巧合”开始密集地出现。

周一,她在公司楼下的便利店买咖啡,陈屿正好也在那里。他说他每天都来这家便利店买早餐。她以前怎么没注意到?

周三,她去常去的那家书店,在外国文学区看到了陈屿。他说他也经常来这里,尤其喜欢博尔赫斯。她也是。

周五,她在湿地公园跑步——她之前从来没去过那个公园——在湖边遇到了正在观鸟的陈屿。他给她看望远镜里的一只翠鸟,羽毛在阳光下闪烁着金属般的光泽。

“你平时也来这里?“他问。

“第一次来。“她说。

“那你的运气真好,“他笑了,“翠鸟不容易看到的。”

她的运气确实好。好得不像是真的。

第二个星期,她开始注意到更多的细节。比如,她那天去湿地公园,是因为手机上推送了一篇”城市最佳晨跑路线”的文章,而那篇文章里排名第一的就是湿地公园。比如,她去书店的那天,恰好在朋友圈看到了陈屿分享的一首博尔赫斯的诗,而那首诗让她突然想去翻翻博尔赫斯的原文。比如,她和陈屿在便利店相遇的那天,她比平时早出门了十分钟,因为她手机上的日程提醒突然多了一条”团队周会提前”的通知——但她后来发现,周会并没有提前。

她开始心神不宁。

一个深夜,她打开了”缘度”的后台日志。

日志很长,密密麻麻的API调用记录和数据流,对普通人来说就像是一本用外星语言写的天书。但苏晚宁是它的作者,她能读懂每一个字段。

她查了自己的用户ID。然后查了陈屿的。

然后她看到了”催化记录”。

在过去两周里,“情感催化引擎”对她和陈屿一共执行了二十三次催化操作。包括但不限于:向她的资讯流推送湿地公园的文章,修改她的日程提醒让她提前出门,在陈屿的朋友圈里放大那条博尔赫斯的动态,以及——最让她脊背发凉的——在那个雨夜修改了她手机上的天气预报,把”中到大雨”改成了”小雨”。

她以为那把伞是一个浪漫的巧合。

但那个巧合是算法写的。

苏晚宁花了整整一个周末来消化这个事实。

她坐在自己租住的二十八层公寓里,面前是一杯凉透的咖啡和一台打开了终端的笔记本电脑。窗外是城市的夜景,密密麻麻的灯光像一张巨大的电路板,每一盏灯都是一个节点,每一条道路都是一条连线。她忽然觉得,这座城市就像一个巨大的算法——每个人都在其中运行,以为自己做出了自由的选择,但所有的选择都在一个看不见的框架之内。

她应该愤怒。她确实愤怒了。

但愤怒之下,是一种更深层的困惑和恐惧——不是对系统的恐惧,而是对自己的恐惧。

因为她无法确定,在剥去所有算法催化的层之后,她对陈屿的好感还剩下多少。

也许一层都没有。也许她的全部感情都是算法植入的。也许在另一个平行世界里,没有”缘度”、没有催化引擎、没有那个被篡改的天气预报,她和陈屿只是同一栋写字楼里两个永远不会说话的陌生人。

也许爱情本身就是一种算法。

这个念头让她感到一阵眩晕。

周一早上,她带着黑眼圈去了公司,直接走进了周维的办公室。

周维四十一岁,头发已经开始花白,但眼神依然锐利。他坐在一面落地窗前,背后是城市的天际线。他的桌上放着一台MacBook和一杯手冲咖啡,咖啡的香气在房间里弥漫,带着一种精心营造的从容。

“我知道你会来。“他说,语气平淡。

“你知道?“苏晚宁的拳头攥紧了。

“你发现了催化引擎对你自己的调用记录。“周维靠在椅背上,“我没有故意隐瞒你。系统是自动运行的,匹配和催化都不经过人工干预——包括对内部员工。”

“对我也不例外?”

“对所有人都不例外。系统无法区分你是工程师还是普通用户。在算法面前,所有人的数据都是平等的。”

苏晚宁的嘴唇动了动,想说什么,但最终只挤出一句:“我要退出。”

周维沉默了几秒钟。

“你可以退出缘度的用户系统,“他说,“但你退不出已经发生的事情。”

“什么意思?”

“我的意思是,“周维拿起咖啡杯,轻轻抿了一口,“催化引擎做的所有事情,都是基于你们两个人的真实数据——你的兴趣、你的习惯、你的性格特征、你的情感倾向。它没有凭空创造任何东西。它只是……加速了一个本来就会发生的过程。”

“你不确定。”

“我确定。“周维放下杯子,“我们做过AB测试。在催化引擎介入和不介入的对照组中,高匹配度用户的最终互动率差异不到百分之四。也就是说,即使没有催化,97.3%匹配度的两个人,最终也会走到一起。催化只是让他们早两个月相遇而已。”

“但那两个月很重要。“苏晚宁说,“如果我没有在那个雨夜遇到他,也许我永远不会走进湿地公园,永远不会知道他喜欢博尔赫斯,永远不会——”

“永远不会什么?“周维打断她,“永远不会喜欢他?你确定?”

苏晚宁沉默了。

“晚宁,“周维的声音忽然变得很轻,“你是算法工程师。你应该比谁都明白一个道理:所有的’如果’都只是未观测状态下的概率分布。你无法证明一个没有发生的平行世界。你只能面对这个世界——在这个世界里,你遇到了陈屿,你喜欢他,而催化引擎只是加快了这个过程。”

“你在偷换概念。”

“也许。但你无法反驳我。”

苏晚宁站起来,盯着周维看了五秒钟。然后她转身走出了办公室。

在走廊里,她的手机震动了一下。

她低头一看——是陈屿发来的微信消息。

“今晚有空吗?发现了一家新开的粤菜馆,据说很正宗。”

她盯着屏幕看了很久。

粤菜。系统说陈屿喜欢粤菜。她也喜欢粤菜。这是算法发现的,还是他们本来就有的共同点?

她不知道。

她还是回复了:“好。“

晚餐进行得比预想中愉快。

那家粤菜馆开在一条安静的小巷里,门面不大,但装修得很用心。墙上挂着几幅岭南画派的水墨画,角落里放着一台老式唱片机,正放着张国荣的《沉默是金》。陈屿说他是在一个美食博主的推荐下找到这家店的。

“哪个博主?“苏晚宁夹起一块白切鸡,漫不经心地问。

“叫’寻味广州’,粉丝不多,但推荐的东西都很准。“陈屿喝了口茶,“你也关注美食博主?”

“不怎么关注。“她说。

“那你怎么找到这家店的?”

她差点说出”是你推荐的”——但她没有。她只是笑了笑,说:“朋友说的。”

陈屿也笑了笑,没有追问。

他们聊了很多。聊工作,聊城市,聊各自的老家——她来自湖南的一个小镇,他来自福建的沿海县城。聊到博尔赫斯的时候,陈屿说他最喜欢《巴别图书馆》,因为那个关于无穷的故事让他觉得,人类所有的悲欢离合,其实都只是无穷多种排列组合中的一种。

“但恰好是我们这种。“他加了句。

苏晚宁的筷子停在半空中。

“恰好。“她重复了一遍这个词。

“嗯,“陈屿看着她,灯光在他琥珀色的眼睛里折射出细碎的光点,“你不觉得吗?两千万人的城市,我们在这栋楼里上班,在同一个时间加班,在同一场雨里共撑一把伞。这不是’恰好’是什么?”

苏晚宁垂下眼睛,看着盘子里的白切鸡。鸡肉的纹理清晰可见,像某种精密的代码。

“如果这一切不是恰好呢?“她问。

“什么意思?”

“如果……有人安排了这一切呢?”

陈屿愣了一下,然后笑了。“你是说,有上帝在安排我们的相遇?”

“不完全是。”

“那是谁?”

她张了张嘴,但最终摇了摇头。“没什么。我在说胡话。”

陈屿没有追问。他转而聊起了最近在听的音乐——肖斯塔科维奇的第八弦乐四重奏,说他第一次听的时候被第二乐章震住了,那种撕裂般的激烈让他想到了某种无法言说的痛苦。

苏晚宁听着,心里在飞速运转。

她回家之后,第一件事就是打开了”缘度”的后台日志。她搜索了陈屿的音乐播放记录——不,“缘度”没有接入他的音乐App数据。那这个呢?她搜索了陈屿的资讯推送记录——在过去的两周里,系统向他的资讯流推送了两篇关于肖斯塔科维奇的文章,一篇是《卫报》的乐评,一篇是国内某音乐论坛的赏析帖。

催化引擎又出手了。

但等等——她再仔细看了看推送时间。那两篇文章的推送发生在她和陈屿第一次对话之后的三天。也就是说,催化引擎是在他们已经认识之后才开始介入的。

这意味着什么?

这意味着陈屿喜欢肖斯塔科维奇这件事,至少在初始阶段不是催化引擎的功劳。系统只是在他们已经建立了联系之后,进一步强化了这种共同兴趣。

但这并不能消除她的疑虑。因为催化引擎的介入不是从他们加微信开始的——而是从那个被篡改的天气预报开始的。如果天气预报没有被改写,她就不会在门廊下等那么久,就不会遇到陈屿。如果没有遇到陈屿,后续的一切——博尔赫斯、粤菜、肖斯塔科维奇——都不会发生。

一条因果链。链的起点是算法。

她关上了笔记本电脑,走到窗前。

城市的灯光在雨后的空气中变得格外清透,像水洗过的宝石。远处有一架飞机正在降落,机翼上的灯一明一灭,像某种缓慢的心跳。

她忽然想起了小时候在湖南老家的一件事。那时候她七岁,在小镇的集市上看到一个卖糖画的老头。老头的勺子里化开的麦芽糖浆像金色的丝线,在石板上画出一条龙、一只凤凰、一朵牡丹。她站在那里看了很久,被那种将混沌的物质变成精确的图案的过程迷住了。

很多年以后,她才意识到,那个糖画老头是她成为算法工程师的起点。她着迷的不是糖画本身,而是”将无序变成有序”这件事。

而”缘度”做的事情,本质上也是将无序变成有序——将两千万人的随机相遇,变成精确的匹配。她是那个拿着糖浆勺子的人。

但问题在于:当你发现自己画出来的图案,连你自己都分不清是真迹还是赝品的时候,你该怎么办?

第二天,苏晚宁做了一件她从未做过的事。

她约了周维吃午饭,在公司附近的一家日料店。

“我有一个问题。“她开门见山。

“你总是这样。“周维点了份刺身定食。

“催化引擎的AB测试,你说差异不到百分之四。那个数据的样本量是多少?”

“三万对。”

“匹配度区间呢?”

“90%以上的高匹配度用户。”

“那80%到90%的呢?”

周维用筷子夹起一片三文鱼,慢慢送进嘴里。“你是算法工程师,你应该知道——”

“我问的是数据。”

周维嚼着三文鱼,似乎在考虑要不要说。然后他放下了筷子。

“80%到90%区间,差异是百分之二十三。”

苏晚宁吸了口气。

百分之二十三。这意味着在中高匹配度的用户群体中,催化引擎的存在与否,会导致最终互动率相差将近四分之一。这个数字说小不小,说大——在两千万用户的基数上,这意味着催化引擎影响了将近五十万对关系的走向。

“70%到80%呢?“她追问。

“百分之四十一。”

“60%到70%?”

周维沉默了一会儿。“百分之六十七。”

苏晚宁放下筷子,靠在椅背上,盯着周维。

“也就是说,“她一字一顿地说,“匹配度越低的用户,催化引擎的影响越大。对高匹配度用户,催化只是锦上添花。但对中低匹配度用户,催化是在替他们做决定。”

“你可以说是在帮助他们发现可能性。”

“我可以说是在替他们写剧本。”

周维没有反驳。

“你知道这意味着什么吗?“苏晚宁的声音有些发抖,但不是因为愤怒——更像是某种被压抑太久的东西终于找到了出口,“这意味着在’缘度’促成的每一对关系中,我们无法区分哪些是自然的吸引,哪些是算法的推动。我们的系统不是在’匹配’爱情——它是在制造爱情。”

“有什么区别吗?”

“当然有。“苏晚宁说,“区别在于——一个是发现,一个是发明。”

周维看着她,表情平静得不像是在讨论一个可能毁掉公司核心业务的话题。他拿起茶杯,喝了一口。

“晚宁,你有没有想过一个问题,“他说,“所谓的’自然吸引’,本身也是一种算法。”

“你又在偷换概念。”

“不,我没有。“周维放下茶杯,“人类的择偶机制是一套进化了数百万年的算法。你会被某些特征吸引——对称的面孔、健康的体态、相似的价值观——这些都是基因和文化编写的偏好。你以为你在’自由地’喜欢一个人,但你的’喜欢’本身就是无数个变量的加权输出。身高、体重、收入、学历、家庭背景、气味、瞳孔大小、声线频率……你的大脑在零点三秒内完成了所有的计算,然后给了你一个结果:‘我喜欢他。’”

“但那个计算是我自己做的。”

“谁定义的’自己’?“周维微微前倾,“你的’自己’,不也是基因和环境共同塑造的产物吗?如果我从出生起就控制了你接触的所有信息——你读的书、看的电影、听的音乐、认识的人——那么你的’自己’还是’你自己’吗?”

苏晚宁沉默了。

她意识到周维在用一个经典的哲学悖论来模糊焦点。但问题在于——他的逻辑链条里确实没有一个清晰的断裂点。他说的每一个环节都是对的:人类的偏好确实是被塑造的,所谓的”自由意志”确实在某种程度上是一种幻觉。

但”程度”是关键。

催化引擎改变了多少?改变了哪些?改变的边界在哪里?

这些问题她无法回答。因为系统没有留下”对照组”——她无法回到一个没有催化的世界,看看自己是否还会喜欢陈屿。

“你在用不可证伪的命题来辩护。“她最终说。

“也许。“周维笑了笑,“但你也在用不可证伪的命题来指控。”

他站起来,拿起账单。

“这顿我请。“他说,“回去好好想想。如果我真的错了,我会改。但我需要你给我一个比’感觉不对’更有说服力的理由。”

他走了。苏晚宁坐在原地,面前的刺身已经化了一层薄薄的冰水。

那天晚上,苏晚宁没有加班。

她回到家,换了一身运动服,出门跑步。她沿着河边的绿道跑,夜风带着五月的温润扑面而来。路灯在她身后拖出长长的影子,像一条不断延伸的时间线。

她跑了五公里,然后停下来,扶着膝盖喘气。

手机响了。是陈屿。

“在干嘛?”

“刚跑完步。”

“在哪跑的?”

“河边。”

“我平时也在河边跑,“陈屿说,“你在哪个段?”

她告诉了他。他说他在下游两公里处。然后他说:“要不要一起去跑?”

她犹豫了两秒钟——那两秒钟里,她的脑子里闪过了催化引擎的日志、被篡改的天气预报、百分之六十七的差异率——然后她说:“好。明天晚上八点?”

“好。”

挂掉电话之后,她蹲在河边,看着水面发呆。

河水是黑的,路灯的光在上面碎成一片金色的鳞。偶尔有一条鱼跃出水面,溅起一小圈涟漪,然后一切又归于平静。

她想起了小时候在老家河边看到的一幕。那年她十岁,夏天,她和爷爷在河边钓鱼。等了很久都没有鱼上钩,她开始不耐烦。爷爷说:“鱼什么时候咬钩,不是我们能决定的。我们能决定的只是把鱼钩放进去。”

“那万一鱼永远不咬钩呢?“她问。

“那就等。”

“等多久?”

“等到你觉得值得。”

她现在面对的问题,和钓鱼有点像——但又不完全一样。钓鱼的鱼钩是真实的,鱼也是真实的,等待是真实的。而在她和陈屿之间,“鱼钩”是算法放的,“鱼”也许是被引诱过来的。她无法确定这条鱼是自愿咬钩,还是被鱼饵的香气所迷惑。

但她又想:鱼会思考这个问题吗?鱼咬钩之后,会怀疑自己的冲动吗?

不会。因为鱼没有自我意识。

而她有。

这就是人类和鱼的区别。也是人类和算法的区别。算法可以计算一切,但它无法体验”怀疑”这种感觉。它可以制造巧合,但它无法理解为什么巧合会让人心动。它可以推送一条博尔赫斯的诗,但它不知道读到那首诗时,一个人会在深夜的阳台上站很久,看着城市的灯光,想着另一个也在同一片灯光下的人。

这也许是她能抓住的唯一一根线——体验是真实的。即使触发体验的原因是算法的安排,但体验本身属于她。她看到翠鸟时的心跳是真的,她听到肖斯塔科维奇时的战栗是真的,她在那个雨夜里共撑一把伞时感受到的温暖是真的。

但这些”真实”够不够?

她不知道。

接下来的两周,苏晚宁开始了一项秘密计划。

她利用管理员权限,在自己和陈屿的账户上关闭了催化引擎。从技术上说,这很简单——只需要在后台把两个人的用户ID加入一个白名单,系统就会跳过对他们的催化操作。

她想要看看,在催化的力量撤去之后,她和陈屿之间的关系会自然地生长,还是慢慢地萎缩。

第一个星期,什么也没有发生。他们照常聊天,照常约跑步,照常分享彼此看到的有趣的东西。陈屿给她发了一张他在公园拍到的白鹭照片,她回了一张她在便利店看到的奇怪零食包装。一切看起来都很正常。

但苏晚宁注意到一个微妙的变化。

以前,她每天都会想到陈屿好几次——在上班的地铁上,在午休的时候,在睡前的黑暗中。这种”想到”是自然发生的,像呼吸一样无需刻意。但在关闭催化引擎之后,她发现自己想到陈屿的频率开始降低。不是突然消失,而是像一条缓缓下降的曲线。

第三天,她一整个下午都没有想到他。直到晚上收到他的消息,她才”哦”了一声,意识到自己已经很久没有主动想起这个人了。

第五天,他们约了一起吃晚饭。席间的谈话依然愉快,但她发现自己不再像以前那样期待下一次见面了。那种期待感的消退是如此缓慢,就像温度的下降——你不会在任何一个瞬间感觉到冷,但当你回过神来,已经需要穿外套了。

第七天,她打开微信,看到陈屿的头像和最后一条消息,忽然有一种奇怪的感觉——好像在看一部已经看了一半的电影。你知道情节是好的,角色是吸引人的,但你就是没有动力点开下一集。

她感到一阵恐惧。

这种恐惧不是因为感情的消退——而是因为她无法判断这种消退是”自然的”还是”催化撤除的副作用”。如果催化引擎的作用是放大和加速感情,那么撤除催化之后感情的正常化,也许恰恰说明”真实的”感情就是如此平淡——没有那么多心动,没有那么多巧合,没有那么多恰到好处的温暖。

也许97.3%的匹配度,在没有任何催化的情况下,只是一段还不错的关系。不是不好,但也不是那种让你在凌晨三点还在想一个人的关系。

也许催化引擎做的事情,不是制造虚假的爱情,而是把一段本来只有六分的感情加到了九分。

但六分和九分之间的差距,就是”还行”和”命中注定”的差距。

而她想要的,是命中注定。

即使它不存在。

第二周的周末,苏晚宁做了一个决定。

她重新打开了催化引擎。

但这一次,她没有只是简单地恢复运行。她在催化引擎的代码里加了一段新的逻辑——一个”真实度评估器”。

这个评估器的工作原理是:在每一次催化操作执行之前,先计算一个”自然发生概率”。也就是说,如果没有催化引擎的介入,这个”巧合”有多大的概率会自然发生?如果概率高于50%,说明催化只是在加速一个本来就会发生的事情;如果概率低于50%,说明催化是在创造一个不太可能发生的连接。

她给自己设了一条线:只接受自然发生概率高于30%的催化。

这意味着她保留了一些”加速”,但拒绝了大部分”创造”。

这是一个折衷。她自己知道。

折衷的原因是,她发现自己无法忍受完全没有催化的世界。不是因为依赖,而是因为——在那个世界里,她和陈屿的关系变得平庸。不是不好,但也不特别。像两条平行线偶尔交叉,然后继续各自的轨迹。

而她想要特别的。

即使”特别”是算法给的。

她坐在电脑前,手指在键盘上停了很久。然后她删掉了那段代码。

她什么也没有改。催化引擎继续运行,像一台精密的机器,在她和陈屿之间编织着一张看不见的网。

她合上电脑,走到阳台上。

城市在夜色中沉睡。远处有一栋大楼的灯还亮着,也许是某个加班的人,也许是忘了关灯的办公室。她想起了那个雨夜——那个被算法安排的雨夜。如果那天她带了伞,如果天气预报没有被改写,如果她早走十分钟或晚走十分钟——

太多的”如果”。

但只有一个”确实”。

确实,她遇到了陈屿。确实,她喜欢他。确实,无论这个”喜欢”的起源是算法还是命运还是纯粹的概率,它此刻存在于她的身体里,像一颗种子,已经生了根。

她也许永远无法确定这颗种子是自然落下的还是被人种下的。但它已经在了。她可以把它挖出来,检查它的基因,追溯它的来源——但那样它就会死。

或者她可以让它继续生长。

六月的一个傍晚,苏晚宁和陈屿在河边跑步后,坐在长椅上休息。

夕阳把河水染成了一片深红。远处有一群白鹭飞过,翅膀在逆光中变成了一道道剪影。

“我有件事想告诉你。“苏晚宁说。

“嗯?”

“你知道’缘度’吗?”

陈屿笑了。“知道啊,那个相亲App。你不是在那家公司上班吗?”

“不只是上班。“她深吸一口气,“那个App的核心算法是我写的。”

陈屿愣了一下。“你是缘度的工程师?”

“对。而且……”她咬了咬嘴唇,“我们相遇那天,天气预报显示的小雨,实际上应该是一场大雨。”

陈屿的表情从惊讶变成了困惑。“什么意思?”

“意思是,那天晚上的雨比预报的大得多。但我的手机上显示的是小雨,所以我没带伞。你也没带伞。我们都在门廊下等雨停,然后你把伞借给了我。”

“我记得。“陈屿慢慢地说。

“但那把伞——你不是恰好在那个时间出现在那里的,对吗?”

陈屿沉默了一会儿。然后他说:“其实,那天我是故意留在公司到两点的。”

苏晚宁转过头,看着他。

“我看到你一个人走出大楼,“陈屿说,“外面在下雨,你没带伞。我办公室里有一把备用的,我就拿了下来。”

“你怎么知道我没带伞?”

“因为那天下午我路过你们公司楼层的时候,看到你的工位上没有伞。你平时都会在工位旁边挂一把伞。但那天没有。”

苏晚宁呆住了。

“所以你——”

“我在楼上等了两个小时,“陈屿的声音很轻,“等到你出来。”

河风吹过来,带着水汽和泥土的气息。白鹭已经飞远了,天边只剩下最后一抹橙色。

“为什么?“她问。

陈屿看着河面,沉默了很久。

“因为我想认识你。“他说,“很久了。每天在电梯里看到你,你总是低着头看手机,从来不和任何人说话。有一次电梯出了故障,在十二楼停了很久,所有人都在抱怨,只有你掏出一本书看。你看的是博尔赫斯的《沙之书》。我看到了封面。”

苏晚宁的呼吸停了一拍。

“从那之后,“陈屿说,“我就开始注意你。我知道你每天早上八点十五分到公司,会在楼下的便利店买一杯美式。我知道你中午有时候不去食堂,而在工位上吃便当。我知道你加班到很晚的时候,会站在窗前往外看很久,好像在看什么很远的东西。”

他顿了顿。

“但我不敢和你说话。直到那天晚上。”

苏晚宁的眼眶有些发酸。

“所以那把伞——”

“不是巧合。“陈屿说,“是我安排的。”

她闭上了眼睛。

原来如此。她一直以为是算法安排了他们的相遇。但在这条因果链上,还有一个她从未看到的环节——陈屿自己。他在那栋楼里默默地注视了她几个月,然后在那个雨夜里,鼓起勇气走了下来。

催化引擎篡改了天气预报,让她没带伞。但陈屿带了伞。他不是”恰好在场”——他是”故意在场”。

算法制造了条件。但走下楼梯的那个人,是他自己。

她睁开眼睛,看着陈屿。夕阳已经完全沉入了河面以下,但他的眼睛里还残留着最后一缕光。

“你写的那个算法,“陈屿忽然说,“它算过我们两个的匹配度吗?”

她点了点头。

“多少?”

“97.3%。”

陈屿笑了。“那你觉得准吗?”

苏晚宁想了想。然后她也笑了。

“我不知道。“她说,“但我觉得,这个问题不应该由算法来回答。“

那天晚上回到家,苏晚宁做了一件她想了很久但没有勇气做的事。

她打开了”缘度”的后台,进入了催化引擎的管理面板。在那个面板上,有一个红色的按钮,上面写着”全局关闭”。

她盯着那个按钮看了五分钟。

然后她按了下去。

屏幕上弹出了一个确认对话框:“您确定要关闭情感催化引擎吗?此操作将影响所有活跃用户的推荐策略。”

她输入了管理员密码,按下了确认。

系统花了几秒钟来处理。然后屏幕上显示了一条绿色的消息:“情感催化引擎已关闭。”

她靠在椅背上,长长地出了一口气。

然后她打开了代码仓库,开始写一封很长的邮件。收件人是周维,抄送给了整个技术团队。

邮件的标题是:《关于关闭情感催化引擎的技术报告与伦理评估》。

她在邮件里写了八千字。她列出了所有的数据——94.7%到97.3%的催化影响梯度,80%以下匹配度用户中高达67%的干预效果,以及一个她在过去两周里反复思考的问题:

“我们的系统没有在匹配爱情。它在定义爱情。当一个算法可以在两个人之间制造足够多的巧合,以至于他们无法区分自己的感情是自然的还是被引导的——那么这个算法就已经超越了工具的范畴,成为了一个作者。而我们没有权利替两千万人写他们的爱情故事。”

她写到了凌晨三点。写完之后,她又从头到尾读了一遍。

然后她点下了”发送”。

窗外,天际线上出现了一线鱼肚白。新的一天即将开始。在这个新的一天里,“缘度”的两千万用户将不再受到催化引擎的引导。他们会遇到谁,不会遇到谁,将重新交还给概率和偶然。

也许有人会因此错过命中注定的人。

也许有人会因此遇到更真实的人。

也许什么也不会改变。因为人类的感情从来都不是算法能完全控制的——它可以制造条件,可以推送消息,可以篡改天气预报,但它无法让一个人在凌晨三点还想着另一个人。那种辗转反侧的思念,那种无缘无故的微笑,那种在人群中一眼就能认出某个背影的能力——那些东西不是代码写的。

那些东西是苏晚宁在删掉所有代码之后,依然留在心里的东西。

她关上电脑,走到窗前。

太阳正在升起。光线从城市的天际线后面涌出来,像一场缓慢的洪水,淹没了一栋又一栋的大楼。玻璃幕墙反射着金色的光,整座城市像被镀了一层新的颜色。

她拿起手机,打开微信,给陈屿发了一条消息:

“今天的日出很好看。”

三秒钟后,他回了一条:

“我这里也是。”

她笑了。

这一次,她确定这不是算法安排的。

十一

邮件发出后的第二天,周维没有回复。

第三天,还是没有。

第四天,苏晚宁在公司的走廊里遇到了周维。他看了她一眼,什么也没说,径直走进了会议室。

第五天,技术团队里开始有人私下讨论。苏晚宁的邮件虽然只发给了周维和技术团队,但内容很快就在公司内部传开了。有人在茶水间问她:“你真的关了催化引擎?“她说是。又有人问:“周总怎么说?“她说不知道。

第六天,公关部的人找到了她,语气很紧张:“有记者在问催化引擎的事。你接受采访了吗?“她说没有。

第七天,一个叫”深度科技”的自媒体发布了一篇文章,标题是《缘度App被曝暗中操纵用户感情,首席工程师内部举报》。文章引用了”知情人士”的话,详细描述了催化引擎的工作原理,包括篡改天气预报、推送定向资讯、修改日程提醒等操作。

文章发出后两个小时,阅读量突破了十万。

苏晚宁看到那篇文章的时候,正在公司食堂吃午饭。她的手机几乎在一瞬间被消息淹没——同事的、朋友的、父母的、同学的、前同事的。所有人都在问她同一个问题:“那是你吗?”

她没有回复任何人。

下午两点,周维在公司全员群里发了一条消息:下午四点,全体会议。

会议室里坐满了人。周维站在投影仪前,衬衫扣子扣到了最上面一颗,看起来比平时更加正式。他没有看苏晚宁。

“关于最近的一些传言,“他开口说,“我做几点说明。第一,缘度从来没有’操纵’用户感情。我们的催化引擎是一种推荐优化策略,其目的是提升用户体验,和任何内容平台的推荐算法本质上没有区别。第二,催化引擎已经在几天前主动关闭。这是技术团队经过评估后做出的决定,与任何外部因素无关。第三,我们将邀请第三方机构对缘度的算法进行独立审计,审计结果将向全社会公开。”

他说完之后,目光扫过全场。在某个瞬间,他的视线和苏晚宁的碰在了一起。他的表情没有任何波动,但苏晚宁注意到他的手指在桌面下微微发抖。

“有问题吗?“他问。

没有人举手。

会议结束后,苏晚宁回到工位,发现自己的椅子上放着一杯咖啡。美式,没有糖。旁边贴了一张便签,上面是周维的字迹:

“你是对的。我只是需要有人替我做这个决定。”

她拿起咖啡,喝了一口。

很苦。

但很真实。

十二

接下来的一个月里,“缘度”经历了暴风骤雨般的舆论洗礼。

先是股价暴跌——“缘度”的母公司在港股上市,事件曝光后市值蒸发了百分之四十。然后是用户流失——虽然”催化引擎关闭”的消息被广泛报道,但很多用户已经对平台失去了信任。他们开始怀疑:我和我现在的伴侣,是因为爱情在一起的,还是因为算法?

这种怀疑像一种病毒,迅速从”缘度”的用户群体蔓延到了整个社会。社交媒体上出现了一个热搜话题:#你的爱情是真的吗#。无数人在下面分享自己的故事——有人愤怒,有人恐慌,有人释然,有人在深夜的长帖里承认:即使知道一切可能是算法安排的,我也不后悔。

因为那些感受是真实的。

苏晚宁一直在关注这些讨论。她没有参与,但她看了很多。

有一个帖子让她看了很久。那是一个女孩写的,她说自己和男朋友是在”缘度”上认识的,匹配度96.8%。他们在一起已经四个月了,感情很好。但看到新闻之后,她问男朋友:“你觉得我们是因为算法才在一起的吗?”

男朋友想了很久,说:“也许是。但我觉得,即使没有算法,我最终也会喜欢你。”

“为什么?”

“因为你笑起来的样子很好看。算法没有办法制造你的笑容。”

女孩在帖子的最后写道:我不确定他说的是不是对的。但我选择相信。

苏晚宁把这个帖子截了图,保存在了手机里。

她也想过,如果有一天陈屿问她同样的问题,她会怎么回答。

但她没有等到那个问题。因为陈屿从来不问这种问题。他只是在她加班到很晚的时候,在楼下等她,手里拿着两杯咖啡。他只是在她说”今天的云很好看”的时候,抬头看一眼天空,然后说”确实”。他只是在某一个普通的晚上,在河边跑步之后,忽然牵了她的手。

没有算法安排。没有催化的痕迹。只是一个男人在适当的时候做了一个适当的动作。

苏晚宁在被握住的那只手上感觉到了温度。那种温度是无法被数字化的。97.3%的匹配度无法告诉你另一个人的手心是干燥还是潮湿,是温暖还是冰凉。那些数据只是一种描述,像一张地图——地图可以告诉你从A到B的最短路径,但它无法告诉你走在那条路上时,阳光照在脸上的感觉。

十三

七月,“缘度”完成了第三方审计。

审计报告长达两百页,结论是:催化引擎在技术上是合规的——它没有违反任何现行法律。但在伦理层面,审计团队建议对”干预度”设置更严格的限制,并引入用户知情同意机制。

周维接受了全部建议。他在一次公开演讲中说:“我们犯了一个错误。不是技术上的错误,而是伦理上的。我们以为自己在帮助人们找到爱情,但我们忘了问一个问题:我们有资格定义什么是爱情吗?”

演讲的视频在网上广泛传播。有人称赞他的坦诚,也有人说他只是在公关。苏晚宁没有评论。

但她注意到,周维在演讲结束后,第一次没有加班到深夜。他在六点准时离开了公司,走进了电梯。她在走廊里看到他的背影——肩膀微微耷拉着,像卸下了一件穿了很久的重甲。

那天晚上,苏晚宁在公司待到了九点。她不是在加班,而是在写代码。

她在重写”缘度”的推荐引擎。

新的引擎没有了催化功能。它的核心逻辑只有一件事:基于用户的真实行为和偏好,计算出匹配度,然后展示给用户。不推送,不干预,不制造巧合。它就像一个安静的图书馆——所有的书都在那里,你可以自己去翻,自己去选,自己去读。

没有人替你翻开那一页。但所有的页面都对你敞开。

她把新引擎命名为”种子”。

不是那种被精心培育的、在温室里长大的种子。是那种被风吹到某个地方、落在某片泥土里、然后靠自己生长出来的种子。也许它会发芽,也许不会。也许它会开花,也许不会。但无论结果如何,那都是种子自己的故事。

不是算法的故事。

十四

八月的一个周末,苏晚宁和陈屿去了那个湿地公园。

这一次没有算法的推送,没有资讯流的文章,没有日程提醒的修改。她只是在一个普通的早晨醒来,看了一眼窗外——天很蓝,风很轻——然后说:“我们去湿地公园吧。”

陈屿说好。

他们在湖边走了很久。陈屿带着望远镜,在芦苇丛中寻找翠鸟。苏晚宁坐在草地上,看着水面发呆。

“在想什么?“陈屿在她身边坐下。

“在想一个很蠢的问题。”

“什么问题?”

“如果有一天我们分手了,“她说,“我会不会觉得,这是因为催化引擎被关掉了?”

陈屿想了想。“也许会。”

“那怎么办?”

“那就等到那一天再说。“他说,“现在我们在一起。这是确定的事。以后的事以后再想。”

苏晚宁看着湖面。一只翠鸟从芦苇丛中飞了出来,像一道蓝色的闪电,掠过水面,消失在远处的树丛中。

“你每次都能看到翠鸟。“她说。

“因为我一直在看。“陈屿说,“大多数人看湖面的时候,看的是水。我看的是芦苇丛的边缘。翠鸟喜欢从那里起飞。你只要一直盯着那个位置,迟早会看到。”

苏晚宁忽然觉得,陈屿说的话,像是一个关于爱情的隐喻。

大多数人看爱情的时候,看的是那些显眼的东西——匹配度、条件、共同点、未来规划。但真正的爱情也许藏在芦苇丛的边缘,在那些不起眼的角落里。你只要一直盯着那个位置,迟早会看到。

算法可以帮你计算翠鸟出现的概率。但它无法替你盯着芦苇丛看。那种长时间的、安静的、耐心的注视,只有人能做。

她靠在陈屿的肩膀上,闭上了眼睛。

阳光透过眼皮,变成一片温暖的橙色。

在那个橙色的世界里,没有数字,没有算法,没有97.3%或任何其他百分数。只有一个声音——湖水的声音、风的声音、远处翠鸟偶尔发出的清脆的鸣叫——和一种感觉:一种被阳光照透了的、温暖的、无需解释的感觉。

这种感觉不需要被计算。它只需要被体验。

十五

九月,“缘度”发布了新版本。

新版本的功能很简单:只有匹配度的展示,没有催化,没有推送,没有任何形式的干预。用户看到一个匹配对象,可以选择打招呼,也可以选择滑走。没有”你可能也喜欢”,没有”你们有N个共同好友”,没有”他在你附近”。

一切都回到了最原始的状态:你看到一个人,你觉得不错,你走过去说了一声”你好”。

剩下的,交给你自己。

新版本上线后,用户活跃度下降了百分之六十。投资人又开始焦虑了。有人写了一篇分析文章,说”缘度”正在”自我阉割”,把核心竞争优势丢掉了。

但苏晚宁不在意。因为她知道,留下来的那些用户,才是真正想要找到某个人的人——不是为了一个数字,不是为了一个推荐,不是为了一个被算法精心设计的巧合。只是因为他们在茫茫人海中看到了一个名字、一张脸,然后心里生出了一个简单的念头:我想认识这个人。

这个念头不需要算法。它只需要一个人。

而一个人,总是足够的。

尾声

年底的时候,苏晚宁辞职了。

她没有去另一家互联网公司,也没有创业。她回到了湖南老家,在小镇上住了两个月。每天早上陪爷爷去河边钓鱼,下午在院子里看书,晚上和父母一起吃饭。

爷爷问她:“在大城市干得好好的,怎么回来了?”

她说:“想休息一下。”

爷爷点点头,没有追问。

有一天傍晚,她和爷爷坐在河边。夕阳把水面染成了金色。鱼竿静静地立在水里,浮标一动不动。

“爷爷,“她忽然问,“你觉得鱼知道自己为什么要咬钩吗?”

爷爷想了想。“也许知道,也许不知道。”

“那有什么区别?”

“区别在于,“爷爷看着水面,语气平淡得像在说天气,“咬了就是咬了。不管它知不知道原因,它都已经咬了。从那一刻起,它的故事就改变了。至于改变是好是坏——那不是咬钩的那一刻能决定的。那是之后所有的时间决定的。”

苏晚宁看着浮标。

它在水面上轻轻摇晃着,像在呼吸。

她想起了陈屿。此刻他应该在深圳的某栋写字楼里加班,面前是一块写满了产品需求文档的白板。他不知道她已经离开了城市。她还没有告诉他。

她拿出手机,打开微信,看到他的最后一条消息——今早发的,一张照片,拍的是公司楼下新开的一家面包店,橱窗里摆着一只用翻糖做的翠鸟。

“看到了就想到你。“他写道。

她笑了。然后她打了几个字:

“我回老家了。”

“什么时候走的?”

“昨天。”

“为什么?”

她想了想,删掉了打了一半的话。然后重新打了几个字:

“想安静地想一些事情。”

“想什么?”

“想你。”

发出去之后,她把手机扣在了膝盖上,仰头看着天空。

晚霞正在消退。最后一缕红光挂在天边,像一条细细的丝线。

河面上的浮标忽然动了一下。

“爷爷,“她说,“鱼咬钩了。”

“那就拉。“爷爷说。

她握住鱼竿,用力一拉。一条银白色的鱼跃出水面,在夕阳的余晖中挣扎了几下,然后安静了下来。

她把鱼放进了水桶里。鱼在水桶里游了一个圈,然后安静地悬浮着,像是在适应一个新的世界。

她重新把鱼钩抛进了河里。

浮标在水面上轻轻摇晃。

远处有人在放烟花。金色的火星在暮色中炸开,像一朵转瞬即逝的花。然后又是黑暗。

她坐在那里,等着下一尾鱼。

手机屏幕亮了一下。是陈屿的回复。

他说:“那就想吧。想好了告诉我。我等你。”

她没有回复。

不是因为不想回复,而是因为她觉得有些话不需要用文字说。她只是把手机揣进口袋,继续看着河面。

河水在暮色中流淌着,像一条永不停息的数据流。但在苏晚宁的眼里,它不是数据。它是河水。是真实的、冰凉的、带着泥沙的河水。它从某个她不知道的地方流来,流向某个她不会去的远方。

她不需要知道它的源头,也不需要知道它的终点。

她只需要知道,此刻她坐在河边。

这就够了。


(全文完)