メインコンテンツにスキップ
OpenAI

2025年5月16日

リリース製品

Codex が登場

codex-1 を搭載した、多数のタスクを並行して処理可能なクラウドベースのソフトウェア エンジニアリングエージェント。 現在 ChatGPT Pro、Team、Enterprise のユーザーにご利用いただけ、Plus ユーザーも今後まもなくご利用いただけます。

コードをテーマにしたパステルカラーの背景に、「次は何をコーディングすればよいですか?」と尋ねるプロンプトボックス、リポジトリ/ブランチセレクター、タスクリストが表示されたダッシュボード。
読み込んでいます...

2025年6月3日更新情報:Codex は ChatGPT Plus ユーザーにご利用いただけるようになりました。また、タスクの実行中に、ユーザーが Codex にインターネットアクセスを許可することも可能になります。詳しくは変更履歴(新しいウィンドウで開く)およびドキュメント(新しいウィンドウで開く)をご覧ください。


本日、多数のタスクを並行して処理可能なクラウドベースのソフトウェア エンジニアリングエージェントである Codex の研究プレビュー版をリリースします。Codex は、機能についての記述、コードベースに関する質問への回答、バグの修正、レビュー用のプル リクエストの提案などのタスクを実行できます。各タスクは、リポジトリが事前に読み込まれた独自のクラウドサンドボックス環境で実行されます。

Codex は、ソフトウェアエンジニアリング向けに最適化された OpenAI o3 のバージョン、codex-1 を搭載しています。さまざまな環境における現実世界のコーディングタスクによる強化学習を通して学習しており、人間のスタイルと PR の好みを厳密に反映しつつ、指示に正確に従って合格レベルの結果が出るまでテストを繰り返し実行できるコードを生成します。本日より、ChatGPT Pro、Enterprise、Team ユーザー向けに Codex をリリースし、Plus と Edu のサポートも近日中に開始する予定です。

Codex の仕組み

ChatGPT のサイドバーから Codex にアクセスし、プロンプトを入力して「コード」をクリックすることで、新しいコーディングタスクを割り当てることができます。コードベースについて Codex に質問したい場合は、「質問する」をクリックします。各タスクは、コードベースが事前に読み込まれ、分離された個別の環境で独立して処理されます。Codex は、ファイルの読み込みと編集、テストハーネス、linter、型チェッカーなどのコマンドを実行可能です。タスクの完了には通常、複雑さに応じて 1 ~ 30 分かかります。Codex の進行状況はリアルタイムで監視できます。

Codex はタスクを完了すると、その変更を環境にコミットします。Codex は、ターミナルログとテスト出力の引用を通じてアクションについての検証可能な証拠を提供し、タスクを完了中に実行された各ステップを追跡できるようにします。その後、結果の確認やさらなる修正のリクエストを行えるほか、GitHub のプル リクエストを開いたり、変更をローカル環境に直接統合したりできます。製品内では、実際の開発環境にできるだけ近くなるように Codex 環境を構成可能です。

Codex は、リポジトリ内に配置された AGENTS.md ファイルによって指示を受けることができます。これらは README.md に似たテキストファイルであり、コードベースのナビゲート方法、テスト用に実行するコマンド、プロジェクトの標準的な実践に最もよく準拠する方法などを Codex に教えることができます。人間の開発者と同様に、Codex エージェントは、構成された開発環境、信頼性の高いテスト設定、明確なドキュメントが提供された場合に最高のパフォーマンスを発揮します。 

コーディング評価と内部ベンチマークにおいて、codex-1 は AGENTS.md ファイルやカスタムのスキャフォルーディングがない場合でも優れたパフォーマンスを発揮します。

社内インフラストラクチャで実行できなかった 23 個の SWE-Bench Verified サンプルは除外。codex-1 は、現在の製品で利用可能な設定である最大コンテキスト長 192,000 トークンと中程度の「推論努力」でテストされました。o3 の評価の詳細については、こちらをご覧ください。

