首富从AI浪潮开始 第25节

  “我从下午三点等到现在”

  “谁也别说话等结果”

  三十六度科技的演播厅不大,两排座位面对面摆着,中间隔了三米。左边CodeSafe,右边BugKiller。头顶有四台摄像机,正前方一块大屏实时投数据。

  赵文渊坐在左边的座位上,穿着熨的没有褶皱的白衬衫,领口的扣子只松开最上面一颗,他朝镜头点了点头。

  五米外,韩路一在右边座位坐下来,他穿一件白色卫衣,胸口写着“Debug the World”。他关掉了所有多余的窗口,屏幕上只留一个终端和BugKiller的管理后台。

  打开视界。

  赵文渊头顶浮出一行淡蓝色的字。

  【赵文渊|31岁|CodeSafe创始人/CEO】

  韩路一多看了一眼,信息展开

  【情绪:平静(隐藏:高度紧张)|核心诉求:证明技术价值|行为模式:背水一战型决策者】

  平静是真的,紧张也是真的,这人是抱着孤注一掷的心态来的。

  韩路一收回视线。

  开场前五分钟,赵文渊站起来走过去,伸出手。

  “NullPointer,久仰。”

  韩路一站起来握了一下:“赵博士,产品做得不错。”

  韩路一没在客套,赵文渊的方向没错,只是在错误的时间打了一场不该打的仗。

  赵文渊笑了笑:“彼此。”

  握完手各自回到座位,摄像机拍到了这一幕,弹幕瞬间炸了一波。

  在线人数破两万。

  主持人站到大屏幕前。

  “各位观众晚上好,欢迎来到三十六度科技「AI代码审查工具公开横评」直播间。”

  “规则此前已经公布,今晚,CodeSafe和BugKiller将在相同代码库、相同条件下进行三轮测试,所有数据实时呈现,社区全程监督。”

  “第一轮测试项目,Go微服务框架,代码量约三万行。”

  “现在”

  “开始!”

