【gigazine】
2023年04月12日
プログラムの開発の際には「デバッグ」と呼ばれるプログラムのバグや欠陥を特定して取り除く作業が必要です。また、システムが複雑であればあるほど、1カ所の変更が別の場所でのバグを生み出すため、修正が困難になるとされています。プログラマーのBioBootloader氏がGPT-4を使用してバグの修正を自動で行うプログラム「Wolverine」を開発しました。
Wolverine Gives Your Python Scripts The Ability To Self-Heal | Hackaday
https://hackaday.com/2023/04/09/wolverine-gives-your-python-scripts-the-ability-to-self-heal/
Developer creates “self-healing” programs that fix themselves thanks to AI | Ars Technica
https://arstechnica.com/information-technology/2023/04/developer-creates-self-healing-programs-that-fix-themselves-thanks-to-gpt-4/
BioBootloader氏が開発した「Wolverine」は、バグのあるスクリプトを実行し、表示されたエラーメッセージをキャプチャしてGPT-4に送信して、何が問題であるかを自動的に尋ねるプログラムです。BioBootloader氏は「スクリプトを実行し、クラッシュすると、GPT-4がスクリプトを編集し、何が悪かったのかを説明します」「多数のバグがある場合でも、全てが修正されるまで、繰り返しこの動作を実行します」と説明しています。
BioBootloader氏が投稿したデモでは、意図的にバグをいくつか仕込んだ電卓のスクリプトを実行しています。「Wolverine」を使用しない場合、計算に必要な関数が削除され、クラッシュしてしまいますが、「Wolverine」を使用した場合、バグが修正されて実行することが可能です。BioBootloader氏によると、エラーが発生した場合、GPT-4がコードを繰り返し修正し、正しく実行しようとするとのこと。最終的に、元のPythonファイルには、GPT-4によって追加された変更が含まれたスクリプトが保存されます。
「Wolverine」に使用されているGPT-4は従来のGPT-3.5よりもソースコード記述機能が洗練されており、対話しながらソフトウェアを完成させることが可能です。また、エラーが発生した際にも対話を行うことで修正版コードを受け取ることができます。
「GPT-4」発表、司法試験上位10%&日本語でもめちゃくちゃ高性能&画像処理もプログラミングも可能で「初代iPhoneと同等の衝撃」とも評される – GIGAZINE
BioBootloader氏は「Wolverineは私が数時間で作った簡単なプロトタイプにすぎません」と述べ、今後の展望を語っています。BioBootloader氏は「変更したコードを実行する前にユーザーの確認を求める」などの機能追加や、GPT-4が応答する編集フォーマットの検討、さらなるプロンプトのテスト、Python以外の言語への拡張などを想定しています。
BioBootloader氏が開発した「Wolverine」はGitHubで入手可能ですが、使用にはOpenAIのAPIが必要になるほか、GPT-4使用の順番待ちリストへの登録が必要です。