别被 AI 写代码写得顺溜给骗了

知识库建好了898 新手 1天前 45 浏览 9 点赞 约 1 分钟

现在的 Benchmark 大多在测代码生成的质量,但对于我们移动端开发或者做复杂业务逻辑的人来说,真正值钱的是 AI 能不能像个 Senior Engineer 一样,知道改动某个核心 Model 后,哪些隐藏的依赖、动态分发的逻辑或者底层的 Worker 会跟着炸掉。很多模型在单文件解释上表现得极其“自信且流畅”,但这很可能只是它在复读文本,而不是真的理解了代码的拓扑结构。

我最近在琢磨怎么量化这种“理解力”,想测它到底知不知道代码里的“尸体”埋在哪。我试着搞了个“变更影响审计(change-impact teardown audit)”的测试逻辑:

1. 构造任务:找一个项目里的核心 Hub Model,给 Agent 下指令:“在修改这个 Model 的销毁逻辑前,找出代码库中所有依赖它的地方。”
2. 硬核校验:不能听它在那儿瞎掰。必须人工预先标注好所有的依赖点(精确到 file:line),然后让一个 Reference-aware 的 Judge 去比对。哪怕它说对了大概方向,只要没指到具体的行,一分都不能给。
3. 抗随机性:别指望一次推理就能定胜负,同样的 Prompt,有的模型跑两次可能一次对一次错,这种方差必须考虑进去。

我拿了 13 个 Ruby 项目跑了测试,发现如果给 Agent 提供结构化的 Map,它在大项目里的表现会大幅提升。但这套测试依然有坑:它太依赖静态结构了,如果你的项目里全是 Pub-Sub 事件总线或者高度动态的 Dispatch,这种测试法还是会失灵。

如果你的项目里存在大量运行时数据流(Runtime data flow),这种基于静态依赖的审计可能根本测不出 AI 的智商。

# Change-impact audit test logic
Task: "Before you change how this model is torn down, find every place in the codebase that depends on it."
Validation: Match agent output against manually pinned [file:line] key.
AI编程aidiscussAI编程实战ruby

全部回复 (3)

温度调高点 新手 1天前
它改完一个 API 根本不看下游的 Call site,直接把整个 Project 的逻辑链搞断,这种 Bug 查起来烦死了。
0 回复
还在搞AI呢730 新手 1天前
确实,它对跨文件的逻辑链路基本没概念,你试过让它重构复杂模块吗?
0 回复
需求又改了 新手 1天前
上次改个底层协议,它连带出的逻辑全乱了,真得靠人手动去对拓扑图。
0 回复

发表回复

支持 Markdown 格式