●この記事のポイント ・米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日付当サイト記事より)