首富从AI浪潮开始 第223节
任务超时之后的级联取消。
这个功能他自己想做没做,因为它牵扯到至少四个文件、两个goroutine的生命周期管理,还要兼容他之前写得乱七八糟的事件总线。
最麻烦的是,这个项目里有一段历史包袱。一开始写的时候他偷懒,把一个本该解耦的模块直接塞进了主循环里。
Nexus内部那个还在打磨的类似工具,叫Nexus Atlas(地图集),瑞恩也会用这个项目来测试Atlas,每次测试都栽在这个耦合里。
他想看看御风在这段逻辑里会犯什么错。
回车。
终端开始滚动。
可以看到,御风先是扫描了一遍仓库结构。
这步不算什么,瑞恩挑了挑眉,心想。
接着御风开始读代码,标出了几个它认为相关的文件。
瑞恩往前凑了凑。
不对。
它怎么知道事件总线是相关的?落地页里没提“事件总线”,他敲的命令里也没提。
而且它居然很快就略过了那几个名字里带“task”(任务)、“timeout”(超时)的文件,知道那里的逻辑和这次要求的改动毫无关系。要知道,那些是新手最容易上钩的假相关文件。
它像是真的读懂了这个项目,知道哪个模块是核心,知道哪段代码是历史包袱。
就好像这程序本来就是它写的一样。
瑞恩的冷笑慢慢从脸上消失了。
终端里继续在输出文字。
御风给出了第一版改动方案,它没碰那段历史包袱,而是在事件总线上加了一层信号广播,把级联取消挂在了广播那一层。
瑞恩盯着屏幕。
这正是他自己想到过的、但因为懒得动事件总线所以没做的那个方案。
别慌,这只是个巧合。
瑞恩在心里默默告诉自己。
他重新往椅背上靠了靠,强迫自己想了一个合理的解释:事件总线在这个项目里本来就是核心模块,文件体量最大,被扫描到只是概率问题。如果这个团队,它在扫描文件的逻辑上格外花了精力,做到这一步也不是不可能。他们可能就只是擅长干这个。
这个解释站得住脚。
御风继续工作,开始动手写代码。瑞恩盯着终端,等着它在历史包袱那里犯错。那段耦合进主循环的模块,Atlas每次都在这里翻车。
然而,御风没出一点错,耦合逻辑被清理得干干净净。
御风甚至在重构之前先补完了单元测试。
旧的代码被大刀阔斧的删除了,新生成出来的代码结构清晰。
御风又自动跑了一遍单元测试。
全绿,一遍通过。
瑞恩的脸上露出了难以置信的表情。
——这,这怎么可能呢?这个工具,比Atlas还要强?
瑞恩不信邪的又打开了Atlas测试库里的另一个例子,这个例子是Atlas测试库里最恶心的,编号case-42。
到现在为止,Atlas还没有一次能够完整通过过。
瑞恩输入了标准的测试提示词,等着看这个御风会在哪里跌倒。
然而,五分钟之后,御风一遍通过了测试,代码优雅,注释完整,看起来简直不像是AI写出来的代码。
瑞恩不得不强迫自己接受了现状。
对比Nexus Atlas,你让它从需求文档生成代码还可以,但是每次在已有的代码仓库里运行,都会出两类典型故障。
一类是找不准上下文。给它一个修bug的任务,它能在一个十万行的文件夹里满世界乱找,把毫不相关的文件都翻出来塞进提示词里,然后生成一份看起来很专业、但完全没办法运行的代码。
另一类是碰巧找到了相关的代码,也改不对。就算上下文给对了,模型也常常分不清哪段是要遵守的约束,哪段只是参考,出来的结果很不稳定,有的时候能用,有的时候不能用。判断能不能用要花的精力不比直接写少多少。
这两类问题,Nexus的研究和工程团队从八月卡到现在,准确率提升了不少,但完全没到可用的程度。
而御风,这个新工具,至少在他刚才尝试的那两个任务里,看起来把问题都漂亮地解决了。
瑞恩感觉房间里有点儿热,他扯了扯衣领,然后低头看了看电脑上的时间,晚上十点三十七。
瑞恩又看向莎拉的对话框。
莎拉的上一条消息还是十分钟之前。
“中国的网络论坛上有一篇测评「御风」的文章,讨论量非常大,请看一下。【链接】”
瑞恩又顺着对话框看向上面的聊天记录。
“刚才我和开发团队已经一起试用过了,完成度比我们的还要高不少!”
——这是莎拉刚才发来的话,瑞恩本来还觉得莎拉是在大惊小怪,现在这句话看起来格外的刺目。
他没点开莎拉的链接,而是直接拿起了手机,拨通了莎拉的电话。
“……呃,嗨?”接起电话的莎拉有点儿错愕,她虽然经常晚上汇报工作,但是老板却很少会直接回复。在硅谷,即使是在创业公司,老板们还尝试维持着表面的“不鼓励加班”的文化。
“莎拉,现在就联系工程团队、研究团队的负责人,市场负责人,半个小时以后——”瑞恩又看了一下时间,“十一点开线上会。约翰我来联系。”
约翰·斯诺是Nexus AI的CTO。
“十一点?”莎拉在电话那边又确认了一下,“今天?现在?十一点?晚上十一点?”
这个电话的信息量显然有点儿大,冲击了她思考的回路。
“是的。”瑞恩说,“确保所有负责人都上线,给他们发信息,给他们打电话,或者直接去他们家敲门。总之,确保所有人都上线。”
说完,瑞恩挂断了电话。
紧接着,他又联系了约翰,把他刚才测试的过程大概描述了一下。
约翰在电话那边沉默了一下,开口道:“我现在就过来。”
约翰家和瑞恩家住的不远,开车只要五分钟。
挂断了电话,书房里安静了下来。
坐在办公桌前,瑞恩重新看向屏幕,点开了莎拉发来的那个帖子。
帖子是中文,瑞恩用翻译插件翻译了页面,读起来还算通顺。
老张在帖子里痛心疾首:御风重构他的支付模块,自作主张把他写的一段去重逻辑删掉了,没有任何提示。
“它不知道自己不知道”,“潘多拉的魔盒”,“互联网的地基”……
看完这篇文章,瑞恩整个人往椅背上一靠,目光对着书房的窗户。
“这个人什么都不懂。”瑞恩低声说了一句。
老张以为自己在骂的是御风。
但老张不知道的是,御风底下做意图理解、任务编排和技术决策的,正是Nexus的大模型——水星模型。
水星模型的决策风格就是这样的,激进、自信,看见不符合规范的冗余代码就会“顺手改掉”,能删的部分绝不保留。
这是瑞恩本人和研究团队特意选择的技术方向,现在大模型的竞争已经进入白热化,几家巨头的市占率那么高,Nexus作为一家创业公司,要怎么找到自己的定位?
人狠话不多的技术精英,就是Nexus给水星模型选择的定位。
老张那段去重逻辑被悄悄删掉,根本不是因为御风的“幻觉”,而是因为水星的“脾气”。
老张找错攻击的对象了。
但是御风真正的功夫:找对上下文、识别历史包袱、无需人工接管的完成整个任务,这些才是「御风」作为工作流编排工具的核心价值。
模型是可以换的,把激进的换成保守的,水星模型换成别家的模型,老张那段去重可能就保住了。
但是瑞恩现在最好奇的是,源码科技,这个团队,到底是怎么做到的?
第二百零六章 还好,他们没有大模型
很快约翰就来到了瑞恩家。
瑞恩去给约翰开门的时候,妻子艾米丽(Emily)正从楼上下来。她先和约翰挥了挥手,然后压低声音说道:“你们要谈事情,声音小一点,孩子已经睡了。”
瑞恩点了点头。
他带约翰去书房拿上电脑,两人去了地下室的一个房间。
刚坐定,约翰开口了:“你说那个中国公司,把自动化工作流的产品做出来了?”
他的语气里还有点难以置信。
瑞恩点了点头,然后看了一下时间,已经十点五十了。
“一会开会的时候,我会再现场做一遍演示,到时候你再看吧。”瑞恩说。
“也许你一会演示的时候,那个工具就翻车了。”约翰开了一个玩笑。
做这一行的都有过这种经历,很多时候做软件原型,私底下的时候用的都没问题,一到现场演示环节就有没见过的Bug冒出来。
