GitHub Copilot の入力候補 と Visual Studio の GitHub Copilot Chat を使用すると、 Visual Studio での AI 支援開発が強化され、コードを記述するときの生産性と効率が向上します。
この記事では、Visual Studio IDE 内の GitHub Copilot から完全に統合された AI を利用したチャット エクスペリエンスである Visual Studio での Copilot チャットの使用について説明します。 この拡張機能を使用すると、IDE から離れることなく、構文、プログラミングの概念、コンテキスト固有のコード ヘルプ、テスト ケース、デバッグなどのコーディング情報とサポートが得られます。 チャット インターフェイスを使用して 質問をプロンプトとして送信し、より適切な範囲の回答を 得るための意図を設定 します。
Visual Studio の GitHub Copilot 入力候補の詳細については、「Visual Studio の GitHub Copilot 入力候補について」を参照してください。
Visual Studio で Copilot チャットを使用する理由
Copilot Chat は、情報に基づいた意思決定を行い、より良いコードを記述するのに役立つ AI 支援を提供します。 Visual Studio での緊密な統合により、Copilot Chat は作業内容を理解し、次のような開発タスクに役立ちます。
- コードの説明。 コード ブロックのしくみの詳細な分析と説明を取得します。
- コード ヘルプ。 自然言語またはコード スニペット形式でのプログラミング関連の質問に対する回答を取得します。
- コードの絞り込み。 コンテキスト固有のコード提案と推奨事項を取得します。
- 単体テスト。 単体テストを生成します。
- プロファイリング。 コードのパフォーマンスを最適化します。
- デバッグ。 問題を見つけて、バグと 例外に対して提案された修正プログラムを取得します。
- コードを確認してコミットします。 コミット メッセージを生成 し、 ローカルの変更を確認します。
前提 条件
Visual Studio 2022 バージョン 17.8 以降。
GitHub アカウント を使用して、Copilot アクセスで Visual Studio にサインインします。 GitHub Copilot は無料で使用できます。
GitHub Copilot Chat for Visual Studio を入手する
Visual Studio バージョン 17.10 以降を使用する場合、GitHub Copilot Chat は 統合された GitHub Copilot エクスペリエンスに含まれます。 拡張機能は、Visual Studio インストーラーで推奨されるコンポーネントとして使用できます。 Copilot Chat は、インストール中に除外することを選択しない限り、すべてのワークロードで既定でインストールされます。
GitHub Copilot は Visual Studio サブスクリプションに含まれていません。 代わりに、GitHub によって管理される別のサブスクリプションです。 GitHub Copilot サブスクリプションとサポートに関する質問については、 ビジネス サブスクリプション と 個々のサブスクリプションの GitHub ページを参照してください。
Visual Studio で Copilot チャットを使用する
自然言語でコーディング関連の質問をすることができます。 GitHub Copilot Chat は、開発コンテキストでこれらの質問に回答します。
次の 2 つの場所で Copilot に質問できます。 チャット ウィンドウ内と、変更するコード内の インライン チャット を使用します。 エディターで開いているコード ファイルを変更または追加することが目的の場合は、通常、インライン チャット ビューが最適に機能します。 コーディングに関する一般的な質問については、チャット ウィンドウを使用することをお勧めします。
Copilot Chat でスコープ付きコンテキストを使用してより良い回答を得るには、 Copilot チャットの結果を改善するためのヒントを参照してください。 スラッシュ コマンド、参照、使用されるソース、スレッドの使用方法について説明します。
手記
コンテンツの除外は、GitHub Copilot Chat で使用できます。 管理者によって除外されたコンテンツは、チャットからの応答では無視されます。 詳細については、「 GitHub Copilot のコンテンツ除外の構成」を参照してください。
チャット ウィンドウで質問する
質問をして、チャット ウィンドウに回答を表示します。 プログラミングのヘルプと一般的なコーディングの質問には、このツールをお勧めします。
Visual Studio で [表示]>[GitHub Copilot Chat] を選びます。
チャット ウィンドウで、[ Copilot に質問 する] テキスト ボックスにコーディング関連の質問を入力します。 Enter キーを 押 すか、[ 送信 ] を選択して質問します。
Copilot Chat で使用するコード候補が提供されている場合は、次のオプションがあります。 [ コード ブロックのコピー] を選択してコード候補をコピーし、 新しいファイルに追加して コード候補を新しいファイルに挿入するか、[ 適用] を選択して現在のコード ファイルにコード候補を挿入します。 [適用] を選択した場合は、ターゲットの場所でコードをプレビューして、更新されている内容を簡単に確認できます。
コードの理解に関するヘルプが必要な場合は、[ コード ブロックのコピー ] オプションと [ 新しいファイルへの挿入] オプションは使用できません。
現在のファイルに変更を追加する場合は、通常の差分ビュー パターンにコード候補が表示されます。 提案内容を確認して絞り込み、 Tab キーを押してコードに適用するか、Esc キーを押して破棄 することができます。
[ 新しいファイルに追加] を選択すると、新しいファイルにコード候補が表示されます。 変更は既定では保存されません。
GitHub Copilot のコード参照機能は、提案がパブリック コードと一致すると通知します。 一致するコード、ソース ファイル、および関連するライセンス情報は、Visual Studio 内で直接表示できます。 その後、提案されたコードを使用するかどうかについて、より情報に基づいた意思決定を行うことができます。
チャット ウィンドウで質問する
質問をして、チャット ウィンドウに回答を表示します。 プログラミングのヘルプと一般的なコーディングの質問には、このツールをお勧めします。
Visual Studio で [表示]>[GitHub Copilot Chat] を選びます。
チャット ウィンドウで、[ Copilot に質問 する] テキスト ボックスにコーディング関連の質問を入力します。 Enter キーを 押 すか、[ 送信 ] を選択して質問します。
GitHub Copilot Chat の探索を開始するには、Visual Studio 2022 バージョン 17.12 以降のスタート プロンプトの例とプロンプト ライブラリ (書籍アイコン) を使用します。
Copilot Chat で使用するコード候補が提供されている場合は、次のオプションがあります。 [ コード ブロックのコピー] を選択してコード候補をコピーし、 新しいファイルに 挿入してコード候補を新しいファイルに挿入するか、 プレビュー を選択して現在のコード ファイルにコード候補を挿入します。 [プレビュー] を選択した場合は、ターゲットの場所でコードをプレビューして、更新されている内容を簡単に確認できます。
コードの理解に関するヘルプが必要な場合は、[ コード ブロックのコピー ] オプションと [ 新しいファイルへの挿入] オプションは使用できません。
[プレビュー] を選択すると、Visual Studio の通常の差分ビュー パターンにコード候補が表示されます。 提案内容を確認して調整し、[ 承諾] を選択してコードに適用するか、[キャンセル] を選択して破棄 することができます。
[新しいファイルに挿入] を選択すると、新しいファイルにコード候補が表示されます。 ファイルは既定では保存されません。
Visual Studio 2022 バージョン 17.12 では、GitHub Copilot においてコード参照機能が追加されました。 GitHub Copilot のこの機能は、提案がパブリック コードと一致すると通知します。 一致するコード、ソース ファイル、および関連するライセンス情報は、Visual Studio 内で直接表示できます。 その後、提案されたコードを使用するかどうかについて、より情報に基づいた意思決定を行うことができます。
インライン チャット ビューで質問する
エディター ウィンドウ自体のコードを使用して、質問をしたり、回答をインラインで確認したりできます。 インライン チャットでは、チャット ウィンドウに行ったり来たりする必要はありません。 この方法では、現在開いているコード ファイルに追加または更新する質問に対して Copilot を操作することをお勧めします。
Visual Studio で、エディター自体で Copilot Chat のインライン チャット ビューを表示するには、エディター ウィンドウで右クリックし、[ チャット] を選択します。
[ Copilot に質問 する] テキスト ボックスにコーディング関連の質問を入力し、Enter キーを 押 すか、[ 送信 ] を選択して質問します。
差分ビューに Copilot Chat のコード候補が表示されます。 提案内容を確認して調整できます。 提案をコードに適用するには、[ Tab] を選択します。検索候補を破棄するには、[Esc] を選択 します。
インライン チャット スレッドをチャット ウィンドウに昇格するには、 Copilot Actions>[チャットに追加] を選択します。 この機能は、会話のレコードとコンテキストを保持し、チャット ウィンドウで続行できます。
Esc キーを押してインライン チャット ビューを閉じます。
Visual Studio で、エディター自体で Copilot Chat のインライン チャット ビューを表示するには、エディター ウィンドウで右クリックし、[ Copilot に問い合わせてください] を選択します。
[ Copilot に質問 する] テキスト ボックスにコーディング関連の質問を入力し、Enter キーを 押 すか、[ 送信 ] を選択して質問します。
差分ビューに Copilot Chat のコード候補が表示されます。 提案内容を確認して調整できます。 提案をコードに適用するには、[同意する] を選択 します。 提案を破棄するには、[ キャンセル] を選択します。
インライン チャット スレッドをチャット ウィンドウに昇格するには、チャット ウィンドウで 続行を選択します。 この機能は、会話のレコードとコンテキストを保持し、チャット ウィンドウで続行できます。
Esc キーを押してインライン チャット ビューを閉じます。
チャット プロンプトに画像を添付する
Visual Studio 17.14 以降では、チャットに画像を添付してコンテキスト入力を追加し、より良い応答を生成できます。
プロンプトに画像を添付するには、クリップボードから画像を貼り付けるか、チャット入力の➕アイコンを選択します。 次に、[ イメージのアップロード ] を選択して、エクスプローラーから画像をアップロードします。 Copilot は画像を分析し、より良い応答を生成するためにより多くのコンテキストとして使用します。
この機能は、Copilot が UI 開発に役立つ場合に便利です (たとえば、デザインの画像を添付する)。 この機能はデバッグにも役立ちます (たとえば、エラーのスクリーンショットを添付します)。
PNG、JPEG、GIF (単一フレームのみ) のいずれかの画像形式を使用します。 プロンプトごとに最大 3 つの画像を添付できます。
Markdown コンテンツのプレビュー
Copilot Chat によって生成された Markdown コンテンツは、Visual Studio Markdown エディターで直接プレビューできます。
Copilot Chat で Markdown コンテンツが生成されたら、チャット ウィンドウの右上隅にある [プレビュー ] ボタンを選択して、レンダリングされたプレビューを表示します。 そこから、必要に応じて Markdown コンテンツを編集および保存できます。 この機能は、手動でコピーして貼り付けることなく、Markdown ファイルをすばやく視覚化して操作する場合に役立ちます。
人魚図を生成する
Copilot Chat では、アーキテクチャ、フローチャート、シーケンス、クラス、ガント チャート、円グラフなど、さまざまな 人魚図を生成できます。 その後、エディターで複雑なデータ構造とワークフローを直接視覚化できます。
たとえば、次のプロンプトを 1 つ以上使用できます。
- "API 呼び出しフローのシーケンス図を作成します。"
- "このスキーマ内のエンティティ間のリレーションシップを視覚化します。"
- "タスクのライフサイクルの人魚状態図を作成します。"
- 「私はこのプロジェクトに参加したばかりで、主要なコンポーネントとその関係を視覚化することで、オンボーディングに役立てたいです。」
Copilot は、コードベースの添付参照と関連ファイルを使用してコンテキストを収集し、チャット ウィンドウで人魚構文を返します。 [プレビュー] を選択して新しい Markdown ファイルを開き、ダイアグラムを表示します。 今後使用するために、Markdown またはレンダリングされたグラフを保存または共有できます。
ヒント
Markdown プレビュー コントロールを使用すると、プレビュー モードを切り替えて、複雑な人魚図を拡大することができます。