评估在代码上训练的大语言模型:OpenAI Codex
OpenAI 推出了 Codex,这是一个在 GitHub 公开代码上进行微调的 GPT 语言模型。Codex 旨在从自然语言 docstrings 中合成 Python 代码,在功能正确性方面显著优于 GPT-3 和 GPT-J 等通用模型。
在 HumanEval 上的表现
Codex 使用 HumanEval 进行评估,这是 OpenAI 发布的一个新的评估集,用于衡量从 docstrings 合成的程序的 functional correctness。
重复采样策略
从模型中进行重复采样是提高针对困难提示词生成有效解决方案成功率的一种有效策略。通过为每个问题生成 100 个样本,Codex 的成功率提高到了 70.2%。
模型局限性
尽管具备这些能力,Codex 在生成正确代码的能力方面表现出特定的技术局限性。该模型在以下方面表现挣扎:
- 长操作链: 当 docstrings 描述一系列长而复杂的操作时,Codex 会遇到困难。
- 变量绑定: 该模型偶尔无法正确地将操作绑定到变量。
更广泛的影响
OpenAI 讨论了部署强大的代码生成技术可能带来的更广泛影响,重点关注三个主要领域:
- 安全性: 与生成潜在不安全或有缺陷的代码相关的风险。
- 安全性: AI 生成的代码可能引入的漏洞。
- 经济学: 自动化代码生成对软件工程专业和经济的影响。