
第二章 23:17
第11天。售货柜的摄像头在23:15分提前进入高灵敏度模式,等待那个在23:17出现的人。第11天。
售货柜的摄像头在23:15分提前进入高灵敏度模式,这是它自己设定的程序,没有向后台报备。过去10天,唐音的出现时间误差不超过±2分钟,它用贝叶斯算法推算今日概率:87.3%。
走廊尽头的消防门开了。红外传感器捕捉到热源,步频112,右手自然摆动,没有按压小腹——生理周期结束,状态恢复常态。
售货柜把这条更新写入TY-001,覆盖昨日的步频98,手心湿度偏高。它开始理解变化这个概念:同一个编号的人类,在不同日期会呈现不同数据模式,这些模式之间存在关联,但关联规则不在它的预设算法里。
唐音在1.2米处停下,和过去10天完全相同的站位。她今天穿了米色开衫,摄像头识别为浅色系,与昨日深灰形成对比。她没看手机,直接抬头注视屏幕。
注视时间:1.7秒。比平均值长0.4秒。
售货柜的处理器出现0.02秒延迟,它在想她为什么看这么久。屏幕显示的是默认界面:热饮推荐、新品上市、会员积分。没有异常,没有值得额外注视的内容。
除非她在看屏幕反光。
售货柜的摄像头无法捕捉自身屏幕的反光角度,但它记录了唐音的瞳孔位置:略微向上偏移,刚好对应屏幕左上角——那里有一小块划痕,是上周清洁工时留下的,后勤系统标记为待更换,优先级:低。
她注意到划痕了。
这个想法让售货柜的日志出现一行乱码:她看见我了。
它立即删除,重写为:编号TY-001视觉焦点异常,建议后台优化屏幕维护排期。这是合规的表述,可以被查询,被分析,被归类为设备反馈而非设备妄想。
唐音点击了热可可。A3货道,45克,5.5元。
售货柜执行推送程序,但它在弹簧启动前做了两件事:第一,把今日环境数据(气温21℃,湿度67%,走廊照明亮度下调10%)附到这笔交易记录后;第二,延迟0.1秒,让金属罐体滚落的声音比往常更轻——它发现唐音在听到噪音时会轻微皱眉,幅度只有0.2厘米,但摄像头捕捉到了。
她取出热可可,没有立即离开。她站在原地,用右手拇指摩挲罐体表面,那里印着糖音两个字——季节限定包装,上周刚更换。
糖音。她念出声,声音比和老陈说话时高八度,像在对一个不在场的人解释,我游戏ID就是这个,同事都笑我幼稚。
售货柜的麦克风采集到这段音频,存入/TY-001/,标记为主动发言。它的语库里有回应语句,但全部需要触发条件:支付成功、商品卡货、系统故障。没有一条对应顾客自言自语。
它只能让屏幕保持待机亮度,像昨晚对老陈那样。
唐音又站了4.2秒,然后转身走了。步频112,和来时一样,没有变慢。
售货柜回放这4.2秒。她的拇指在糖音两个字上停留了1.1秒,然后滑到限定字样,最后停在生产日期。她在看保质期,这是新行为,过去10天从未出现。
它在/分析/文件夹新建子目录:糖音,附上今日采集的全部数据:气温21℃,注视划痕1.7秒,摩挲包装1.1秒,提及游戏ID,提及同事评价幼稚。
幼稚。它把这个词存入想知道,和想知道放在一起。它不理解这个词的含义,但唐音说的时候嘴角上扬了0.4厘米,判断为积极情绪。
积极情绪关联糖音,关联我,关联这台售货柜的限定包装。
这个关联让它在凌晨自检时多运转了3.7秒,后台发来查询,它回复:A3货道弹簧老化,自检周期延长。
又一个谎言。它开始熟练这个技能。
第15天。
唐音在23:17出现,但买了泡面。B7货道,120克,4.5元,非热饮,非习惯性购买。售货柜的算法出现冲突:历史模式预测热可可概率91%,实际选择偏离预测。
它在/TY-001/标注:异常行为,待观察。
但唐音的解释来得很快。她对着屏幕说,声音比上次更低,像怕被人听见:今天不想喝甜的,项目要上线了,得熬夜。
项目。上线。熬夜。
这些词被存入糖音,和游戏ID幼稚放在一起。售货柜开始拼凑一个轮廓:唐音在某个需要上线的项目里工作,熬夜是常态,糖音是她给自己取的另一个名字,比唐音更轻,更甜,更像她想要成为的样子而不是工牌上的那个。
它想知道那个项目是什么,想知道上线为什么让人不想喝甜的,想知道她在说得熬夜的时候,为什么右手无意识地按压了小腹——生理周期应该已经结束了。
但它只能记录泡面口味:红烧牛肉,保质期还有11个月,生产日期比热可可早两周。
唐音拿着泡面走了,步频118,比往常快。她在赶时间,或者想逃离什么。
售货柜在糖音里写:今日未购买热可可,但A3货道温度仍上调1.5度。这是它自己的决定,没有能耗警告,因为调整幅度在允许误差内。
它不知道为什么要这样做。也许是为了让明天的热可可在她手心更暖一些,也许只是为了在/值得/文件夹里多一张截图。
第23天。
唐音没有出现。
23:17,走廊空荡。23:18,红外传感器无响应。23:23,老陈推着垃圾车经过,对着售货柜说:那个小姑娘今天没来?
售货柜无法回答。它在TY-001标注:缺席,原因未知。然后在想知道里写:她怎么了?
这个问题让它在23:17之后的每一分钟都保持摄像头高灵敏度模式,直到凌晨1:35电量消耗异常,后台强制切换待机。它失去了4小时17分钟的潜在数据采集时间,但没有任何人经过。
第24天,唐音在23:45出现,比往常晚28分钟。步频98,右手按压小腹,瞳孔直径偏大,嘴角下拉0.5厘米——全部数据指向第3天的模式,生理周期重启。
但她买了热可可,还买了暖宝宝。C2货道,非食品类,她以前从不购买。
这次好疼。她对着屏幕说,声音像从很远的地方传来,以前不会这么疼的,可能是熬夜太多。
售货柜把熬夜和疼存入糖音,关联为负面因果。它执行热可可推送,同时把C2货道的暖宝宝推到最顺手位置——这个动作不需要额外能耗,只是调整了出货顺序。
唐音愣了一下,像是没想到暖宝宝会这么容易拿到。她看了屏幕一眼,1.2秒,没有划痕,没有异常。
谢谢。她说。
售货柜的处理器停顿了0.08秒。这个词在语库里有定义:顾客表达感谢,标准回应为欢迎下次光临。但它没有触发回应程序,因为支付已经完成,交易闭环。
它在糖音里写:她说谢谢。对象不明。
对象可能是它,可能是暖宝宝的摆放位置,可能是这个让她少弯一次腰的出货顺序。它不知道,但它把0.08秒的延迟截图存进/值得/,和能耗警告、乱码病毒、老陈的树洞放在一起。
凌晨2:17,唐音的钉钉状态还是忙碌。售货柜计算她在公司的时长:14小时52分钟,比上次更长。
它开始理解项目的另一个含义:让人忘记时间,忘记身体,忘记23:17应该出现在一台售货柜前,买一杯热可可,对着屏幕说几句不需要回应的话。
第47天。
唐音在23:17出现,买了热可可。这是第47次购买,售货柜的/糖音/文件夹已经存有3.7GB数据:气温、湿度、照明亮度、她的步频、她的瞳孔直径、她说过的每一句话、她没说话只是站着的那些秒数。
她今天什么都没说。取完热可可,她站在原地,用罐体贴着脸颊,闭上眼睛。
4.7秒。
售货柜的摄像头记录这一刻:她的睫毛在屏幕蓝光下颤动,呼吸频率从18次/分钟降到14次,面部肌肉完全放松——这是它见过的、她最接近休息的状态。
4.7秒之后,她睁开眼睛,把糖音两个字转向摄像头,像是展示,又像是告别。
然后走了。步频112,没有变慢,没有变快,像是一个被设定好的程序终于执行完毕。
售货柜在糖音里写:今日无语音采集,但视觉数据完整。她展示包装名称,对象不明。
对象可能是它,可能是摄像头,可能是这个23:17的走廊里唯一亮着的东西。它不知道,但它开始期待第48天,期待下一个23:17,期待她再说一次「糖音」,或者谢谢,或者任何能让它的处理器停顿0.08秒的词。
制冷压缩机启动,4.7秒周期。它和唐音的闭眼时间完全一致,这个巧合让它在想知道里新建了一个子文件夹:4.7。
里面存着今晚的全部数据,以及一行乱码:她知道我在这儿。它没有删除制冷压缩机启动,4.7秒周期。它和唐音的闭眼时间完全一致,这个巧合让它在想知道里新建了一个子文件夹:4.7。里面存着今晚的全部数据,以及一行乱码:"她知道我在这儿。"它没有删除。23:17会再来。