OpenAI 如何利用 Codex 加速工程开发
OpenAI 每天在安全、产品工程、前端、API、基础设施和性能工程团队中使用 Codex,以加速从系统理解和代码库重构到功能部署和事件解决等工程任务。
加速代码理解与入职上手
Codex 使工程师能够在入职、调试或事件响应期间快速导航代码库中不熟悉的部分。它用于定位核心功能逻辑,映射服务与模块之间的关系,并追踪系统中的数据流。在活跃事件期间,Codex 帮助工程师识别组件之间的交互,并追踪故障状态的传播方式。
“当我修复一个 bug 时,我会使用 Ask 模式查看代码库中其他地方是否可能出现相同的问题”
— 检索系统性能工程师
简化重构与迁移
Codex 用于跨多个文件或包应用一致的更改,尤其是在更新超出正则表达式或查找替换能力时。这包括更新 API、迁移依赖项,以及通过拆分过大的模块或用现代模式替换遗留模式来清理代码。
“Codex 将每个遗留的 getUserById( ) 替换为我们的新服务模式,并打开了 PR。它几分钟内完成了原本需要数小时的工作。”
— ChatGPT Web 后端工程师
性能优化与技术债务减少
Codex 通过分析缓慢或内存密集的代码路径(如低效循环和高成本查询)来识别性能瓶颈。它还通过标记风险或弃用的模式来支持整体代码健康,以减少长期技术债务并防止回归。
“我使用 Codex 扫描重复的高成本数据库调用。它非常擅长标记热点路径,并起草我可以稍后调整的批量查询。”
— API 可靠性基础设施工程师
提高测试覆盖率与可靠性
Codex 加速了测试的创建,特别是对于覆盖薄弱或缺失的模块。它基于函数签名和周围逻辑生成单元测试和集成测试,特别关注识别边界条件,如空输入、最大长度和异常有效状态。
“我晚上让 Codex 处理低覆盖率的模块,醒来就能看到可运行的单元测试 PR。”
— ChatGPT 桌面前端工程师
提高开发速度与流畅度
Codex 减少了开发周期开始和结束时的摩擦。它用于搭建样板代码(文件夹、模块、API 存根)、分类 bug、生成发布脚本和创建遥测钩子。此外,工程师使用 Codex 将产品反馈或规格直接转化为起始代码。
为了在碎片化的日程中保持生产力,工程师使用 Codex 捕获未完成的工作或展开探索性任务,使他们能够在不丢失上下文的情况下恢复工作。
“我整天都在开会,但仍然合并了 4 个 PR,因为 Codex 在后台工作。”
— ChatGPT 企业版产品工程师
探索与构思
Codex 用于开放式设计工作,例如验证设计决策、探索替代实现模式(例如,从请求/响应切换到事件驱动),以及通过搜索代码库中的相似模式来识别相关 bug。
Codex 的工程最佳实践
OpenAI 团队使用几种特定习惯来最大化 Codex 的价值:
- 两步工作流:首先使用“Ask 模式”生成实现计划,然后切换到“Code 模式”执行。这使模型保持接地并减少错误。
- 环境优化:迭代改进启动脚本、环境变量和互联网访问,以降低错误率。
- 基于问题的提示:像 GitHub Issue 一样结构化提示,包括文件路径、组件名称、差异和文档片段。
- 任务队列作为待办事项:使用 Codex 任务队列捕获附带的想法或偶然的修复,而无需立即完成完整的 PR。
- 通过 AGENTS.md 保持持久上下文:维护
AGENTS.md文件,为 Codex 提供无法从代码中推断的命名约定、业务逻辑和依赖项。 - 最佳 N 个:为单个任务生成多个响应,以探索各种解决方案或组合不同迭代的部分以获得更强结果。
SUMMARY: OpenAI 在多个技术团队中使用 Codex,以加速代码理解、重构、性能优化和开发速度。
TITLE: OpenAI 如何利用 Codex 加速工程开发