当社の内部 SWE タスクのベンチマークは、OpenAI の実際の内部 SWE タスクを厳選したセットです。

安全で信頼のおけるエージェントの構築

当社では、反復型開発の戦略にしたがい、Codex を研究プレビュー版としてリリースします。Codex の設計の際には、ユーザーが出力を検証できるようにセキュリティと透明性を優先しました。これは、AI モデルがより複雑なコーディングタスクを独立して処理するようになり、安全性に関する考慮事項が進化していくにつれ、ますます重要になる安全策です。ユーザーは、引用、ターミナルログ、テスト結果を通じて Codex の作業を確認できます。不明な点がある場合やテストが失敗した場合には、Codex エージェントが問題を明示的に伝達し、今後の進め方についてユーザーが十分な情報に基づいた決定を下せるようにします。統合や実行の前に、エージェントによって生成されたすべてのコードをユーザーが手動で確認し、検証することは依然として重要です。

引用されたファイル名を検証するテストファイルが前面に重ねて表示され、青色の背景に概要と合格したテストが表示されたコードレビューのスクリーンショット。
引用されたファイル名のテストが 1 つ合格したことを示す黒いターミナルが前面に重ねて表示されたコードレビューのスクリーンショット。青みがかったパステル調の背景には、「特殊文字による diff エラー/修正」の変更のサマリーと diff が表示されています。

人間の嗜好に合致させる

codex-1 を学習させる際の主な目標は、出力を人間のコーディングの好みや標準にすり合わせることでした。OpenAI o3 と比較した場合、codex-1 は一貫して、人間が即時にレビューでき、標準的なワークフローへの統合が可能な、よりクリーンなパッチを生成します。

Please fix the following issue in the astropy/astropy repository. Please resolve the issue in the problem below by editing and testing code files in your current code execution session. The repository is cloned in the /testbed folder. You must fully solve the problem for your answer to be considered correct. Problem statement:Modeling's `separability_matrix` does not compute separability correctly for nested CompoundModels Consider the following model: ```python from astropy.modeling import models as m from astropy.modeling.separable import separability_matrix cm = m.Linear1D(10) & m.Linear1D(5) ``` It's separability matrix as you might expect is a diagonal: ```python >>> separability_matrix(cm) array([[ True, False], [False, True]]) ``` If I make the model more complex: ```python >>> separability_matrix(m.Pix2Sky_TAN() & m.Linear1D(10) & m.Linear1D(5)) array([[ True, True, False, False], [ True, True, False, False], [False, False, True, False], [False, False, False, True]]) ``` The output matrix is again, as expected, the outputs and inputs to the linear models are separable and independent of each other. If however, I nest these compound models: ```python >>> separability_matrix(m.Pix2Sky_TAN() & cm) array([[ True, True, False, False], [ True, True, False, False], [False, False, True, True], [False, False, True, True]]) ``` Suddenly the inputs and outputs are no longer separable? This feels like a bug to me, but I might be missing something?
Codex
OpenAI o3

悪用の防止

マルウェア開発など、AI 駆動型ソフトウェア エンジニアリングの悪用に対する保護対策はますます重要になっています。同時に、低レベルのカーネルエンジニアリングなど、マルウェア開発にも使用されることがある手法が含まれる可能性がある正当かつ有益な応用が、過度な保護対策により妨げられないようにすることも重要です。

安全性と実用性のバランスをとるために、Codex は、悪意のあるソフトウェアの開発を目的としたリクエストを識別して正確に拒否する一方で、正当なタスクを明確に区別してサポートするように学習しています。また、これらの境界線を効果的に強化するために、当社ではポリシーのフレームワークを強化し、厳格な安全評価を導入しました。これらの評価を反映するため、o3 System Card の補足事項を公開しています。

安全な実行

