GitHub Copilot Extensions の活用
GitHub Copilot Extensions
GitHub Copilot Extensions は 2024 年 5 月に発表されました。最も広く採用されている AI 開発者ツール に 世界の知識 を取り込みます。拡大するパートナー エコシステム を通じて、GitHub Copilot Extensions は、開発者が IDE や GitHub.com を離れることなく、好みのツールやサービスを使用して自然言語でクラウドを構築し、デプロイできるようにします。
詳細
拡張機能は GitHub.com の GitHub Copilot Chat、Visual Studio、VS Code でサポートされています。
GitHub Marketplace は誰でも利用できる拡張機能を提供しますが、組織内の開発者ツール用にプライベートな GitHub Copilot Extensions を作成することもできます。社内の API ライブラリやカスタムモニタリング システムの知識を会話だけで利用できるようになります。
GitHub Copilot Extensions の仕組み
あなたが開発者で、データベース関連のエラーでインシデントのページが表示されたとします。あなたはさまざまなツールから問題のコンテキストを得ようとしています。GitHub の Issue や DataStax の監査ログからかもしれません。十分なコンテキストがあれば、何が原因なのかトラブルシューティングを行い、Sentry のようなエラー監視ツールで詳細を調べます。そして、解決策を考え、修正を適用し、Azure でデプロイする必要があります。このシナリオでは、コンテキストの切り替えが多く発生します。
GitHub Copilot Extensions は、このプロセス全体をまとめます。GitHub Copilot Chat から、これらすべてのツールを簡単に呼び出し、コンテキストを取得し、アクションを実行し、ファイルやプルリクエストを生成できます。
詳細
- DataStax の拡張機能を使えば、AstraDB でデータベースとやり取りし、アプリケーションを構築できます:
ご紹介 Demo
- Octopus 拡張機能を使えば、デプロイのステータスを見ることができます:
ご紹介 Demo
- Sentry 拡張機能を使えば、パイプラインの問題を自然言語で解決できます:
ご紹介 Demo
GitHub Copilot for Azure
Microsoft の拡張機能である GitHub Copilot for Azure は、GitHub Copilot Chat が VS Code にシームレスに統合された新しいツールです。Azure クラウドをナビゲートするための個人アシスタントのようなものです。IDE と Azure ポータルを行き来してインフラを管理したり、コマンドや引数を検索したりする代わりに、コードを書くことに集中できます。サービスのプロビジョニングやアプリのデプロイを行う際には、GitHub Copilot Chat の azure に尋ねるだけで、すべてをエディター内で処理できます。
GitHub Copilot for Azure を VS Code Marketplace からインストールできます。
ご紹介 Demo
GitHub Copilot for Azure が役立つこと…
GitHub Copilot for Azure を使うためには、Azure にサインインやGHub Copilot Chat へのアクセス許可が必要です。
-
Azure について学ぶ
GitHub Copilot for Azure は、Azure サービスについて学ぶのを簡単にします。プラットフォームに不慣れな方でも、経験豊富なプロフェッショナルでも、最新のドキュメントをコード環境内で提供します。Azure OpenAI モデル、Azure AI Search、Azure SQL などのサービスの価格設定に関する情報を提供します。複数のソースを検索する代わりに、azure が必要な情報を即座に提供し、エディターを離れることなく主要なサービスを理解できます。これにより、Azure を初めて使用する開発者が複雑な概念を迅速に把握できるようになり、経験豊富な開発者も最新のサービスや機能についての詳細をすばやく確認できます。
学習のための推奨プロンプト
- @azure Azure AI Search の詳細な説明を教えてください
- @azure どの Azure サービスがコンテナを実行できますか?
-
デプロイ
GitHub Copilot for Azure は、リソースの設定やデプロイの自動化などのタスクをガイドすることで、アプリのデプロイの手間を省きます。Python で RAG (Retrieval-Augmented Generation) アプリを構築する場合でも、CI/CD パイプラインを作成する場合でも、Azure Developer CLI (azd) を使用してプロジェクトをデプロイする場合でも、azure はコードエディターから直接アプリ テンプレートや適切なコマンド、設定を提案します。サンプル アプリケーションを検索したり、CLI コマンドや YAML 構文を調べたりする手間は不要です。azure が必要な空白を埋めてくれます。特に、サービスを迅速に立ち上げたり削除したりする場合に便利で、インフラの管理ではなく品質の高いコードを書くことに専念できます。
デプロイのための推奨プロンプト
- @azure GPT-4o を使用して RAG チャットアプリ を構築するのを手伝ってください
- @azure GPT-4o が利用可能なリージョンを一覧表示してください
-
トラブルシューティング
時々、問題は発生します。その際、GitHub Copilot for Azure はアプリケーションのパフォーマンスやリソースの課題に関する洞察を提供することで、診断とトラブルシューティングを容易にします。
Kubernetes クラスターが遅い理由や、ウェブサイトで発生する厄介な 500 エラー の原因を特定しようとする場合でも、@azure がサポートします。ログを検索したり、ドキュメントを読み漁る必要はありません。azure は潜在的な問題を見つけ出す手助けを行います。これにより、問題の特定が早まり、アプリやサービスをスムーズに復旧できます。
さらに、azure は解決策の提示にも積極的に関与します。リソースやアプリの問題が何であれ、azure は設定の最適化、リソースのスケーリング、500 エラー を引き起こしているコードの修正などの推奨事項を提案します。Kubernetes クラスターが遅い場合は、デプロイ設定やリソース制限の改善を提案することがあります。これにより、開発者は問題の調査よりも、アプリの改善に集中することができます。
トラブルシューティングのための推奨プロンプト
- @azure ReallyImportantWebsite ウェブアプリが遅いのはなぜですか?
- @azure SuperCoolDemo コンテナ アプリのログにエラーがありますか?
-
運用
トラブルシューティングの後、GitHub Copilot for Azure はリソースの運用管理にも役立ちます。問題を解決した後は、リソースの状態を確かめることが不可欠で、azure はこれを簡単にします。たとえば、azure に Azure OpenAI のデプロイ数や、eastus にあるストレージ アカウントの数をサイズ順にソートするよう依頼できます。これらの情報を即座に把握できれば、過剰プロビジョニングされているリソースの特定や設定の調整まで幅広く対応でき、運用作業が容易になります。
運用のための推奨プロンプト
- @azure 無料ティアを使用している Web アプリ プランをリージョンごとに最高から最低までグループ化して一覧表示してください
- @azure AKS クラスター内のすべてのポッドを一覧表示する方法を教えてください
-
スラッシュコマンドでより多くの制御を
GitHub Copilot for Azure は新しいため、意図を理解しない場合がありますが、スラッシュコマンドを利用して意思をより正確に伝えられます。
azure /help
: azure が対応できるコマンドを確認するazure /learn
: Azure について学ぶazure /resources
: Azure リソースに関する情報を取得するazure /diagnose
: アプリケーションの問題を特定するazure /changeTenant
: 使用する Azure テナント を選択する
自社の GitHub Copilot Extensions を構築(準備中)
GitHub Copilot Extension の構築を開始するには、GitHub Copilot パートナー プログラム に参加する必要があります。
- 自社の開発ツールやサービスを GitHub Copilot エコシステム に統合できます。
- GitHub Copilot のプライベート拡張機能を使用して、組織の内製ツールを GitHub Copilot と連携させることが可能です。