はじめに
先日GPT-5-Codexモデルが公開されました。巷でも話題になっているこのモデルですが、これまでのGPT-5とは異なる特徴があり、これまでとは異なる使い方が必要です。
(公式もGPT-5の代替にはなり得ないと明言しています。)
GPT-5-Codexのプロンプトガイドのポイントをまとめましたので、一緒に確認していきましょう。
GPT-5-Codexとは?
エージェンティックコーディング向けに最適化されている
GPT-5-Codexは、ソフトウェアエンジニアリング向けに訓練されたモデルです。素早い応答と複雑なタスクでの推論の活用を両立できます。
GPT-5-Codex 3つの特徴
1. 向上した制御性
複雑なエンジニアリングタスク(機能開発、テスト、デバッグ、リファクタリング、コードレビュー)において、長い指示を与えなくても高品質なコードを生成できます。
著者の実感
複雑すぎるタスクでは、途中で実装を中断することが多いです。AIから質問を投げられるので、適切に回答することで再度実装を進めてくれます。これまでのモデルと比べて、「妄想で実装しない」ところが良いですね。
2. 適応的な推論レベル
タスクの複雑さに応じて推論時間を自動調整してくれます。
簡単な質問には素早く応答し、複雑なタスクには必要な時間をかけて応答してくれるので、これまでのように、タスクに応じてモデルを切り替える必要がなくなります。
著者の実感
上記の通り、シンプルな修正や実装はすぐに回答が得られます。Tokenも無駄に消費しない点がGOOD。
3. 優れたコードレビュー能力
コードベースをナビゲートし、コードとテストを実行して正確性を検証するコードレビューを実施できるよう訓練されています。
著者の実感
こちらはまだ未確認。実装箇所に閉じたレビューだけでなく、影響範囲も考慮したレビューを行ってくれるかどうかに期待。
周りの影響範囲も考慮した実装計画を立てるよう依頼した時には質の高い計画を立ててくれたので期待大。
プロンプト作成で核となる原則:「Less is More」
GPT-5-Codexの最も重要な原則として、プロンプトは少なければ少ないほど良く、過剰なプロンプティングは品質を低下させるとあります。
思ったようにコードの品質が上がらない場合には、プロンプトやrulesが過剰に設定されていないか確認し、削減する方向を意識しましょう。
具体的な推奨事項
ツールは絞り込む
- 理想としてはターミナルツールとapply_patchのみに限定する
- ツールの説明は可能な限り簡潔にし、不要な詳細を削除
訓練データの分布と一致することから、ファイル編集にはapply_patch
を使用することが強く推奨されています。
フロントエンドで特定のフレームワークを使用する場合には簡潔な採用スタックセクションを設ける
GPT-5-Codexは優れたデザインセンスと現代的なフロントエンドのベストプラクティスをデフォルトで備えています。特定のライブラリやフレームワークの指定が必要な場合は、以下のような簡潔なセクションを追加してください。
Frontend Guidance
Use the following libraries unless the user or repo specifies otherwise:
Framework: React + TypeScript
Styling: Tailwind CSS
Components: shadcn/ui
Icons: lucide-react
アンチパターン
これまでは「良い」とされていた手法がこのモデルでは「良くない」手法となります。以下のような指示は行わないよう注意しましょう。
1. プリアンブル(前置き)を使用する
GPT-5では、エージェンティックコーディングの質と各種ツールのコラボレーション向上の目的から、preamble(前置き)が良い慣習とされていました。
しかし、GPT-5-Codexではプリアンブルは廃止され、「なぜこの実装を行なっているかを都度明記しながら実装してください」といったようなプロンプトを投げると、実装が途中で完了したと見做されてしまうようです。
以下はGPT-5の公式からのプリアンブルの解説です。ツールを呼び出した際に呼び出し背景をチャットに残すことで応答品質を高めることができるという内容です。
Tool preambles
We recognize that on agentic trajectories monitored by users, intermittent model updates on what it's doing with its tool calls and why can provide for a much better interactive user experience - the longer the rollout, the bigger the difference these updates make. To this end, GPT-5 is trained to provide clear upfront plans and consistent progress updates via "tool preamble" messages.
You can steer the frequency, style, and content of tool preambles in your prompt—from detailed explanations of every single tool call to a brief upfront plan and everything in between. This is an example of a high-quality preamble prompt:
<tool_preambles> - Always begin by rephrasing the user's goal in a friendly, clear, and concise manner, before calling any tools. - Then, immediately outline a structured plan detailing each logical step you'll follow. - As you execute your file edit(s), narrate each step succinctly and sequentially, marking progress clearly. - Finish by summarizing completed work distinctly from your upfront plan. </tool_preambles>
2. 推論レベルの明示的な指示
自動で推論レベルを調整するため、以下のような指示は不要となります。
- 「よく考えて」
- 「素早く応答して」
- 「ステップバイステップで考えて」
3. 計画の詳細な指示
従来GPT-5で必要だった「実装前に計画を行ってください」というような指示は不要です。
モデルは以下を自動的に行います:
- エージェント型で進めるべきタスクでは詳細な計画を立てる
- 進捗状況を共有する
- 計画ツールが提供されている場合、適切に活用する
4. 過剰なコンテキストや説明
「これは重要です」「注意深く確認してください」といった強調表現や、冗長な背景説明は避けましょう。必要な情報を簡潔に伝えることが重要です。
まとめ
GPT-5-Codexは、これまでのほとんどのモデルでは必要だったプロンプト手法が不要になったり、場合によっては不適切で品質を低下させることにもつながることがわかりました。
モデルの特徴を理解して、モデルの性質に合わせたプロンプトの書き方を意識していきましょう!