AIコーディングツールに進化?OpenAI「Codex」、自動で数百行の修正を実行

●この記事のポイント
・米OpenAIが提供を開始したAIコーディングエージェント「Codex」が注目されている
・Codexは生成したコードを自動でチェック、テストしたり、コードの内容をユーザーに説明したり、プログラムの修正を支援する機能などがある
・AIが自分で状況を判断しながら数百行もの修正を一気に行い、GitHubにプログラムを直接プルリクエスト
米OpenAIが今月16日から提供を開始したAIコーディングエージェント「Codex」が注目されている。人間に代わって生成AIが自動でプログラムをコーディングするツールの利用が広がるなか、Codexは生成したコードを自動でチェック、テストしたり、コードの内容をユーザーに説明したり、プログラムの修正を支援する機能などがある点が特長だ。ここ数年で開発現場におけるAIコーディングツール活用が広まるなか、米グーグルもCodexとほぼ同じタイミングで「Jules」を発表。米Anthropic(アンソロピック)も「Claude Opus 4」を発表するなど、早くも競争が激しくなっているが、Codexはどのような特徴、優位点があるのか。また、他のツールとは何が違い、どのような使い分けが想定されるのか。専門家の見解を交えて追ってみたい。
●目次
プログラミングのノウハウを身につけた上で使う必要がある
プログラミングの現場では以前からノーコード/ローコード開発が行われており、開発ツールは数多く存在していた。大手ベンダのものでいえば、IBMの「IBM SPSS Modeler」、マイクロソフトの「Microsoft Power Apps」、グーグルの「AppSheet」、富士通の「Fujitsu Low-code Development Platform」などがある。
「まずノーコードに関していうと、パーツが用意されているだけなので、そのパーツの組み合わせ以上のことはできません。例えば、特別な処理や会社独特の機能などは基本的には実装できないことが多いです。開発・リリース後はメンテナンスも必要であり、業務フローが変わればコードを修正しなければならず、プログラミングのノウハウがない人がつくったシステムだと拡張性がなく困ってしまうケースが生じます。ですので、“書き捨て”と割り切れるシステムであればノーコード開発は便利でもあり問題ないですが、長期間にわたって稼働する企業のアプリケーションとしてつくる場合は、難しいかもしれません。また、ノーコード開発ツールで書かれたコードは中身がどうなっているのかよく分からなかったり、他のシステムとの連携でエラーやバグが出たときに中身が分からないので直せないといったパターンも生じます。
ゲーム開発の現場でいうと、完全なノーコード開発ではありませんが、アドベンチャーゲームみたいなものだと敵が出てきてコマンドタイプを選びながら話が先に進んでいくという、ある程度定型的な展開なので、フレームワークを使ってシステマチックにつくることができます。ですが、プログラムを書けない人がローコードで開発を進め、例えば画面の中に『今日はプレイを始めてから●日目』というのを表示させる必要が出た際に、そのゲームエンジンやフレームワークにゲームのプレイ日数を管理する機能が存在しないという事態が起こり得ます。ChatGPTに聞いてプログラムを書いて、一応は実装できたとして、次から次にChatGPTを使って必要になった機能を追加していったところ、ある日突然、システムが動かなくなったというようなことが実際に起きています。
システムを開発する際には、外部システムとの連携も想定しながら、正しい順序で正しい方法でコーディングを行う必要がありますが、中身がグチャグチャだと、動かなくなればいったん捨てて一からつくり直さないといけなくなります。つまり、ノーコード/ローコード開発もChatGPTも使うのは構いませんが、きちんとプログラミングのノウハウを身につけた上で使う必要があるわけです」(ゲームプロデューサーの岩崎啓眞氏/4月8日付当サイト記事より)
スマホさえあれば誰でも試せる手軽さが最大の魅力
そうしたなかでAIコーディングエージェントをめぐって大手テック企業が開発競争を展開し、急速に技術的な向上が進んでいる。OpenAIのCodexはプロンプトを入力して「Code」ボタンを押下すると、1~30分ほどでタスクを完了する。さらに生成されたコードに関する質問もできる。現在はChatGPT Pro、Enterprise、Teamプランのユーザーが利用可能となっている。Codexにはどのような特徴があるのか。ソフトウェアエンジニアで合同会社Hundreds代表の大塚あみ氏は次のように解説する。
「Codexは、ChatGPTに組み込まれた“自律型AI”です。アプリ画面の入力欄に『ここの動きが遅いので直して』『写真を並べるボタンを追加して』などと日本語で書くと、AIが読み込まれたフォルダを解析し、作業用のパソコンを立ち上げてプログラムを書いた後、数分後に修正済みのファイル一式を丸ごと返してくれます。スマホさえあれば誰でも試せる手軽さが最大の魅力です。
しかも、これまでの一問一答型チャットと違い、AIが自分で状況を判断しながら数百行もの修正を一気に行い、GitHubにプログラムを直接プルリクエストすることができるため、やり取りが少なくて済みます」
気になるのは、ほぼ同時期にグーグルが発表したJulesとの違いだ。
「一方、グーグルが発表したJulesも狙いはほぼ同じですが、まだβ版(試験運用中)で、1日に使える回数などに制限があります。将来はCodexと同様の機能に加え、グーグルのサービスを作るときに役立つと期待されるものの、正式版が出るまでは実質的にCodexを選ぶ流れになるでしょう」(大塚氏)
中堅IT企業のエンジニアはいう。
「AIコーディングツールと聞くと、プログラミングのスキルがない人でも簡単にプログラムを組めるというイメージがあるが、企業で使うシステムや多くの人が利用するシステムは長期にわたって運用されるため、メンテナンス性や拡張性、セキュリティなど多くの点を考慮しながら開発する必要がある。また、AIが生成したコードが正しいのかを判断して修正していく必要もあり、使う人にも一定のプログラミングに関するスキルが必要になってくるのが実情。ただ、今後より機能の優れたAIコーディングツールが増えてくれば、開発の効率が大幅に向上するという方向になっていくと期待できる」
(文=BUSINESS JOURNAL編集部、協力=大塚あみ/合同会社Hundreds代表)