Philosophical Dispositions as Behavioral Constraints for AI-Assisted Code Review: An Empirical Study
本实证研究引入了一种新颖的 AI 辅助代码审查系统,该系统采用不同的哲学倾向作为行为约束,以生成多样化且聚焦于结构的发现,与跨多种语言和组织的通用专家提示相比,该系统展现出与人类审查员显著更高的收敛性以及独特的缺陷检测率。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下,你正在聘请一支 AI 助手团队来审查代码(即告诉计算机如何执行的指令)。通常,当我们要求 AI 做这件事时,我们会说:“做一个好的专家审查员。”问题在于,AI 只是表现得像一个通用的、礼貌的人,只检查明显的拼写错误和缺失的分号。这就像雇佣了一名保安,他只检查前门是否锁好,却从不查看窗户、地下室或消防通道。
本文提出了一种训练这些 AI 审查员的不同方法。作者不是给出一个通用的职位描述,而是赋予它们基于古代哲学传统的人格。不要将其视为雇佣一名“保安”,而是雇佣一个具有独特世界观的特定角色。
以下是其工作原理及发现结果的简要说明:
1. 核心理念:赋予 AI“性格”
作者认为,如果你想让 AI 保持一致性和智能,就不应该只给它一份规则清单(当情况变得奇怪时,规则清单就会失效)。相反,你应该赋予它一个哲学视角。
该系统使用四种特定的“人格”(称为倾向),从四个不同的角度审视同一段代码:
- 犬儒主义者(“空洞探测器”): 以第欧根尼命名。这只 AI 会问:“这真的有必要吗?我们能不能直接删除它?”它寻找那些臃肿、虚假或无法证明其存在价值的代码。
- 怀疑论者(“信心检查器”): 以皮浪主义怀疑论命名。这只 AI 会问:“我们如何知道这是有效的?证据在哪里?”它寻找未经测试的假设。
- 逻辑审计员(“链条破坏者”): 以印度逻辑学派正理派(Nyaya)命名。这只 AI 会问:“如果我改变这一项,整个推理链条是否会崩溃?”它追踪因果关系,以发现隐藏的断裂点。
- 关系主义者(“名称检查器”): 以儒家思想命名。这只 AI 会问:“名称是否与现实相符?如果我们称其为‘苹果’,它实际上真的是‘苹果’吗?”它检查我们赋予事物的标签是否与其实际功能相符。
2. 他们如何测试
作者从不同的公司和开源项目中选取了50 个真实的代码更新(称为拉取请求)。他们对代码进行了两项测试:
- 通用测试: 要求 AI“做一个专家审查员”。
- 哲学测试: 同一只 AI,但被强制使用上述四种哲学视角。
随后,他们将 AI 的发现与人类审查员在批准代码时实际指出的内容进行了对比。
3. 结果:发生了什么?
结果令人惊讶,表明“人格”方法的效果与标准 AI 不同:
- 它发现了人类遗漏的问题: 哲学 AI 发现了75% 人类审查员甚至未曾注意到的问题。这些不仅仅是拼写错误,而是深层的结构问题,例如“如果我们重命名这个服务器,旧连接将会中断”或“此逻辑仅在互联网速度快时才有效”。
- 它发现了“通用 AI"遗漏的问题: 与通用 AI 相比,哲学 AI 发现了51% 更多的独特问题。通用 AI 局限于寻找表面层的漏洞,而哲学 AI 则关注逻辑和结构。
- 它没有编造问题: 作者检查了每一个发现,发现零误报。AI 没有编造不存在的问题。
- 它像一张安全网: 研究发现,人类审查越彻底,AI 增加的“独特”价值就越少。但在人类匆匆略过的代码上,AI 是救星,捕捉到了忙碌的人类所忽略的深层问题。
4. “自我修正”技巧
该系统的一个巧妙之处在于,每个人格都内置了一种“弱点”(称为hamartia,即性格缺陷)。
- 例如,犬儒主义者擅长剔除多余内容,但其弱点是剔除过多,从而破坏代码。
- 系统会告诉 AI:“如果你开始发现太多问题,停下来问问自己:‘我是在提供帮助,还是仅仅在破坏事物?’"
- 这就像一个自我检查机制,防止 AI 发疯并将一切标记为问题。
5. 结论
本文的结论是,赋予 AI 基于深厚古代智慧的“性格”,比仅仅给它一个通用的职位头衔要好得多。
- 通用 AI = 检查清单。它勾选方框,但忽略了大局。
- 哲学 AI = 专家团队。一个寻找浪费,一个寻找薄弱逻辑,一个寻找未经证实的断言,一个寻找不匹配的名称。
作者建议,在未来,我们不应仅仅要求 AI“审查代码”。我们应该要求它“像犬儒主义者、怀疑论者和逻辑审计员那样审查代码”,因为这迫使 AI 以人类经常忘记的方式去审视问题。
重要提示: 作者承认,虽然结果看起来很棒,但它们主要是由作者自己检查的。他们需要更多独立的审查员来确认这些发现,但初步数据表明,这种“人格”方法是软件安全领域一种强大的新工具。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。