第十一章

  第十一章代码之外

  2019年3月15日,晚8:47,S大学信工楼地下车库B区。

  空气里弥漫着灰尘、潮湿混凝土、以及长时间封闭空间特有的沉闷气味。日光灯管发出嗡嗡的低响,光线是那种缺乏生气的惨白,勉强照亮着这个被遗弃的角落。B区深处,几根承重柱之间,用废旧隔板和不知从哪个实验室淘汰下来的实验台,勉强围出了一个不足二十平米、歪歪斜斜的“房间”。隔板上贴着褪色的电路图、写满复杂公式的白板贴、以及几张用透明胶带粘住的、打印出来的复杂几何图形和算法架构图。地上电线如同纠缠的藤蔓,从墙壁上一个临时接出的、带有明显改装痕迹的配电箱延伸出来,连接着几台嗡嗡作响的旧服务器、几块闪烁着绿色指示灯的电路板,以及两台看起来颇为专业的图形工作站显示器。

  这里就是顾燃的“大本营”,或者说,那个还没有名字的项目的“诞生地”。一个位于校园最偏僻车库角落的、被遗忘的空间,被他以“存放废旧实验器材”的名义,从学校后勤处那里“借”了过来,一借就是大半年。

  此刻,顾燃正坐在一张吱呀作响的二手办公椅上,身体微微前倾,目光如鹰隼般紧锁着面前两台并排的显示器屏幕。屏幕上不再是林晚在自习室或咖啡馆常见的那种炫目、流动的几何图形,而是更加枯燥、但也更加接近工业级开发的界面——左侧是密集滚动的黑色背景代码编辑器,右侧是复杂的系统架构图和实时数据监控面板。他的手指在键盘上飞舞,速度快得几乎带出残影,敲击声密集而稳定,像一场没有观众、但全力以赴的独奏。

  林晚坐在他旁边另一张稍微好一点的椅子上,面前也放着一台笔记本电脑,屏幕上是打开的文档、思维导图软件,以及一个不断跳出新消息的协作聊天窗口。她身上那件米色针织开衫的袖口,不知什么时候蹭上了一小片白色的墙灰。她没在意,只是眉头微蹙,手指在触摸板上滑动,目光在几个文档窗口间快速切换,偶尔停下来,在旁边的笔记本上记录几笔。

  距离那个冬至日的正式邀请,已经过去了近三个月。

  这三个月,是林晚重生以来,节奏最快、信息密度最大、也最……“超现实”的一段时光。她的生活被清晰地切割成了三块:白天,是“晚自习”咖啡馆的日常运营和琐碎管理;晚上和周末的一部分,是雷打不动的数据分析课程学习;而剩下几乎所有可榨取的碎片时间,以及越来越多的、原本属于睡眠和休息的夜晚,都投入到了这个位于地下车库的、名为“灵枢”(Ling-Shu,顾燃起的名字,取自《黄帝内经》,意为“生命的枢纽”,也暗合“灵活、枢纽”之意)的项目中。

  最初,她只是阅读顾燃给她的那份构思文档。那根本不是一份商业计划书,而更像是一篇极其艰深、夹杂了大量数学符号和自创术语的技术哲学论文。它描绘了一个野心勃勃的愿景:构建一个能够真正“理解”复杂动态环境(不仅仅是“识别”),并能为其中多个智能体(车辆、机器人、甚至行人)生成协同、高效、且符合“社会规范”与“人类可接受性”的实时决策系统。应用场景从自动驾驶,到智慧物流,再到大型公共场所的人群调度,甚至更远。

  林晚看得头皮发麻,一半是因为内容的艰深,另一半是因为其宏大的野心。但同时,一种难以言喻的战栗和兴奋,也开始在她心底滋生——如果这真的能做出来,哪怕只是实现一小部分……

  阅读文档只是开始。随后,顾燃开始给她“上课”,用最浅显的语言,解释核心的技术原理、当前的瓶颈、以及他尝试突破的方向。林晚像个最用功的学生,拼命吸收着那些陌生的概念:强化学习、多智能体系统、博弈论、注意力机制、价值对齐……她发现自己文科生的背景,在理解“为什么要这么做”以及“这可能带来什么社会影响”时,反而成了一种优势。她能敏锐地捕捉到技术方案中可能隐含的伦理风险、用户接受度障碍,或者与现实世界脱节的“想当然”之处。

  而她正在学习的数据分析,也意外地派上了用场。顾燃需要处理和分析大量用于训练和测试的仿真数据,虽然核心算法他一手包办,但数据清洗、特征工程、结果可视化和初步分析,林晚已经能分担一部分。更重要的是,她开始尝试从“产品”和“用户”的角度,去思考这些冰冷的数据和算法,最终应该如何被包装、被呈现、被普通人理解和接受。

  他们开始有了一些初步的“成果”——如果那能算成果的话。比如,林晚根据对咖啡馆熟客的观察和一些简单的访谈,整理了一份关于“不同人群在突发状况下的决策偏好和信任机制”的初步报告,虽然粗浅,但为顾燃思考算法中的“人类偏好建模”提供了几个具体的研究方向。又比如,她利用基础的统计工具,分析了一批公开的交通事故数据,试图找出那些无法用简单规则解释、但可能涉及复杂人机交互或环境因素的“边缘案例”,作为算法需要特别处理的“难题集”。

  顾燃对她这些“非技术”的贡献,表现出了惊人的重视。他会认真阅读她的每一份报告,尽管里面可能充满外行的术语和不严谨的推断。他会在调试算法的深夜,突然就某个“人性化”设计的细节,发消息问她看法。他甚至开始让她参与一些更核心的讨论,比如算法在面对不可避免的“电车难题”式极端选择时,应该遵循何种价值排序原则——虽然这种讨论往往没有答案,只有更多的问题。

  这个车库里的“实验室”,也逐渐有了一些变化。林晚买来了几盆最耐阴的绿萝(虽然在这种环境下长得蔫头耷脑),换掉了那盏最刺眼的日光灯管,添置了一个小热水壶和简单的茶具。这里依然杂乱、简陋,充满了技术宅的气息,但至少,有了一点属于“人”的温度,和一种……并肩作战的雏形。

  当然,困难无处不在。最大的困难是资源。顾燃那几台服务器是淘来的二手货,经常过热宕机。图形工作站的显卡算力捉襟见肘,跑一次复杂的仿真需要耗费以天计的时间。他们没有钱购买更高质量的训练数据,只能依靠公开数据集和自己“制造”的仿真场景。顾燃几乎把所有个人积蓄和可能的“外快”(接一些短期的技术咨询)都投了进来,依然入不敷出。林晚也从咖啡馆本就微薄的利润里,挤出了一部分,用于购买一些必要的软件授权和云服务器临时算力。但这只是杯水车薪。

  人的精力也是问题。林晚感觉自己像一根被拉到极限的橡皮筋,咖啡馆、学习、项目,三头拉扯,睡眠时间被压缩到极致,黑眼圈越来越重。顾燃更甚,他几乎是住在了车库里,靠咖啡和能量饮料维持,整个人以肉眼可见的速度消瘦下去,但眼睛里的光,却越来越亮,亮得有些……骇人。

  此刻,他们正面临近一个月来最大的一个技术瓶颈。在新引入的、用于模拟“人类风格协商”的算法模块后,系统的整体稳定性出现了问题。在复杂的多智能体交互场景中,系统偶尔会陷入一种奇怪的“摇摆”状态,不同智能体的决策相互矛盾,导致整体效率不升反降。

  顾燃已经对着代码调试了整整四十八小时,尝试了十几种优化方案,效果都不理想。林晚则在一旁,试图从交互逻辑和规则设计的角度,寻找可能的漏洞。她面前的文档里,记录着几十个仿真失败的案例,她试图从中归纳出一些模式。

  “停一下。”林晚忽然开口,声音在只有机器嗡鸣和键盘敲击声的车库里显得有些突兀。

  顾燃敲击键盘的手指骤然停下,但他没有立刻转头,目光依旧钉在屏幕上那个报错的日志窗口,眉头锁成一个深刻的“川”字。过了几秒,他才有些僵硬地、缓缓转过头,看向林晚。他的眼睛布满了血丝,脸色是一种不健康的苍白,下颚线因为紧绷而显得格外锋利。

  “第17号失败案例,”林晚将笔记本电脑屏幕转向他,指着自己整理的一个表格,“还有第23号,第31号。我注意到,这些案例有一个共同点:冲突发生在两个都具有‘高优先级’标签的智能体之间,而且它们的目标路径存在一个狭窄的、无法同时通过的‘瓶颈’区域。你的协商算法,似乎是让它们‘轮流’尝试通过,但每一次尝试,都会因为对方的‘不退让’而失败,然后交换角色,再次失败,陷入无限循环。”

  顾燃的视线移到她的屏幕上,快速扫过那几个案例的描述和示意图。他的瞳孔微微收缩。

  “高优先级冲突……瓶颈区域……”他低声重复,手指无意识地敲击着膝盖,“我的协商权重设置,是基于各自目标的紧迫性和路径的局部最优性。但在绝对的空间互斥条件下,这种基于‘价值’的协商会失效……它们需要一种更底层的、关于‘空间权利’的临时仲裁机制,或者在冲突发生前,就提前进行路径的全局再规划,哪怕牺牲部分个体的局部最优……”

  他的语速越来越快,思路像是被打开了一个新的缺口。他猛地转回身,双手重新放回键盘,但这次没有立刻开始敲击,而是飞快地在旁边一个空白便签本上,画起了复杂的示意图和关系图,嘴里喃喃自语,说着林晚完全听不懂的术语。

  林晚没有打扰他,只是静静地看着。她知道,自己可能无意中提供了一个关键的问题视角。技术实现是顾燃的事,但她能做的,就是从那些冰冷的失败数据中,用“人”的直觉和逻辑,去发现不和谐的“模式”,去提出“为什么”。

  这,大概就是顾燃所说的“现实世界接口”的意义之一。

  顾燃在便签本上疯狂地写了又划,划了又写,大约十分钟后,他忽然停下笔,抬起头,目光灼灼地看向林晚。

  “我需要重构冲突检测和仲裁模块的底层逻辑。”他的声音因为兴奋而有些沙哑,“不能仅仅在决策层做软约束的协商,需要在规划层甚至感知层,就引入对‘绝对互斥资源’的识别和预分配机制。这可能会增加系统的初始计算开销,但能从根本上避免这类死锁。我需要修改大约……三千行核心代码。”

  他说着,已经重新面对屏幕,双手放在键盘上,那架势仿佛立刻就要开始一场代码的远征。

  “顾燃。”林晚叫住他,声音平静。

  顾燃动作一顿,再次转头看她,眼神里带着被打断的不解和急切。

  “你上一次吃饭是什么时候?”林晚问。

  顾燃愣住了,脸上出现了一瞬间的空白。他眨了眨眼,似乎在努力回忆,然后不确定地说:“……早上?喝了杯蛋白粉。”

  “现在快晚上九点了。”林晚叹了口气,从自己带来的帆布包里,拿出两个还温热的保鲜盒,放在旁边一张相对干净的小桌子上,打开。一盒是简单的西红柿炒蛋,另一盒是米饭,旁边还有一小罐鸡汤。“先吃饭。代码跑不了,但你的身体会垮。”

  顾燃看着那两盒简单的饭菜,又看了看林晚平静但不容置疑的脸,张了张嘴,似乎想反驳,但最终,什么也没说出来。他默默地站起身,因为久坐,身体几不可察地晃了一下。他走过去,在桌子旁那张咯吱响的折叠椅上坐下。

  林晚给他递过去筷子和勺子。顾燃接过,低头开始吃饭。他吃得很安静,很快,但不再像以前那样机械地吞咽,而是能看出来,他在认真地吃。

  车库里的灯光昏暗,机器嗡鸣。两人默默地吃着这顿简陋的晚餐。空气里除了灰尘和电器的味道,多了西红柿炒蛋的酸甜和鸡汤的温暖香气。

  “林晚。”顾燃忽然开口,声音比刚才平稳了一些。

  “嗯?”

  “谢谢。”他说,没有抬头,只是用筷子拨弄着碗里的米饭,“不只是这顿饭。还有刚才那个发现。很重要。”他顿了顿,补充了一句,声音很轻,“有时候,我钻在代码里太深,会忘记……问题最初是从哪里来的。”

  林晚笑了笑,没说话。她知道,对顾燃而言,这大概已经是最高规格的认可和感谢了。

  吃完饭,顾燃主动收拾了饭盒,拿去旁边一个简陋的水池清洗。林晚则继续整理她的案例分析文档。

  等顾燃回来,他没有立刻坐回电脑前,而是站在那面贴满了图纸和白板贴的隔板前,抱着手臂,静静地看了一会儿。然后,他转过身,背对着那些复杂的图表和公式,面对着林晚,脸上露出一种罕见的、介于困惑和思索之间的神情。

  “林晚,”他又叫了她的名字,这次语气更加郑重,“有件事,我想听听你的看法。不完全是技术问题。”

  林晚放下手中的笔,坐正身体:“你说。”

  顾燃走到她对面的椅子坐下,双手交握放在膝盖上,手指无意识地相互摩挲着。他似乎有些难以启齿,组织了一会儿语言,才慢慢说道:

  “前段时间,我本科时的一个师兄,现在在硅谷一家还算有名的AI公司做研究员。他不知怎么听说了我在搞这个东西,联系了我。他说……很感兴趣,认为我的方向有潜力。他提出,可以帮我引荐给他们公司的投资部门,或者,以他个人名义,给我一笔不算少的‘天使投资’,条件是……获得项目的部分股权,以及未来产品的优先合作权。”

  林晚的心猛地一跳。投资?这么快就有人找上门了?是顾燃那个“灵枢”项目真的价值外露,还是……又是一个陷阱?

  “你怎么想?”她问,没有立刻表达意见。

  顾燃的眉头又皱了起来:“我不知道。钱,我们确实急需。有了钱,可以换更好的设备,买更多数据,租用云算力,进度能快很多。而且,师兄在业内有些名声,他的背书,可能会吸引更多人才和资源。”

  “但是?”林晚听出了他语气里的犹豫。

  “但是,”顾燃深吸了一口气,手指收紧,“他给我的那份初步投资意向书,我看了。条款很‘标准’,也很……苛刻。要求的股权比例不低,而且,里面有一些关于技术路线决策权和未来商业化方向的限制性条款。虽然他说可以谈,但我感觉……他们的目的,可能不仅仅是想支持一个有趣的研究,更想尽快把我的东西,整合到他们公司现有的产品线里,或者作为一个技术储备。我担心,一旦拿了钱,接受了那些条款,这个项目可能会失去它最初的方向,变成另一个……纯粹的商业工具。”

  他抬起头,看着林晚,眼神里是真实的困惑和挣扎:“我最初做这个,是因为我觉得那些问题本身‘有意思’,是因为我想看看,机器能不能真的学会用更接近‘人’的方式去协同、去理解复杂的世界。如果只是为了赚钱,或者为了做出一个能卖钱的产品……那或许有更容易的路。可如果不要这笔钱,我们可能还要在这种地下车库里,挣扎很久,甚至可能永远也做不出来。”

  他很少一次性说这么多关于“现实”考量的话。林晚知道,他把这个难题抛给她,是真的在寻求意见,而不仅仅是想倾诉。

  她没有立刻回答,而是认真思考着。顾燃的担忧,她完全理解。资本是贪婪的,它注入的同时,往往也伴随着对控制权和方向的攫取。那个师兄的意图,是好是坏,难以判断。但顾燃提到的“失去方向”的风险,是真实存在的。一个过于急功近利的商业化压力,很可能会扼杀那些需要长期探索、短期看不到收益的、真正创新的部分。

  但另一方面,没有资金的支持,纯粹靠热情和有限的个人资源,项目能走多远?顾燃可以靠燃烧自己硬撑,但她不行,未来如果吸引其他人加入,也不可能。而且,技术窗口期是有限的,如果拖得太久,被其他大公司用更雄厚的资源抢先做出类似的东西,他们的努力可能就白费了。

  这是一个典型的、几乎每一个技术型初创者都会面临的困境:要理想,还是要面包?要纯粹的探索自由,还是要现实的资源助推?

  林晚想起自己重生前,看过的一些关于“深瞳”公司的早期报道。印象中,顾燃(如果真的是他的话)在创业初期,似乎拒绝了不止一笔看似优厚的投资,坚持独立研发了一段时间,直到做出了一个非常惊艳的早期原型,才以相对有利的条件,引入了战略投资,并始终保持着对核心技术的控制权。那篇报道里,顾燃被描述为一个“极其固执、对技术方向有绝对掌控欲的创始人”。

  如果历史有惯性的话……

  “顾燃,”林晚缓缓开口,目光直视着他,“你还记得你给我的那份构思文档里,开篇写的那句话吗?”

  顾燃看着她,等待她说下去。

  “‘探索复杂动态系统中,多智能体协同决策的“可理解的智慧”。’”林晚一字一顿地复述,“这是你写下的,这个项目的‘第一性原理’,或者说,最核心的追求,对吗?”

  顾燃沉默地点了点头。

  “那么,”林晚继续说,语气平和但坚定,“任何可能让你偏离这个核心追求的事情,无论它带来多少短期利益,都应该被警惕,甚至拒绝。钱很重要,但它应该是用来服务于这个核心追求的燃料,而不是反过来,让这个追求去适应钱的胃口。”

  她停顿了一下,让顾燃消化她的话。

  “当然,拒绝这笔钱,意味着更艰难的路。但也许,我们可以换个思路。”林晚的思维快速运转着,重生带来的、对“深瞳”未来轨迹的模糊记忆,和她这几个月的亲身参与体会,交织在一起,形成一些直觉,“我们是不是可以,先不追求大而全的系统,而是集中精力,攻克一两个最核心、也最能体现你那个‘可理解的智慧’理念的关键技术点?做出一个足够小、但足够惊艳的‘技术演示原型’(Tech Demo)。用这个原型,去申请一些偏向基础研究、对商业化要求不那么迫切的科研基金,或者,去寻找那些真正理解并认同你理念的、有耐心的‘聪明钱’(Smart Money)?比如,高校的实验室合作,或者某些专注于前沿科技的风险投资机构?”

  “用技术证明价值,换取对方向的控制权?”顾燃喃喃道,眼睛慢慢亮了起来。

  “对。”林晚点头,“而且,一个足够好的Demo,本身就是最好的名片和防御。它能吸引真正志同道合的人,也能在未来的融资谈判中,给你更多底气。你现在需要的,或许不是一笔让你快速奔跑、但可能被套上缰绳的钱,而是一笔能让你稳稳地、朝着自己认定的方向,走出最扎实的第一步的钱。”

  车库里的空气似乎都因为这番话而变得有些不同。机器的嗡鸣依旧,但那种被困在技术和现实夹缝中的焦灼感,似乎淡去了一些。

  顾燃长久地沉默着,手指无意识地敲击着膝盖,眼神飘向虚空,显然在进行激烈的内心运算和推演。林晚没有打扰他,只是安静地等待着。

  过了好一会儿,顾燃才长长地吐出一口气,身体向后靠在了吱呀作响的椅背上,脸上露出一种如释重负的、甚至带着一丝疲惫笑意的表情。

  “你说得对。”他声音不大,但很清晰,“我差点被‘资源稀缺’的焦虑带偏了。方向比速度重要。尤其是……在还不知道最终目的地具体坐标的时候。”

  他站起身,走到那面贴满构思的隔板前,伸出手,轻轻拂过上面那些复杂的图表和公式,眼神重新变得专注而锐利。

  “集中资源,打造一个极致的、能体现核心理念的‘楔子’……”他低声自语,然后转向林晚,眼神里重新燃起了那种熟悉的、近乎燃烧的专注光芒,“我知道该从哪里下手了。那个瓶颈区域的冲突仲裁和预分配机制……如果我能把它做到极致,做到不仅解决死锁,还能让最终的协同方案,在‘效率’和‘公平性’之间,呈现出一种可解释的、甚至优雅的平衡……那本身,就是一个足够有说服力的‘楔子’。”

  他像是瞬间被注入了新的能量,重新坐回电脑前,双手放在键盘上。但这一次,他的姿态不再是之前那种带着绝望感的疯狂敲击,而是一种沉稳的、目标明确的蓄势待发。

  “林晚,”他没有回头,声音从屏幕前传来,“帮我重新梳理一下我们所有的失败案例,按照冲突类型、资源稀缺程度、智能体目标差异性,做一个更精细的分类。另外,搜集所有你能找到的、关于人类在类似冲突情境下的行为研究和协商案例,哪怕是社会学、心理学领域的论文。我们需要为这个‘楔子’,找到最坚实、也最具挑战性的‘测试床’。”

  “好。”林晚没有任何犹豫,立刻应下,手指已经放回了键盘上。

  车库里的灯光,似乎比刚才明亮了一些。机器的嗡鸣,此刻听起来,像是某种庞大机械开始预热、准备启动的沉稳低吼。

  窗外的城市,灯火璀璨,夜色正浓。

  而在这个被遗忘的地下车库角落,在代码与人性交织的混沌前沿,在理想与现实碰撞的狭窄缝隙里,一点更加清晰、也更加坚定的光,正从两个疲惫但眼神明亮的年轻人身上,悄然亮起。

  那不仅仅是屏幕代码的光。

  那是属于创造者的光。是在看清了前路的泥泞与荆棘之后,依然选择迈出第一步的,笨拙而勇敢的光。

本章说
同人创作0条评论

好书等你评,快来成为鉴赏第一人

上起点App查看全部