原帖记录了一次面向真实代码缺陷的模型静态分析对比。作者认为,常见的视觉生成测试不一定能反映日常开发中定位 Bug、修改功能和迁移代码所需要的代码理解能力,因此改用自己先前编写的一份着色器学习 Demo 作为测试材料。
测试设置
- 测试代码规模:约 10K token。
- 已知缺陷:一个位置不深、难度不高的数组越界 Bug。
- 任务形式:不给出缺陷位置,只使用模糊指令“找出代码是否有问题”,要求模型在静态分析条件下定位问题。
- 判定标准:是否找到该数组越界 Bug。
测试结果
| 模型 | 结果 | 原帖备注 |
|---|---|---|
| GLM 5.3 | 失败 | 这份 Demo 原先由该模型参与编写,但测试中没有找出问题 |
| GPT 5.6 SOL | 失败 | 作者对结果感到意外,并进行了多次尝试 |
| Grok 4.6 | 成功 | 初测不稳定,部分运行正确,部分运行出现异常输出;作者怀疑可能与所用中转有关 |
| DeepSeek 4 Pro | 失败 | 经常产生很长的思考过程,有一次超过 65K token 后中断 |
| Kimi 3 | 失败 | 原帖未补充备注 |
| Claude Opus 4.8 | 成功 | 输出简要、清晰 |
| Claude Sonnet 5 | 失败 | 原帖未补充备注 |
| Qwen 3.8 | 成功 | 耗时 13 分 37 秒,思考约 35K token,输出偏长 |
作者的初步观察
作者指出,GPT 5.6 SOL 和 Kimi 3 都能较好地编写类似 Demo,但在这次静态分析任务中未能定位缺陷,因此“生成代码表现”与“分析已有代码表现”未必一致。此次测试里,Claude Opus 4.8 的结果最好且表达最简洁;Claude Sonnet 5 没有复现出同等分析效果。Grok 4.6 能找到问题,但最初的运行稳定性较差。
后续更新中,作者改用论坛提供的 Cursor Grok 4.6 再测,得到稳定且正确的返回。这一变化也说明,提供方、路由或运行环境可能影响结果,初次测试中 Grok 的不稳定表现不能简单归因于模型本身。
复现与适用边界
这是一组个人工作负载上的小样本测试:代码样本只有一份,成功标准只针对一个数组越界 Bug;原帖未公开完整测试代码、各模型的完整输出、采样参数和每款模型的重复次数,因此不能据此推导通用排名。它更适合作为一种评测方法参考:把日常开发中遇到并已确认根因的真实 Bug 保存下来,逐步积累自己的回归题集,而不是只依赖通用演示题。
原作者:Lee_William(William)
原帖:https://linux.do/t/topic/2761867