OpenAIが開発したチャットボットである「ChatGPT」は、ソフトウェアに潜んでいるバグの修正にも長けている。他の手法や人工知能(AI)モデルの追随を許していないその優位性は、回答の精度を向上させるために人間と対話できる能力にある。
提供:Getty Images/NurPhoto
ヨハネス・グーテンベルク大学マインツとロンドン大学のリサーチャーらはプログラムのバグ修正能力を評価するためにChatGPTと、「一般的な自動プログラム修正(APR)技術」、そしてディープラーニング(DL)を用いた2種類のアプローチ、すなわちカナダのウォータールー大学のリサーチャーらが開発した「CoCoNuT」と、GitHubのAIペアプログラミングサービス「GitHub Copilot」の土台となっている、OpenAIの「GPT-3」をベースにした「OpenAI Codex」を交えて競わせてみた。
その結果は、コーネル大学が運営する論文公開サイト「arXiv」で公開され、New Scientistによって最初に取り上げられることになった。「An Analysis of the Automatic Bug Fixing Performance of ChatGPT」(ChatGPTの自動バグ修正能力の分析)と題されたこの論文には、「ChatGPTのバグ修正能力は、広く知られているDLアプローチであるCoCoNuTやCodexに匹敵しており、一般的なバグ修正アプローチで報告されているよりも極めて優れている」と記されている。
ChatGPTがコーディング上の問題を解決できるという話は目新しいものではないが、リサーチャーらは人との対話というユニークな能力によって他のアプローチやモデルよりも優れた潜在的優位性が得られるという点に光を当てている。
リサーチャーらは、「QuixBugs」というバグ修正ベンチマークを用いてChatGPTの能力を評価した。なお、評価したAPRシステムは2018年以前に開発されたものであったため、不利な戦いを強いられたようだ。
ChatGPTのベースになっている「Transformer」アーキテクチャーはGoogleによって開発されたものであり、その点についてはMetaのチーフAIサイエンティストであるYann LeCun氏も米国時間1月19日にあらためて指摘していた。また、Codexや、Microsoft Researchの「CodeBERT」、そしてその前身であり、Googleによって開発された「BERT」はいずれも、GoogleのTransformerをベースにしている。
OpenAIはコードのデバッグにおいて、ChatGPTの対話能力を強調しており、より適切な解決策を得る上で、意味を明確にするための説明を求めたり、相手からヒントを得たりできるようになっているとしている。同社は人間のフィードバックを反映させた強化学習(RLHF)を用いて、ChatGPTのベースとなっている大規模言語モデル(GPT-3と「GPT-3.5」)を訓練した。