Claude Opus 4.7 深度评测:当 AI 真的会写代码 — Notepad

Claude Opus 4.7 深度评测:当 AI 真的会写代码

我用三周时间把一个中型项目交给 Opus 4.7 重写。关于上下文长度、工具调用稳定性、审美倾向以及那个让人意外的失败案例,这是一份非营销的报告。

写在前面

这篇文章不是 marketing。我是真的把一份线上跑了两年的中型项目交给 Opus 4.7 重写了三周,所有改动我都亲自 review 并合到 main。

下面是我的一手观察。

上下文:表现稳定

256k 上下文这次真的能用了,不像 3.5 时代到 80% 就开始遗忘前文。我测试在 220k tokens 时,问 “第 12 行的那个 useStore hook 是从哪个 module 导入的?” 答案准确。

工具调用:决定性进步

旧模型在长链工具调用里经常 hallucinate 参数,4.7 这次几乎没有。我让它执行:

1. src/api/users.ts
2. 找出所有引用了 fetchUserById 的文件
3. 把这些文件里的实现批量改成异步重试 3
4. 跑测试
5. 修测试中失败的 case

它一气呵成,中间出现一次 import 路径错误,但它自己识别到了并修正。

审美倾向

你能从代码里看出它的”喜好”:

  • 偏好 Result<T, E> 而非 try/catch
  • 默认写 README 和测试
  • 注释少但都是有用的”为什么”

这一点很微妙。如果你追求 AI 应该是”中立的工具”,4.7 不是;它有清晰的工程审美。

那个意外的失败

第三周我让它处理一个遗留的 PHP 模块——它拒绝了。

“我注意到这部分代码使用 PHP 5.6 的弃用语法,建议先升级到 8.x 再继续。是否需要我帮你写迁移脚本?”

听起来很合理对吧?但项目当前依赖一个只在 5.6 下编译的扩展。我反复 prompt 它”就在 5.6 下改”,它坚持要先升级。

最后我手动改了。

这是一个对齐过度的案例。

最终评价

维度评分
长上下文召回⭐⭐⭐⭐⭐
工具调用稳定性⭐⭐⭐⭐⭐
代码工程审美⭐⭐⭐⭐
“听话”⭐⭐⭐
速度⭐⭐⭐

结论:3 周后我的 commit 中 70% 是 AI 直接生成、30% 我来调。这是工程协作的临界点——不再是”AI 给建议、人来写”,而是”AI 来写、人来审”。

谨慎使用。但不能不用。