GitHub Copilotは、米国のスタートアップ・OpenAIが作成した言語モデル「Codex」を利用しています。OpenAIといえば、昨年来、話題となっているチャットボット「ChatGPT」や画像生成AI「DALL-E 2」などを開発したことでも知られます。OpenAIにもマイクロソフトが出資をしており、マイクロソフトCEOのサティア・ナデラ氏は、ChatGPTをクラウドサービス「Azure」の上で提供すると表明しています。

 ChatGPTは2022年11月に公開されるとすぐ、多くの言語で多様な分野の質問に答えるチャットボットとして、世界中からユーザーを集め、公開からわずか2カ月ほどの1月末には1億人以上のユーザーを獲得する人気のサービスとなりました。

 このChatGPTにも、自然言語でプログラム生成を指示することができます。また、単にコードを出力するだけではなく、使用例や新バージョンでのより良い書き方を教えてくれるなど、かなり賢いふるまいが可能です。

【「ChatGPT」で「Javascriptで関数を作って」と指示したところ】

 また、プログラムの間違いを指摘して修正することもできます。

【自然言語でプログラムの間違いを指摘させることもできる】

 では、こうしたAIが出てきたことによって、プログラマーやプログラミングは不要になるのでしょうか。私はそうは思っていません。

今のAIには「プログラムを
不要にするプログラム」を作る力はない

 プログラマーやプログラミングが不要にはならない理由の1つは、現状のAIにはまだ限界があるからです。

 現状のAIは検索の手間を大きく省いてくれたり、1人でプログラミングしていると気づかないような誤りや、より良いコードの書き方を指摘してくれたりします。しかし、ゼロからプログラムを生成するところまでには至っていません。また、GitHub CopilotやChatGPTのようなAIは、脆弱なコードを生成したり、間違えたりすることがあります。