この記事では、 GitHub Copilot や IntelliCode などの生産性と効率を向上させるために Visual Studio で使用できる AI 支援開発機能について説明します。
AI 支援型開発はどのように役立ちますか?
次の表では、AI アシスタントが Visual Studio での開発に役立つ主な方法について説明します。
コードの高速化
AI が役立つ情報を次に示します。
- コードと関数全体の提案の生成 (たとえば、自然言語で記述してタスクを実行するコードを記述する方法)
- プログラミング パターン (入力候補) に基づいて次にコーディングする内容を予測する
- AI 駆動型コンテキスト対応の推奨事項を使用したコード リファクタリング
コードの理解を深める
AI アシスタントに次の情報を依頼します。
- コード セクションの説明 (他のユーザーのコードを理解しようとしている場合など)
- プログラミングに関する質問への回答
プロファイルとデバッグをより迅速に行う
コードのプロファイリングとデバッグに関するヘルプを表示します。
- AI の提案に基づいてパフォーマンスを最適化する
- AI で識別されたバグと解決策
GitHub Copilot & IntelliCode
GitHub Copilot と IntelliCode は、コードをより迅速かつ正確に記述するのに役立ち、コードベースをより深く理解し、単体テストの記述、デバッグ、プロファイリングなどの他の開発タスクに役立ちます。
Visual Studio の GitHub Copilot
Visual Studio IDE の GitHub Copilot は、AI ペア プログラマとして機能し、コードを記述する際の生産性と効率を向上させます。 Visual Studio で Copilot を使用するには、Visual Studio 2022 バージョン 17.8 以降が必要です。
入力候補は 、ユーザーが提供するコンテキストに基づいてコードの行全体またはブロックを生成することで、開発プロセスに強化された AI 支援を追加します。 数十億行のオープンソース コードでトレーニングされた AI モデルを活用して、エディターでコードをリアルタイムで行う際にオートコンプリート スタイルのコード候補を提供します。 これにより、コードをより速く、より少ない作業で記述するのに役立ちます。
IDE の GitHub Copilot から、使用するコードの記述を開始するか、コードファイルに関数シグネチャまたは自然言語コメントを記述して、コードの実行内容を記述することで提案を得ることができます。 推奨されるコードを使用するには、それを受け入れます。
次の図は、Visual Studio での GitHub Copilot のコード生成機能を示しています。 この例では、コード ファイルに自然言語コメントを追加し、GitHub Copilot によって灰色のテキストでコード候補が生成されます。 コードを使用する場合は、[ Tab] を選択してコード ファイルに挿入できます。
Visual Studio の GitHub Copilot チャットは、Visual Studio IDE 内の GitHub Copilot から完全に統合された AI を利用したチャット エクスペリエンスです。 IDE 内のチャット インターフェイスを使用して GitHub Copilot と対話できます。 自然言語でコーディング関連の質問をすることで、コンテキスト固有のコード提案を受け取り、コード ブロックのしくみの詳細な分析と説明を取得し、単体テストを生成し、問題を見つけ、提案された修正プログラムを取得できます。 IDE を離れることなくコーディング情報とサポートを取得できるため、情報に基づいた意思決定を行い、より良いコードを記述できます。
次の図は、Visual Studio の GitHub Copilot Chat のチャット ウィンドウとインライン (Interactive Code Assistant Ask Copilot) ビューを示しています。 この例では、チャット ウィンドウまたは対話型コード アシスタントを使用してテスト関数を生成 するように Copilot に依頼 します。 Copilot Chat で使用するコード候補が提供されている場合は、コードファイルにコードを挿入することを承諾できます。
Visual Studio の IntelliCode
IntelliCode では、コードのコンテキストと、何千ものパブリック オープンソース コードから学習したパターンを組み合わせて使用して、提案、コンテキストに対応したコード補完、行全体の補完、API の使用例を使用して、Intellisense に AI 主導の機能強化を提供します。 人工知能を使用することで、IntelliCode は現在のコード コンテキストとパターンを使用して、候補リストの上部にある星アイコンを使用して候補を動的にランク付けし、正確なコードをより迅速に記述できるようにします。
次の図は、Visual Studio での IntelliCode の入力候補を示しています。
IntelliCode の使用を開始します。
AI 機能を並べて表示する
次の表は、GitHub Copilot (および GitHub Copilot Chat) と IntelliCode の機能を比較しています。
Important
GitHub Copilot と IntelliCode の両方を一緒に使用できます。 これらの中から選択する必要はありません。
| AI アシスタンス機能 | GitHub コパイロット | IntelliCode |
|---|---|---|
| 使用できる |
すべてのワークロードに既定で組み込まれており 、Visual Studio バージョン 17.10 以降の Visual Studio インストーラーから使用できます |
ほとんどのワークロードに既定で組み込まれており 、 Visual Studio インストーラーから使用できます |
| サブスクリプション ベース |
はい 詳細情報 |
いいえ |
| ユーザー インターフェイス | インライン チャット ウィンドウ |
インライン |
| コンテキスト対応の AI 支援 IntelliSense |
はい 詳細情報 |
はい 詳細情報 |
| 灰色のテキストでの行全体の入力候補 |
はい 詳細情報 |
はい 詳細情報 |
| 全体の関数と複数行の入力候補 (灰色のテキスト) |
はい 詳細情報 |
いいえ |
| 繰り返し編集の検出 | いいえ |
はい 詳細情報 |
| 自然言語コメントをコードに変換する |
はい 詳細情報 |
いいえ |
| 自然言語主導の開発支援を使用してコードの問題を解決する |
はい。Copilot チャットを使用します。 詳細情報 |
いいえ |
| コードのデバッグ |
はい。Copilot チャットを使用します。 詳細情報 |
いいえ |
| プロファイリングを使用してアプリのパフォーマンスを測定する |
はい 詳細情報 |
いいえ |
| API の使用例 | いいえ |
はい 詳細情報 |
| 言語のサポート | C#、C++、Python、JavaScript、TypeScript など、いくつかのプログラミング言語とフレームワークがサポートされています。これらに限定されません。 | C#、XAML、C++、JavaScript、TypeScript、Visual Basic |
次のステップ
詳細については、次のリソースを確認することを検討してください。