代码生成
用自然语言描述,直接写出可运行的代码
代码与软件入门 #33
输入文本代码
这项能力指什么
输入一段描述(如「写一个函数,把 CSV 读成字典列表并跳过空行」),输出相应的源码。与「代码补全」的区别是它面向一个新功能或整段逻辑,往往从零写出;与「推理」的区别是目标产物是可编译运行的代码,而不只是文字结论。
技术上如何做到
底座是在含大量代码的语料上预训练的语言模型,代码的严格语法让它比自然语言更容易通过执行来验证,因而适合用「跑单元测试」的奖励做强化学习或拒绝采样微调。训练与评测常用带测试用例的题目(如 HumanEval、MBPP),生成时可用多次采样再筛掉不通过的候选。
代表产品
11GPT-4o
2024OpenAI
原生多模态的通用模型,文本、图像与音频走同一个入口
模型 闭源
文本图像音频文本音频
Claude
2023Anthropic
以长上下文与安全对齐见长的通用对话模型
模型 闭源
文本图像文本
DeepSeek-V3
2024DeepSeek
671B 总参数、每 token 只激活 37B 的开放权重 MoE 模型
模型 开放权重
文本文本
Qwen
2023Alibaba (Qwen)
覆盖多规格、含多模态版本的开放权重模型家族
模型 开放权重
文本图像文本
Gemini
2023Google DeepMind
原生多模态、可处理超长上下文的通用模型
模型 闭源
文本图像音频视频文本
GitHub Copilot
2021Microsoft
在编辑器里根据上下文续写与改写代码
工具 免费增值
文本代码代码
o3
2025OpenAI
回答前先生成长的推理链,用推理时的算力换更稳的正确率
模型 闭源
文本图像文本
Claude Code
2025Anthropic
在终端里自主完成多步编码任务的智能体
工具 闭源
文本代码代码
DeepSeek-R1
2025DeepSeek
用强化学习训练推理链、权重以 MIT 许可开放的推理模型
模型 开放权重
文本文本
Devin
2024Cognition (Devin)
自带命令行、编辑器与浏览器的自主编程智能体
应用 闭源
文本代码代码
Cursor
2023Anysphere (Cursor)
以整仓库为上下文的桌面代码编辑器
应用 免费增值
文本代码代码
相关机构
典型用途
- 新功能与工具脚本编写
- 数据清洗与转换脚本
- 测试用例与脚手架生成
- 语言与框架之间的迁移改写
怎么评价它好不好
- pass@k
- 采样 k 次中至少一次通过全部单元测试的比例
- 基准通过率
- 在 HumanEval 等定式数据集上的通过比例
- 编译与静态检查通过率
- 生成代码能否直接通过编译器与类型检查
边界与难点
- 会调用并不存在的库或方法,产生看似合理却无法运行的接口
- 能通过单元测试但在边界条件、异常与安全上留下漏洞
- 跨文件的改动不一致,函数签名在调用处与定义处对不上