Copilotによるプルリクエストの概要 の概要
Copilotによるプルリクエストの概要 は AI を利用した機能で、プル要求で行われた変更の概要、影響を受けるファイル、レビュー担当者がレビューを行うときに注目する必要がある内容を作成できます。
ユーザーが概要を要求すると、 Copilot は pull request をスキャンし、散文で行われた変更の概要と、影響を受けるファイルの変更の箇条書きリストを提供します。
次の場所に概要を生成できます。
-
作成する新しい pull request の説明の中
-
既存の pull request の説明の中(開始コメントの編集による)
-
pull request のメイン タイムラインに関するコメント内
Copilotによるプルリクエストの概要でサポートされている言語は英語のみです。 Copilotによるプルリクエストの概要 では、トレーニング済みのモデルを追加せずに、 Copilot API を利用する単純なプロンプト フローを使用します。 これには、汎用の大規模言語モデルが利用されます。
応答生成
現在のプロセスでは、大規模言語モデルを使用して自動完了プロセスを開始し、pull request の概要を生成できます。
パイプラインアプローチ
ユーザーが概要をリクエストすると、ワークフローがトリガーされます。 このワークフローでは、コードの差分を使用してプロンプト呼び出しを作成します。この呼び出しでは、プル要求の概要を生成するために Copilot が要求されます。 概要要求は、要約可能なファイルからの生の差分をプロンプトで含むパイプラインプロセスを開始し、pull request の全体的な概要を生成するために Copilot を要求します。
出力の形式
この機能は、pull request の作成時に開始できます。また、作成後に pull request の説明を編集するか、pull request スレッドのコメントを使用することでも開始できます。 開始すると、 Copilot は 2 つの部分の概要を生成します。
- pull request の変更の概要を示す、文章で記述された段落。
- キーの変更の箇条書きリスト。変更が行われる各コード行にリンクされています。
プル要求が大きくなると、 Copilot が生成されるまでに数分かかることがあります。 エンタープライズ設定によっては、概要が生成された後に概要に関するフィードバックを UI から直接共有して、機能の継続的な改善に役立てることができます。
pull request の概要のユース ケース
Copilotによるプルリクエストの概要の目的は、加えられた変更のコンテキストを共有する必要がある人間のレビューを要求するときに、作成者がコンテキストを迅速に提供できるように、作成者の能力を最適化することです。 pull request を開くのに必要な時間を短縮することで、開発者の生産性を高めることができます。
多くのユーザーにとって、これにより pull request 内で行われた変更に関して通常使用できるよりも便利なコンテキストを提供できます。
pull request の概要のパフォーマンスを向上させる
Copilotによるプルリクエストの概要を代わりではなくツールとして使用する
この機能は、コンテキストを追加するために人間の作業を置き換えるのではなく補足することを目的としており、有用なコンテキストを引き続き追加し、 Copilot コードの解析と特定のファイルへのリンクの忙しい作業を行うことをお勧めします。 作成する pull request の情報が正確であることを確認および評価する責任があります。
フィードバックの提供
メモ
Copilotによるプルリクエストの概要 に関するフィードバックを GitHub に提供する機能は、Enterprise 設定によって異なります。 詳しくは、「企業での GitHub Copilot のポリシーと機能の管理」をご覧ください。
Copilotによるプルリクエストの概要で問題や制限事項が発生した場合は、概要が生成された後、[**プル要求の作成**] または [**コメントの更新**] をクリックする前にテキスト ボックスの下に表示される [不適切な概要] ボタン (サムダウン アイコン) をクリックしてフィードバックを提供できます。

概要を適切か不適切か評価した後、表示されるリンクをクリックすると、フィードバックを書き込むことができます。
pull request の概要に関する制限事項
現在、Microsoft チームではこの機能に制限があることを認識しています。 それらの多くは、 Copilot API を活用する際に期待されますが、スコープの制限、処理時間の長さ、不正確な応答に関連する Copilotによるプルリクエストの概要 に固有のデータがいくつかあります。 またユーザーは、PR で使用される用語が AI によって生成される概要に現れることを想定する必要があります。 この機能は RAI Red Teaming の対象となり、今後も機能の有効性および安全性がモニタリングされます。 詳細については、Microsoft セキュリティ ブログの「Microsoft AI Red Team building future of safer AI を参照してください。
制限が変更された行
追加と削除の組み合わせが 400 を超えるファイルは、集計から除外されます。
制限付きのスコープ
容量のため、30 件以上のファイルを参照する大きな pull request では、完全に処理される時間が長くなります。 現時点では正確なしきい値はありませんが、最初の 30 件のファイルが確認され、その後、概要から省略されているその他のファイルが確認されます。 現在のこのスコープの制限については、解決に取り組んでいる最中です。
処理時間
一般に、ユーザーがアクションを開始した後、40 秒以内に概要が返されることを想定しています。 しかし、これには 1 分ほど、場合によっては数分かかる場合があるようです。 処理時間の短縮に取り組んでいますが、pull request の他の部分に進む前に、ユーザーはこの処理の完了を待ちたくない可能性があります。
不正確な応答
Copilotが学習できる入力とコンテキストが多いほど、出力が向上します。 ただし、この機能はまだ新しいため、生成される概要が正確な精度に到達するには時間がかかります。 一方で、生成された概要があまり正確ではない場合には、この説明が含まれた pull request を保存して公開する前にユーザーが変更を加える必要があります。 さらに、 Copilot が不正確なステートメントを生成する "幻覚" のリスクもあります。 これらの理由から、見直しは必須であり、出力の見直しを慎重に行うことを Microsoft チームとして強くお勧めします。
概要の再生成
pull request の概要は、ユーザーが手動で要求した場合にのみ作成されます。 ユーザーが pull request の更新または変更を送信しても、概要は自動的に更新されません。 ユーザーは、必要に応じて、 Copilot に新しい概要を生成するように依頼できます。 更新された Copilot 概要を手動で確認することを強くお勧めします。 更新された概要には、元の概要と同じ不正確さのリスクが伴います。
pull request コンテンツのレプリケーション
概要は pull request で行われた変更のアウトラインであるため、有害または不快な用語が pull request のコンテンツ内にある場合は、概要にもそれらの用語が含まれる可能性があります。
参考資料
-
[ GitHub Copilot セキュリティ センター](https://copilot.github.trust.page/) -
[ ](/copilot/github-copilot-enterprise/copilot-pull-request-summaries/creating-a-pull-request-summary-with-github-copilot)ドキュメントの GitHub Enterprise Cloud。