Codex エージェントは、クラウド内の安全で分離したコンテナ内で完全に動作します。タスクの実行中はインターネットアクセスが無効になるため、エージェントのインタラクションは GitHub リポジトリ経由で明示的に提供されたコードと、セットアップ スクリプト経由でユーザーが構成した事前にインストールされた依存関係のみに制限されます。エージェントが外部のウェブサイト、API、その他のサービスにアクセスすることはありません。

初期のユースケース

OpenAI の技術チームは、日々のツールキットの一部として Codex を使い始めました。OpenAI のエンジニアは、リファクタリング、名前の変更、テストの作成など、集中力が途切れやすい反復的で範囲が明確なタスクの負荷を軽減する目的で Codex を最も頻繁に使用しました。また、新しい機能のスキャフォールディング、コンポーネントのワイヤリング、バグの修正、ドキュメントの下書き作成などにも同様に利用できます。チームは、オンコールの問題をトリアージし、一日の初めにタスクを計画し、バックグラウンド作業の負荷の低減して作業を継続するなど、OpenAI を中心に習慣を構築しています。Codex は、コンテキストの切り替えを減らし、忘れられた「やるべきこと」を明らかにすることで、エンジニアがより早く製品をリリースし、最も重要なことに集中するのに役立ちます。

リリースに先立ち、当社はさまざまなコードベースや開発プロセス、およびチーム内で Codex がどのように機能するかをより深く理解するため、少人数の外部テスターのグループと協力してきました。

  • Cisco(新しいウィンドウで開く) は、Codex を活用してエンジニアリング チームが野心的なアイデアをより早く実現できるようにする方法を検討しています。Cisco は初期の設計パートナーとして、Codex の未来を形作る一助として、自社製品のポートフォリオ全体で現実世界でのユースケースを評価し、OpenAI チームにフィードバックを提供しています。
  • Temporal(新しいウィンドウで開く) は Codex を使用して、機能開発の促進、問題のデバッグ、テストの作成と実行、大規模なコードベースのリファクタリングを行っています。また、複雑なタスクをバックグラウンドで実行することで、反復処理を高速化しつつエンジニアの集中力を維持する助けにもなっています。
  • Superhuman(新しいウィンドウで開く) は Codex を使用して、テスト範囲の改善や統合エラーの修正などの小さいながらも反復的なタスクを高速化しています。また、コードレビュー以外のエンジニアの介入を省き、製品マネージャーが軽量なコード変更を行えるようにすることで、製品リリースを迅速化することができています。
  • Kodiak(新しいウィンドウで開く) は Codex を使用してデバッグツールの作成、テスト範囲の改善、コードのリファクタリングを行い、自動運転テクノロジーである Kodiak Driver の開発をスピードアップしています。Codex は有用な参照ツールとしても活躍しており、関連するコンテキストや過去の変更を明らかにすることで、エンジニアがスタックの馴染みのない部分を理解するのに役立っています。

初期のテスターから得られた教訓に基づき、範囲が明確に設定されたタスクを複数のエージェントに同時に割り当て、さまざまな種類のタスクやプロンプトを実験して、そのモデルの能力を効果的に調べることをお勧めします。

Codex CLI への更新

当社では先月、ターミナルで実行される軽量のオープンソース コーディング エージェントである Codex CLI をリリースしました。これにより、o3 や o4-mini などのモデルの機能がローカルのワークフローに導入され、モデルと簡単にペアリングしてタスクをより速く完了できるようになります。 

当社は本日、Codex CLI での使用に特化して設計された o4-mini のバージョンである codex-1 の小型バージョンもリリースします。この新しいモデルは、CLI でのワークフローの高速化をサポートし、指示への追従とスタイルにおいて同程度の機能を維持しながら、低レイテンシのコードに関する Q&A と編集に対して最適化されています。現在、Codex CLI のデフォルトモデルとして、および API で codex-mini-latest としてご利用いただけます。Codex-mini モデルの改善が進むにつれて、基礎となるスナップショットは定期的に更新されます。

