哈哈小说
第 6 卷 · AI 的前夜 · 第 97 章 · 44 段 · 1588 字

字段

第九十七章 字段

麦景行下午两点到的。

他把笔记本插上屏幕,把上周跑批时输出的一个主模块注释文件打开,放到右侧显示器上。

「就拆这个,」陆衍把椅子推过来,「挨个字段过,能向量化的标出来,写清楚理由。」


主模块注释输出有六个字段。

第一个是 `function_name`,函数名,字符串,内容短,可以。

第二个是 `code_context`,代码片段,长度不定,短的二三十个 token,长的几百个。麦景行说:「这个长度差异太大,短的可以直接向量化,长的塞进去可能影响检索质量。」「先试试。」

第三个是 `annotation_cn`,中文注释正文,语义丰富,向量化收益最大,必须保留。

第四个是 `annotation_en`,英文注释,同上。

第五个是 `version`,版本号,数字,不需要向量化,直接过滤条件。

插图

第六个是 `dependencies`,是其他模块的依赖列表。麦景行展开这个字段的值,里面是一张列表:8 个模块名,外加每个依赖的调用类型(读、写、触发)。

两个人都没说话。

「这个字段不能向量化,」陆衍先开口,「向量化之后关系结构会丢,跟值不值得无关。」

「什么意思?」

「假设主模块 A 和主模块 C 都依赖模块 B。A 是读调用,C 是写调用。向量化之后,这个'读写区别'就消失了,只剩两个模块都依赖 B 这件事。」

麦景行想了一秒。「然后注释的交叉验证用了这个错误关系,」

「就会验收翻车。工业流程里读写调用混了,后面的注释基本是废的。」

「那图索引。」

「对,dependencies 这个字段要建图索引,以模块名为节点,调用类型为边。向量检索找语义,图遍历找关系,两套各跑各的。」

插图

他打开船坞,把这个字段的情况简要说了一遍。

Claude 给了一个实现方向:

> 先跑向量 top-k,取出候选注释,再用图遍历做一跳扩展,把直接依赖的模块注释带进上下文。两套索引共享模块名主键,可以用 NetworkX 先搭原型,验证路径对不对,再考虑生产级图数据库。

他把这段建议看了一遍,自己加了一条:原型阶段先只做单跳扩展,验完泉华五个模块的样本,再决定要不要支持两跳。扩展太快会让调试成本翻倍,现在不值得。

「麦景行,你觉得搭原型的话,两种索引你能拆开做吗?」

「可以,向量我熟,图索引我大概知道怎么搭,用 NetworkX 的话一两天能出原型。」

「那先做两件事:向量索引跑四个可以直接向量化的字段,图索引单独搭,主键用模块名对齐。这周能出原型吗?」

「试试。有问题找你。」

「好。」

插图

下午四点二十,项磊发来一条消息。

「陆总,方晓晨那边答复了。他说原则上接受可行性评估合同,同意验证费可抵扣不退款的结构。但有一个补充要求:泉华的数据安全隔离规格,要写进合同附件,不是口头确认。他们法务说,书面明确对他们内部的合规审批有帮助。」

「让他们把隔离规格发过来,我们看了再修订合同附件。」

项磊:「好,我让他们发。」

他把手机放到桌上,没有立刻动。

这个补充要求在预期之内。工业软件公司的法务不接受口头承诺,这一点他早就知道。但写进附件有一个好处:双方对「隔离环境」的定义对齐了,后续验证阶段就不会有争议。

麦景行还在旁边整理字段分析的笔记。

「方晓晨答复了,他接,但要求我们把隔离环境规格写进合同附件。」

「那就是要签了。」麦景行抬起头,「这一单做下来,架构问题有资金推了?」

插图

「如果六周验证顺利,后续生产合同跟上,资金够搭两个月。」

「那主模块的图索引原型这周就得跑起来。」

「对,别等。」


窗外的光已经偏斜,快五点了。麦景行收拾东西准备走。

陆衍看了一眼今天的字段分析记录:六个字段,五个有路径,一个需要图索引,单跳扩展先跑,后续看结果再扩。

麦景行走后,项磊发来一条:「泉华法务说隔离规格由他们信息安全部来写,发件人会是泉华科技信息安全部。周一上午发给你。」

他把「信息安全部」这四个字看了一眼,把手机放到桌上。

工业软件公司的这个部门,访问要求会比法务更具体,也会更麻烦。