Note
GitHub Copilot Extensions は パブリック プレビュー 段階であり、変更される可能性があります。
この記事は、まったく新しい GitHub Copilot Extension を構築する場合に役立つように設計されています。 GitHub によって作成されたデモ Copilot Extension を簡単に構築してテストする方法については、「エージェントを使用する GitHub Copilot Extensions のクイックスタート」を参照してください。
スキルセットとエージェントは、Copilot の機能とコンテキストを Copilot Extensibility Platform で拡張する 2 つの方法です。 それらを使うと外部サービスと API を Copilot Chat に統合できますが、それぞれ異なるユース ケースに対応し、異なるレベルの制御と複雑さを提供します。
- スキルセットは軽量で効率化されており、最小限のセットアップで特定のタスク (データの取得や単純な操作など) を実行するために Copilot を必要とする開発者向けに設計されています。 それはルーティング、プロンプトの作成、関数の評価、応答の生成を自動的に処理するため、すばやく簡単な統合に最適です。 スキルセットの詳細については、「Copilot のスキルセットについて」を参照してください。
- エージェントは、要求の処理方法と応答の生成方法を完全に制御する必要がある複雑な統合のためのものです。 それを使うと、カスタム ロジックの実装、他の LLM や Copilot API との統合、会話コンテキストの管理、ユーザー操作のすべての側面の処理を行うことができます。 エージェントはより多くのエンジニアリングとメンテナンスを必要としますが、高度なワークフローに対して最大限の柔軟性を提供します。 エージェントについて詳しくは、「Copilot エージェントについて」をご覧ください。
1. Copilot agents について学習する
Copilot agents には、Copilot Extension のカスタム コードが含まれており、GitHub App と統合して、Copilot Extension 自体を形成します。 詳しくは、「Copilot エージェントについて」をご覧ください。
Copilot agent を正常に構築するには、エージェントの通信方法を理解する必要があります。
- サーバー送信イベントを使用する Copilot プラットフォーム。 「Copilot プラットフォームと通信するように Copilot エージェントを構成する」を参照してください。
- GitHub API。 「GitHub と通信するように Copilot エージェントを構成する」を参照してください。
2. 例 Copilot agents と Copilot Extensions SDK を確認する
実際の前の概念を確認し、エージェントの実装について学習するには、次のエージェントとソフトウェア開発キット (SDK) の例を確認してください。これらはすべて、copilot-extensions
組織で利用できます。
- Blackbeard (最適な開始点): Copilot の大規模言語モデル (LLM) API と特別なシステム音声ガイダンスを使用して海賊のように要求に応答する単純なエージェント。
- GitHub Models: GitHub Marketplace に記載されているさまざまな LLM について、Copilot Chat を介して確認し、操作できる、より複雑なエージェント。 GitHub Models エージェントは、関数呼び出しを利用します。
- 関数呼び出し: 関数呼び出しと確認ダイアログを示す Go で記述されたエージェントの例。
- RAG 拡張機能: 取得拡張生成の簡単な実装を示す Go で記述されたエージェントの例。
- プレビュー SDK: 要求の検証、ペイロードの解析、応答の書式設定を自動的に処理することで、Copilot Extensions の開発を効率化する SDK。 この SDK を使用すると、拡張機能ビルダーはコア機能の作成に重点を置き、定型コードに重点を置く必要がなくなりました。
3. Copilot agent を構築する
前の手順の参照資料を使用して、Copilot agent を計画して構築します。 次のオプションのいずれかの実装を選択できます。
- 独自の LLM デプロイの構築と管理を回避するために、エージェントは Copilot LLM デプロイを呼び出すことができます。 「エージェントに Copilot の LLM を使用する」を参照してください。
- ユーザーによる入力をすばやく解釈し、実行するさまざまな定義済みの関数から選択するには、エージェントで関数呼び出しを実装することができます。 詳細については、Azure OpenAI ドキュメントの「Azure OpenAI Service で関数呼び出しを使用する方法」および OpenAI ドキュメントの「関数呼び出し」を参照してください。
4. Copilot agent をデプロイする
Copilot agent を Copilot プラットフォームと GitHub にアクセスできるようにするには、HTTP 要求によって到達可能なサーバーにデプロイする必要があります。 「Copilot 拡張機能をホストするためのサーバーの構成」を参照してください。
5. GitHub App を作成し、それを Copilot agent と統合する
Copilot Extension を作成するには、GitHub App を作成して構成し、それを Copilot agent と統合する必要があります。 「Copilot 拡張機能用の GitHub アプリの作成」と「Copilot 拡張機能用の GitHub アプリの構成」を参照してください。
6. Copilot Extension の可用性を選択する
Copilot Extension の 2 つの可視性レベルのいずれかを選択します。
- パブリック: 拡張機能のインストール ページへのリンクを持つ任意のユーザーまたは組織アカウントでインストールできます。
- プライベート: 拡張機能を作成したユーザーまたは組織アカウントのみでインストールできます。
Copilot Extension を公開している場合は、それを GitHub Marketplace に一覧表示することもできます。
Copilot Extension の可視性を変更し、それを GitHub Marketplace に一覧表示する方法については、「Copilot 拡張機能の可用性の管理」を参照してください。
次のステップ
Copilot Extension の使用方法については、「拡張情報を使用して外部ツールを Copilot Chat と統合する」を参照してください。
1.Github Copilot skillsets について学ぶ
Github Copilot skillsets には、Copilot Extension のカスタム コードが含まれており、GitHub App と統合して、Copilot Extension 自体を形成します。
Copilot agents とは異なり、Copilot skillsets を使うと、プロンプト作成、関数評価、応答生成の背後にあるロジックを処理できるため、最小限の労力で迅速かつ効果的な統合を求める開発者にとって理想的な選択肢となります。 詳しくは、「Copilot のスキルセットについて」をご覧ください。
2. Copilot skillset を構築する
スキルセットの実装例については、copilot-extensions
organization の skillset-example リポジトリを参照してください。
スキルセットを構築するには、「Copilot スキルセットの構築」を参照してください。
3.Copilot skillset を配置する
Copilot skillset を Copilot プラットフォームと GitHub にアクセスできるようにするには、HTTP 要求によって到達可能なサーバーに配置する必要があります。 「Copilot 拡張機能をホストするためのサーバーの構成」を参照してください。
4.GitHub App を作成し、それを Copilot skillset と統合する
Copilot Extension を作成するには、GitHub App を作成して構成し、それを Copilot skillset と統合する必要があります。 「Copilot 拡張機能用の GitHub アプリの作成」と「Copilot 拡張機能用の GitHub アプリの構成」を参照してください。
5.Copilot skillset の可用性を選ぶ
Copilot Extension の 2 つの可視性レベルのいずれかを選択します。
- パブリック: 拡張機能のインストール ページへのリンクを持つ任意のユーザーまたは組織アカウントでインストールできます。
- プライベート: 拡張機能を作成したユーザーまたは組織アカウントのみでインストールできます。
Copilot Extension を公開している場合は、それを GitHub Marketplace に一覧表示することもできます。
Copilot Extension の可視性を変更し、それを GitHub Marketplace に一覧表示する方法については、「Copilot 拡張機能の可用性の管理」を参照してください。
次のステップ
Copilot Extension の使用方法については、「拡張情報を使用して外部ツールを Copilot Chat と統合する」を参照してください。