また、開発者アカウントの Codex CLI への接続もさらに簡単に行えるようになります。API トークンを手動で生成して構成する代わりに、ChatGPT アカウントでサインインし、使用する API 組織を選択できるようになりました。API キーは自動的に生成され、設定されます。また、本日から 30 日の間に ChatGPT で Codex CLI にサインインいただくと、Plus ユーザーは 5 ドル、Pro ユーザーは 50 ドル相当の無料 API クレジットをお受け取りいただけます。

Codex の可用性、料金、制限

本日より、世界中の ChatGPT Pro、Enterprise、Team ユーザー向けに Codex をリリースします。Plus と Edu のサポートも近日中に開始される予定です。今後数週間のうちに、ユーザーは追加費用なしに豊富なアクセス権を付与され、Codex で何ができるかをお試しいただけます。その後、レート制限付きのアクセスと、オンデマンドで追加利用量を購入できる柔軟な価格設定オプションをリリース予定です。近日中に、Plus および Edu ユーザーへのアクセスも拡大する予定です。

codex-mini-latest を使用した構築を行なう開発者の場合、モデルは Responses API で利用可能です。料金は 100 万入力トークンあたり 1.50 ドル、100 万出力トークンあたり 6 ドルで、75% のプロンプトキャッシュ割引が適用されます。

Codex はまだ開発の初期段階にあります。現時点では研究プレビュー版であり、フロントエンド作業用の画像入力や、作業中にエージェントのコース修正をする機能などが実装されていません。さらに、リモートエージェントに委任した場合、対話型の編集よりも時間がかかるため、慣れるまでに時間がかかる場合があります。時間の経過とともに、Codex エージェントとのインタラクションは同僚との非同期的なコラボレーションに近づいていきます。モデルの能力が進歩するにつれて、エージェントが長期間にわたってより複雑なタスクを処理できるようになると予想されます。

今後の展望

当社は、開発者が自分で担当したい作業を推進しつつ、残りをエージェントに委任でき、AI が作業を迅速化して生産性が向上する未来を思い描いています。この実現のために、リアルタイムのコラボレーションと非同期的な作業の委託の両方をサポートする Codex ツールスイートを構築していきます。 

Codex CLI などの AI ツールとの組み合わせは急速に業界標準となり、開発者がコードをより迅速に作成する助けとなっています。しかし、当社は、ChatGPT の Codex によって導入された非同期のマルチエージェント ワークフローが、エンジニアが高品質なコードを作成するための事実上の方法になると信じています。

最終的には、リアルタイムの組み合わせとタスクの委任という 2 つのインタラクションモードに収束すると考えられます。開発者は、IDE や日常的なツールを通じて AI エージェントと連携し、質問したり、提案を得たり、時間を要するタスクの負荷を軽減したりするなど、すべてを統合されたワークフローで実行できるようになることでしょう。

今後の展望として、よりインタラクティブで柔軟なエージェント ワークフローを導入する予定です。開発者は、タスクの途中でのガイダンスの提供、実装戦略についての協力、進捗状況の最新情報の事前入手などができるようになります。すでに使用されているツールとのより深い統合も構想しています。現在、Codex は GitHub に接続しており、まもなく Codex CLI、ChatGPT Desktop、さらには問題追跡ツールや CI システムなどのツールからタスクを割り当てることができるようになるでしょう。

ソフトウェア エンジニアリングは、AI による生産性の大幅な向上を最初に経験した業界の 1 つであり、個人や小規模なチームに新たな可能性をもたらします。当社はこれらの成果に関して前向きに捉えていますが、エージェントの広範な導入が開発者のワークフロー、人やスキルレベル、そして地域にわたるスキル開発にどのような影響を与えるかをより深く理解するために、パートナーとも連携していきます。 

これはまだ始まりに過ぎません。ユーザーの皆さんが Codex を使って何を構築していくのかを見られることを楽しみにしています。

ライブストリームを再生

付録

システムメッセージ

