世界の最新AIトレンドをリアルタイムに配信

AIコーディングツールの進化と未来展望

AIコーディング3大ツール「GitHub Copilot」「IntelliCode」「Amazon Q Developer」の違いは?
19/07/2024
カテゴリ:

人工知能(AI)技術を用いたコーディング支援ツール(以下、AIコーディングツール)は、コーディングの作業を効率化できるツールとしてソフトウェア開発現場の関心を集めている。以下3つの主要AIコーディングツールについて、それぞれの基本的な機能や特徴を解説する。

GitHub Copilot
2021年にGitHubが発表したソースコード自動生成ツール「GitHub Copilot」は、AIベンダーOpenAIのアルゴリズムを搭載している。GitHubのパブリックリポジトリのソースコードを含む、一般に利用可能なソースからの自然言語テキストとソースコードでトレーニングされている。主要なプログラミング言語やフレームワークにはほぼ対応し、コーディングの提案ができる。その中には、数学的な関数を組み合わせたプログラミングである「関数型プログラミング」も含まれている。

Visual Studio IntelliCode
2018年に登場したのが、MicrosoftのAIコーディングツール「Visual Studio IntelliCode」(以下、IntelliCode)だ。同ツールは、Microsoftの統合開発環境(IDE)である「Microsoft Visual Studio」やソースコードエディタ「Visual Studio Code」(以下、VS Code)から利用できる。IntelliCodeは「C++」「JavaScript」「Python」などのプログラミング言語を使用でき、ソースコードを生成させたり、コードの候補を提示させたりできる。関数や引数の自動補完のような、比較的狭い範囲での候補提案機能も提供している。

Amazon Q Developer(旧称:Amazon CodeWhisperer)
AWSのソースコード生成AIアシスタント「Amazon Q Developer」もGitHub Copilotと同様、主要なプログラミング言語やフレームワークにほぼ対応し、コードスニペット(短いソースコードのまとまり)から関数までの自動生成や提案ができる。

上述した機能は、AIコーディングツールの機能の一部に過ぎないと筆者は考える。新しいAIコーディングツールの登場や技術進化によって、今後、以下のような機能が実装されるだろう。

プログラムのスニペットだけではなく、プログラム全体をゼロから書くことをサポートする機能
メモリ使用量や実行速度、スケーラビリティ(拡張性)といった性能面や、セキュリティ面が最適化されたソースコードを生成する機能
複数のプログラミング言語で構成されるコードベースを扱う機能
「Infrastructure as Code」(IaC)のテンプレート設定など、専門的なコーディング作業をアドバイスする機能
AIコーディングツールのライセンスや、オープンソースコードの利用に関する正しい情報を提供する機能