银行、ATM 和气象系统背后那些没人敢动的 COBOL、Fortran 老代码,AI 现在能处理到什么程度?小编先给结论:OpenAI 公布了 COBOL 和 Fortran 编码评测,称其最新模型在涵盖 20 种语言的 MultiLangBench 上平均测试通过率达到 87.4%;但 OpenAI 自己也强调,生产使用仍需要专家审查。
OpenAI 已把 MultiLangBench 的评测设置和测试套件放到 GitHub,并给出每种语言的结果。公司说,语言的选择参考了开发者和企业客户的反馈,除了 COBOL 和 Fortran,还包括 Visual Basic、OCaml 等 16 种。OpenAI 解释:“这项工作由开发者和企业客户的反馈引导,他们告诉我们,编码模型常常在这些语言上吃力。”
为什么盯上 COBOL:银行和 ATM 的底层
OpenAI 把这项工作放在“运营者没法轻易替换的软件”背景下:COBOL 支撑着超过 40% 的网上银行系统、80% 的线下信用卡交易和 95% 的 ATM 交易,Fortran 则出现在天气预报和核反应堆安全分析里。维护这些系统的难点早于 AI 工具:文档可能不全,原开发者可能已离职,业务规则可能只存在于代码里。不管是修 bug 还是迁移到别的语言,团队都得保住系统依赖的行为。
MultiLangBench:从零重写 SQLite
这个基准要求模型用指定语言,写出一个兼容 SQLite 的数据库引擎。数据库文件充当共享接口:候选程序拿到初始数据库和一条 SQL 查询,生成修改后的数据库,再由参考的 SQLite 实现检查结果内容是否一致。测试改编自 SQLite 现有的测试套件,结果同时报告测试通过率和 API 成本。模型得组织代码库、管理状态、处理错误,并在保持原有功能的前提下增加功能。
在最大推理强度下,GPT-6 Astra 在 20 种语言中的 19 种得分超过 83%,COBOL 仍是最难的,为 72%。相比 GPT-5.6 Sol 的提升包括:
| 语言 | GPT-5.6 Sol | GPT-6 Astra |
|---|---|---|
| COBOL | 10.9% | 72.1% |
| Fortran | 21.4% | 83.5% |
| Visual Basic | 27.5% | 89.4% |
| OCaml | 25.6% | 85.8% |
COBOL 迁移:要求逐字节一致
第二项评测要求模型把现有 COBOL 程序迁移到 C++、Java、Kotlin、Python 或 Rust,同时保持行为不变。隐藏测试要求可观察输出逐字节一致,只有全部测试通过才算迁移成功。小的语义细节决定成败,比如 COBOL 的定点运算,除非明确要求四舍五入,否则会舍掉多余的小数位。
GPT-6.1 Sol 在低推理强度下准确率达到 86.6%,同设置下 GPT-5.6 Sol 只有 5.4%,而成本低 39%,即只有 API 成本的 61%;在更高推理强度下,准确率升到 97.9%,OpenAI 形容这使评测接近饱和。
Luna:用准确率换成本
GPT-6 Luna 在最大推理强度下,MultiLangBench 平均通过率为 40.3%,在每种测试语言上都优于 GPT-5.6 Sol:COBOL 17.1%、Fortran 31.4%、OCaml 34.1%、Visual Basic 41.6%。估算的平均 API 成本是每个样本 0.77 美元,而 GPT-5.6 Sol 为 3.48 美元,低约 78%。每个样本的价格,已经成为模型发布时的常规对比点,同时业界也在争论开源模型的收入分成。
上生产仍需专家把关
OpenAI 明确说,生产使用仍需要专家审查,并要对照业务规则和依赖项做测试。这些评测衡量的是在既定测试上的行为,而非是否做好了上线准备,公布的数字描述的是通过率和 API 成本,不是部署结果。OpenAI 称,这些结果说明其模型越来越擅长处理各种编程语言,同时成本效率更高,这些模型可通过 API 用于编码任务。
常见问题(FAQ)
MultiLangBench 测什么?
要求模型用指定语言写出兼容 SQLite 的数据库引擎,测试改编自 SQLite 自身的测试套件。
COBOL 迁移评测怎么算成功?
要求可观察输出逐字节一致,所有隐藏测试都通过才算成功。
现在能直接让 AI 迁移银行系统吗?
不建议。OpenAI 自己说明需要专家审查并对照业务规则测试,评测不等于上线就绪。
Luna 和 Astra 怎么选?
Luna 成本低约 78%,但平均通过率只有 40.3%;Astra 通过率高得多,取决于您更看重准确率还是成本。