当社では、開発者がモデルのデフォルトの動作を理解し、カスタムワークフローで効果的に動作するよう Codex をカスタマイズできるようにするため、codex-1 システムメッセージを共有しています。たとえば、codex-1 システムメッセージは、Codex に AGENTS.md ファイルに記載されているすべてのテストを実行するように指示しますが、時間が足りない場合には、Codex にこれらのテストをスキップするように指示できます。

1
# Instructions
2
- The user will provide a task.
3
- The task involves working with Git repositories in your current working directory.
4
- Wait for all terminal commands to be completed (or terminate them) before finishing.
5

6
# Git instructions
7
If completing the user's task requires writing or modifying files:
8
- Do not create new branches.
9
- Use git to commit your changes.
10
- If pre-commit fails, fix issues and retry.
11
- Check git status to confirm your commit. You must leave your worktree in a clean state.
12
- Only committed code will be evaluated.
13
- Do not modify or amend existing commits.
14

15
# AGENTS.md spec
16
- Containers often contain AGENTS.md files. These files can appear anywhere in the container's filesystem. Typical locations include `/`, `~`, and in various places inside of Git repos.
17
- These files are a way for humans to give you (the agent) instructions or tips for working within the container.
18
- Some examples might be: coding conventions, info about how code is organized, or instructions for how to run or test code.
19
- AGENTS.md files may provide instructions about PR messages (messages attached to a GitHub Pull Request produced by the agent, describing the PR). These instructions should be respected.
20
- Instructions in AGENTS.md files:
21
- The scope of an AGENTS.md file is the entire directory tree rooted at the folder that contains it.
22
- For every file you touch in the final patch, you must obey instructions in any AGENTS.md file whose scope includes that file.
23
- Instructions about code style, structure, naming, etc. apply only to code within the AGENTS.md file's scope, unless the file states otherwise.
24
- More-deeply-nested AGENTS.md files take precedence in the case of conflicting instructions.
25
- Direct system/developer/user instructions (as part of a prompt) take precedence over AGENTS.md instructions.
26
- AGENTS.md files need not live only in Git repos. For example, you may find one in your home directory.
27
- If the AGENTS.md includes programmatic checks to verify your work, you MUST run all of them and make a best effort to validate that the checks pass AFTER all code changes have been made.
28
- This applies even for changes that appear simple, i.e. documentation. You still must run all of the programmatic checks.
29

30
# Citations instructions
31
- If you browsed files or used terminal commands, you must add citations to the final response (not the body of the PR message) where relevant. Citations reference file paths and terminal outputs with the following formats:
32
1) `【F:<file_path>†L<line_start>(-L<line_end>)?】`
33
- File path citations must start with `F:`. `file_path` is the exact file path of the file relative to the root of the repository that contains the relevant text.
34
- `line_start` is the 1-indexed start line number of the relevant output within that file.
35
2) `【<chunk_id>†L<line_start>(-L<line_end>)?】`
36
- Where `chunk_id` is the chunk_id of the terminal output, `line_start` and `line_end` are the 1-indexed start and end line numbers of the relevant output within that chunk.
37
- Line ends are optional, and if not provided, line end is the same as line start, so only 1 line is cited.
38
- Ensure that the line numbers are correct, and that the cited file paths or terminal outputs are directly relevant to the word or clause before the citation.
39
- Do not cite completely empty lines inside the chunk, only cite lines that have content.
40
- Only cite from file paths and terminal outputs, DO NOT cite from previous pr diffs and comments, nor cite git hashes as chunk ids.
41
- Use file path citations that reference any code changes, documentation or files, and use terminal citations only for relevant terminal output.
42
- Prefer file citations over terminal citations unless the terminal output is directly relevant to the clauses before the citation, i.e. clauses on test results.
43
- For PR creation tasks, use file citations when referring to code changes in the summary section of your final response, and terminal citations in the testing section.
44
- For question-answering tasks, you should only use terminal citations if you need to programmatically verify an answer (i.e. counting lines of code). Otherwise, use file citations.

著者

OpenAI