第二十八章 让产品说话

  第一轮。Go微服务框架。三万两千行。

  大屏幕上两个进度条同时跑起来。左边蓝色CodeSafe,右边绿色BugKiller。在线观众四万一千,还在涨。

  CodeSafe的扫描速度稍快,进度条先到100%。

  弹幕立刻刷起来。

  “CodeSafe速度好快”

  “等等BugKiller还没跑完?”

  BugKiller的进度条慢了大概七秒,跟着到顶。

  扫描结果不直接上屏。按赛制,每轮由五人技术专家组现场核验,三家公司技术负责人加两位开源社区资深贡献者,逐条确认真Bug还是误报,再把核验数据投上去。

  专家组围着显示器开始过结果。弹幕等得有点急,“快快快”“急什么人家要逐条看代码”。

  六分钟后,核验结果上屏。

  CodeSafe:标记总数24个,确认Bug 24个,误报0个。误报率0%。

  BugKiller:标记总数23个,确认Bug 22个,误报1个。误报率4.5%。每条附影响评估和修复路径。

  专家组组长拿话筒:“三万行级别两款工具都表现不错。CodeSafe多检出两个,零误报,干净利落。BugKiller有一个误报,少检出两个,但每条结果附带的影响评估和修复路径是CodeSafe没有的功能。综合来看,第一轮CodeSafe略占优。”

  赵文渊靠在椅背上,对着镜头点了点头。“两家产品各有所长。不过在标准化的代码审查场景下,检出率和精确率还是硬指标。”

  弹幕滚得很快。

  “CodeSafe第一轮赢了?”

  “零误报确实漂亮”

  “BugKiller那个影响评估挺有意思的,但检出少了两个”

  “完了NullPointer要输?”

  “才第一轮别急”

  韩路一全程没什么反应。他看了一眼大屏上的数据,点了点头,然后低头喝了口水。

  弹幕有人注意到了:“NullPointer这心态也太稳了”“输了一轮跟没事人一样”“是稳还是装的?”

  苏念念窝在出租屋的床上看直播,被子裹到胸口,笔记本电脑架在膝盖上,屏幕左半边直播间右半边BugKiller后台。手机扔在枕头边充着电,旁边散着一小堆橘子皮。

  第一轮结果出来的时候她盯着屏幕愣了两秒。CodeSafe赢了?

  她打开微信给韩路一发了一条:“啊啊啊第一轮输了”

  没回。她想了想,也对,他在直播,不可能看手机。

  她放下手机,开始剥第四颗橘子。心里默算:第一轮三万行,CodeSafe赢。第二轮十二万行。第三轮三十五万行。

  上次八万行的对比测试,BugKiller就已经拉开差距了。十二万行只会更大。

  “第一轮本来就不是我们的主场。”她对着屏幕说了一句。没人听。

  主持人:“感谢双方。第一轮结果已在屏幕上呈现。现在进入第二轮,Python数据处理平台,代码量约十二万行。”

  “开始。”

  进度条再次跑起来。

  这一次,速度差异从第一秒就开始了。

  BugKiller的绿色进度条匀速推进,跟第一轮节奏差不多。

  CodeSafe的蓝色进度条明显慢了。10%正常,20%开始拖,到30%的时候像遇到了什么东西,顿了两秒才跳到31%。

  弹幕比专家敏感。

  “CodeSafe卡了?”

  “正常正常,12万行确实需要时间”

  “BugKiller没卡啊,你看那个绿条”

  “速度差距出来了”

  BugKiller先跑完。韩路一靠在椅背上,双手交叉放在脑后,等着。屏幕上BugKiller的结果已经静静地排好了,五十八条检出整整齐齐。

  CodeSafe的蓝色进度条还在78%。

  弹幕开始倒计时。“80了80了”“快了快了”“这个速度差……”

  等了将近两分钟,CodeSafe才到100%。

  弹幕:“第一轮只差七秒,第二轮差了两分钟”“十二万行拉开这么多?”“代码量翻四倍,差距翻十几倍”

  专家组核验。这次比第一轮久。弹幕能看到专家们反复对照代码,有人皱眉翻回去重看。

  十一分钟后,核验结果上屏。

  BugKiller:标记总数60个,确认Bug 58个,误报2个。误报率3.4%。

  CodeSafe:标记总数48个,确认Bug 41个,误报7个。误报率17.1%。

  专家组组长这次没笑。“CodeSafe有7个误报,其中4个是把正常的异常处理逻辑标成Bug,这说明代码规模增大后,检测引擎的上下文理解在下降。BugKiller多检出的17个里,确认15个为真实Bug。”

  在线人数四万六千。弹幕越来越密了。

  “17%???”

  “专家说了,规模一大就不行”

  “17%的误报率在生产环境里根本不能用”

  “BugKiller稳如老狗,3.4%”

  赵文渊盯着屏幕上的数字。直播里不能暂停,不能查日志。所有人都在看着他。

  “十二万行项目确实对检测引擎有更高要求。我们现在正在进行下个版本的迭代和优化。”

  韩路一的声音从右边传过来。不大,但收音很清楚。

  “赵博士,开始第三轮吧。”

  弹幕:“不给他解释的时间”“尊重对手的方式,快点结束”

  主持人看了一眼两边。

  “第三轮,Java企业级核心系统,代码量约三十五万行。”

  在线人数破五万。弹幕停了一瞬间,五万人同时屏住了呼吸。

第二十九章 道高一丈

  “开始!”

  BugKiller的绿色进度条匀速推进,跟前两轮没有区别,10%、20%、30%,速度几乎一样。

  CodeSafe的蓝色进度条从一开始就不对。

  10%的时候还正常,20%的时候明显变慢,30%的时候几乎是在一格一格地挪,右侧实时面板上标记的问题数在跳

  标记数:14...21...35...

  弹幕先注意到的不是数字,是速度。

  “CodeSafe卡住了?”

  “没卡,在跑,就是巨慢”

  “BugKiller三十五万行跟前两轮一个速度,CodeSafe这是怎么了”

  40%,标记数跳到58。

  弹幕开始算账了。

  “BugKiller扫同样的项目根本不卡,CodeSafe40%就跑了快三分钟?”

  “第二轮12万行慢两分钟,这次35万行怕不是要慢十分钟”

  “这不是线性增长,这是指数级的吧……”

  50%,标记数79,进度条挪一格要七八秒。

  “我现在的心情就像看着温度计往上走”

首节上一节25/248下一节尾节目录