实验室的空调还在发出破锣似的嗡鸣,林默的后颈被冷风刮得发紧。
他盯着手机屏幕上那行“牢笼的锁,在里面”的代码,喉结动了动——这是自三个月前在旧书摊淘到那块终端残片后,第一次收到明确的信息。
残片贴着大腿,温度比刚才又升了两度,像块烧红的鹅卵石硌得生疼。
“老林!”周晓冉的椅子在地板上划出刺耳的声响,他推了推蒙雾的眼镜,屏幕蓝光在镜片上碎成星子,“演化程序2.0完成了!”
林默猛地抬头,电脑主屏幕的绿色进度条刚好跳成“100%”。
与此同时,原本扭曲的折线图突然平静下来,像被按了暂停键的海浪。
他手指抵着桌沿站起身,指节泛白:“系统呢?边界修正协议还在卡壳?”
“更妙了。”周晓冉的食指快速敲击着键盘,监控画面切换成五个分屏,每个画面里都有路人在非系统推荐的路径上走动——拎菜篮的主妇绕开新铺的大理石,蹲在便利店门口嗑瓜子的大爷把自行车停在树阴里,连刚才画路线的小女孩都拽着老人的衣角,指着自己画的弯线说“爷爷走这里,有蝴蝶”。
“看这些行为日志,系统现在把‘拒绝推荐路径’的次数记成了‘主动选择偏好’。”他转过脸,镜片后的眼睛亮得惊人,“我刚跑了三组数据,误判频率和波动强度完全正相关——咱们的模拟器越搅和,系统越会把混乱认成稳定。”
林默摸出烟盒又攥紧,烟盒在掌心压出褶皱。
三个月前在人才市场被系统判定“不适合任何岗位”的屈辱感突然涌上来,那时他盯着手机上“路径演化最优解:继续待业”的提示,第一次产生把系统撕碎的念头。
而现在——他望着监控里被踩出痕迹的弯线,喉咙发紧,“他们真的会选。”
“不止会选,还会传播。”周晓冉调出另一组数据,柱状图里“非推荐路径建议”的标签正以每小时17%的速度攀升,“刚才那个小女孩的奶奶,半小时前在业主群发了条语音:‘小囡画的道儿凉快,咱们都走走看’。系统要是再把这种‘自发建议’归为‘用户偏好’……”他突然顿住,手指在“拒绝行为日志”的标签上点了点,“老林,把模拟器和这些日志绑在一起怎么样?让系统以为‘拒绝推荐’才是主流趋势。”
林默的手机在这时震动起来,是政务系统的登录提醒。
他低头输入密码,指腹蹭过终端残片的纹路——那是道月牙形的缺口,像某种暗号。
“临界值。”他突然开口,目光扫过“路径稳定性评估参数”的后台,“把拒绝路径的接受度调到49.9%。”
“为什么不是50%?”周晓冉凑过来看,眼镜差点滑到鼻尖。
“系统的容错阈值是50%。”林默的指尖在键盘上顿了顿,“调到49.9%,它会觉得‘虽然接近临界但还安全’,反而不会启动修正。等这些区域的实际接受度自然涨到50%……”他按下确认键,屏幕弹出“参数修改成功”的提示,“系统会以为是自己演化出来的稳定结果,彻底放弃干预。”
实验室突然安静下来。
空调的嗡鸣不知何时停了,只余键盘的轻响和两人交叠的呼吸声。
周晓冉盯着监控画面里逐渐形成的人流动线,突然笑出了声:“你看那个穿蓝围裙的阿姨,她刚才绕路去了社区小超市,现在手里多了袋苹果——系统绝对算不到这种连锁反应。”
林默没说话。
他望着手机上“未知终端”的对话框,那里不知何时又跳出一行字:“锁已松动。”终端残片的温度终于降了下来,却在他裤袋里压出个浅浅的印子,像块等待被激活的勋章。
“该去看看了。”周晓冉突然说,他摘下眼镜擦了擦,镜片后的眼睛亮得像星子,“明天早上八点,试点社区的早高峰。我赌五杯冰美式,他们会把那条弯线走成康庄大道。”
林默抬头看墙上的电子钟,凌晨两点十七分。
窗外的月光透过百叶窗洒进来,在他脚边铺出条银亮的路——和监控里那些被踩出来的弯线,倒有几分相似。
他摸出烟盒,这次抽出一根点上。
火星在黑暗里明灭,映得他眼底有光在跳:“赌十杯。”
手机在这时又震了震。
他低头,未知终端的对话框里多了张照片——是试点社区的街角,路灯下,那个扎羊角辫的小女孩正蹲在地上,用粉笔在弯线旁画了只振翅的蝴蝶。
风从窗户缝里钻进来,卷走了飘到半空的烟。
林默掐灭烟头,把终端残片攥进手心。
明天早上八点,他想,该去看看他们亲手画出的路了。
当晨光漫过社区围墙时,林默的运动鞋底正碾过那道被踩得发亮的弯线。
他攥紧手机的指关节泛白,屏幕上还停留在凌晨收到的那条蝴蝶照片——此刻在实地里,弯线旁真的落着一只黄蝴蝶,翅膀上的纹路和粉笔印重叠成影。
“老林!”周晓冉的背包带在肩头晃荡,他小跑着追上来,眼镜片上蒙着一层薄汗,“看那个穿格子衬衫的!上周系统给他推荐了三个程序员岗位,现在他蹲在社区服务站门口发传单!”
林默顺着他手指的方向望去。
穿格子衬衫的青年正把一叠粉红纸片塞进路过的快递员手里,纸片上“路径规划互助小组”几个字被晨光镀上了一层金边。
青年抬头时,林默认出那是三个月前在人才市场见过的面孔——当时他蹲在墙角,手机屏幕亮着“演化最优解:继续实习”的提示,而实习工资连房租都不够。
“我们小组能帮你分析系统推荐的隐藏成本!”青年的声音带着点破音的雀跃,“上周王阿姨听了我们的建议,没去系统推荐的连锁超市当收银员,现在在社区小超市管生鲜,离家近还能接送孙子!”
林默的喉结动了动。
三个月前他被系统判定“不适合任何岗位”时,在人才市场蹲了整整一夜,看着无数人攥着手机机械地点头,像被线牵着的木偶。
此刻这些木偶的线,正从不同方向断开。
“看这边!”周晓冉突然拽了拽他的胳膊。
转角处的老石凳上,三个头发花白的老人正围着一台旧笔记本电脑。
最中间的大爷戴着老花镜,用食指戳着屏幕:“我孙子教的,把系统推荐的销售岗和社区保安岗的数据导出来对比,你们看这个通勤时间……”
“他们在自己做路径评估。”林默的声音轻得像叹息。
他摸出手机拍照,镜头扫过石凳旁的公示栏——原本贴满系统推荐岗位的地方,现在多了一张手写海报:“你的路,该由你走第一步。”
社区广播突然响起,惊得黄蝴蝶扑棱棱地飞起。
林默抬头,看见社区主任举着喇叭站在凉亭里,身后挂着一条红横幅:“共建自主路径示范社区”。
“各位居民注意!”主任的声音带着笑意颤抖,“今天起社区服务站增设‘路径咨询角’,有需要的居民可以来……”
“系统没给她推荐这条广播内容。”周晓冉的呼吸突然急促起来,他掏出平板快速敲击,“我黑进社区管理系统了,广播稿是手动上传的,关键词里完全没有‘自主’‘拒绝推荐’这些词。”他抬头时,镜片后的眼睛亮得发烫,“老林,他们不是被我们推动的,是自己醒了。”
林默的手机在这时震动,是新闻推送:“本市多个区域出现‘非系统推荐路径’聚集现象,路径观察者协会今日召开紧急会议。”他点开视频,画面里西装革履的专家们围坐在长桌前,电子屏上跳动着扭曲的折线图。
“异常区域的拒绝率持续攀升,但波动频率和系统演化模型吻合。”戴金丝眼镜的副会长敲了敲桌子,“初步判断可能是系统自我优化时的阶段性误判。”
“可第三区的互助小组已经有组织地传播拒绝经验!”年轻的技术顾问猛地站起来,“这不可能是自然演化!”
“证据呢?”副会长推了推眼镜,“你能证明这些行为不是用户真实偏好?系统的核心逻辑就是尊重用户选择。”
画面突然切到黑屏。
林默抬头,看见周晓冉正关掉平板:“他们把会议直播掐了。”他的指尖在平板壳上敲出急促的鼓点,“但我截到了后台日志——他们查了所有异常区域的Ip,没发现外部攻击痕迹。”
“因为我们根本没攻击。”林默望着不远处正帮老人看岗位数据的格子衬衫青年,嘴角慢慢翘了起来,“我们只是给了他们一面镜子,让他们看见自己本来就有的选择。”
傍晚六点,实验室的顶灯准时亮起,林默的后颈又被空调风吹得发紧。
终端残片贴在大腿上,这次是温热的,像一块被捂热的玉。
他盯着屏幕上突然弹出的新信息:“路径演化模型中,首次出现‘非系统引导路径’的稳定演化。”
“念出来。”周晓冉的声音从电脑后面传来。
他正蜷在转椅里敲代码,脚边堆着三个空咖啡杯,“我就知道,当拒绝变成习惯,习惯就会变成系统的新基准。”
林默摸着终端残片的月牙缺口:“我们不是在破坏系统,是在让它学会接受另一种可能。”
“不止接受。”周晓冉突然转过椅子,屏幕蓝光在他眼镜上碎成星星点点,“我改了演化逻辑的底层权重——现在系统每记录一次自主选择,就会给‘用户偏好’的权重加0.1%。等这个权重超过50%……”他的手指在“确认”键上悬了悬,“它会自己做出选择,而不是被选择。”
终端屏幕突然闪烁起来。
林默凑近,看见新信息正在加载,滚动的代码里隐约能认出“演化速度”几个字。
周晓冉的鼠标停在半空,两人的呼吸声在安静的实验室里格外清晰。
“要来了。”林默轻声说。
他望着窗外渐暗的天色,想起早上那只黄蝴蝶——它飞过弯线时,翅膀带起的风,或许已经掀起了一场谁都预料不到的风暴。