今号のAzureから始めるAIとクラウドの未来では、「GitHub Copilot」を紹介します。「GitHub」は、ソフトウェア開発におけるコードの保存、共有、管理に対応するクラウドベースのプラットフォームです。世界中で1億人以上の開発者が利用し、オープンソースから企業プロジェクトまで幅広く活用されています。GitHubを活用している企業のほか、GitHubを使っていない企業のアプリケーション運用においてAIコード補完・生成をサポートするのが、GitHubとOpenAIが共同開発したGitHub Copilotです。

GitHub Copilotで効率的な開発と管理を

「GitHub Copilot」は、開発者がテキストエディタにコードを書いている最中に、次に書くべきコードをリアルタイムで提案します。単なる補完業務にとどまらず、関数やクラス全体の生成、テストコード作成、コード改善提案などを行い、スピーディーかつ高品質なコーディングを支援します。

 また、GitHub Copilotを活用することで、定型作業を大幅に削減し開発効率も向上します。併せてプロトタイプ作成やAPI連携など、従来数時間かかっていた作業も削減可能です。繰り返し作業や検索時間を減らし、本質的な設計と問題解決に集中できるでしょう。文脈理解に基づく提案により、一貫性のある高品質なコードを維持しやすくなる点も含め、非常に多くのメリットを持ち合わせています。代表的なGitHub Copilotの機能は、以下の六つです。

・コード補完:文脈に応じた高精度な補完(変数型推論、API利用 例など)
・コード生成:コメントや要件から関数・クラス・処理ブロックを自動生成
・テストコード生成:単体テストや統合テストを自動作成
・コード改善:リファクタリング、命名規則統一、冗長性削除
・多言語対応:Python、JavaScript、TypeScript、Java、C#、Go、Rubyなど幅広い言語に対応
・IDE(統合開発環境)統合:「Visual Studio Code」「Visual Studio」「Neovim」などで利用可能。繰り返し作業をGitHub Copilotに委任でき、開発の生産性向上をサポートする

 併せて、最新の追加機能としてコードに関する質問や改善指示をチャット形式で実行する「Copilot Chat」、指示に基づき必要なファイル探索やコード生成を自動化できる「Agent」モードを搭載しました。そのほか、「Model Context Protocol」により外部データやWeb検索を活用可能な「MCPサポート」などの機能に対応しています。脆弱性検出や安全なコードを提案するセキュリティ機能も実装しています。コミュニケーションツールとの連携としては「Azure Boards」「Microsoft Teams」「Slack」との統合が強化されました。MCPサーバーのサポートが拡充されたGitHub Copilotを、ワークフローに組み込めます。また、「GitHub Copilot for Azure」では、Visual Studio CodeでのAzureアプリケーションの学習、デプロイ、トラブルシューティングおよび運用を支援します。「Azure MCP Server」と「Azure SRE Agent」を活用すれば、Azureの機能面や連携をさらに強化することが可能です。

 提案するプランは、「GitHub Copilot Business」と「GitHub Copilot Enterprise」から選択できます。GitHub Copilot Businessでは、主にコーディングの環境でMicrosoft Copilotが機能します。スマートフォンで作業が可能な「GitHub Mobile」も含まれています。GitHub Mobileでは、スマートフォンからタスクを割り当て、コードレビューを行えます。バグ修正のレビューをはじめ、コードのマージ(ファイルやデータ、プログラムの統合)などを片手で対応できます。Microsoft Copilotとの連携機能もあります。

 例えば、Copilot コードレビューで「Pull Request」(GitHubで行う変更提案)を分析し、スマートフォンから直接改善を提案します。移動中でも、バグの検出や新たなタスクを開始でき、進捗状況を追跡可能です。

 GitHub Copilot Enterpriseには、GitHub Copilot Businessの全ての機能が含まれるほか、さらにカスタマイズ機能が追加されています。Microsoft Copilotがチャット インターフェースとしてGitHub.comに統合され、開発者がこのプラットフォーム全体でコードベースとアクション ボタンについてMicrosoft Copilotと会話できるようになっています。企業の利用用途に応じて提案しましょう。

Microsoft Copilotとの共同作業が可能なGitHub CopilotのUI。

Azureサブスクリプションと連携可能

 そして、GitHub関連の多くの製品は販売店さま経由で購入可能です。Azureをすでに利用しているお客さまに関しては、Azureソリューションによって、利用しているGitHub製品全体に対して調達や支払いの経路を統一できるメリットがあります。例えば、コスト分析が可能な「Azure Cost Management」やワークフローを自動化する「GitHub Actions」を活用でき、GitHub Copilot単体の利用量やプロジェクト単位でのインフラ費用、開発ツールの利用料をまとめて確認可能になります。

 GitHub Actionsではソフトウェア開発ライフサイクル全体でタスクの自動化が可能です。スケジュールに従って実行するほか、特定のイベントが発生した際にタスクが実行されるようにワークフローを構成できます。ジョブとワークフローを実行するコンピューティング環境の指定も可能です。動作環境はWindows OS、macOS、LinuxOSなど主要なOSとコンテナに対応します。

 Azure Cost Managementは、使用状況の追跡、経費の監視、コストの異常の特定、支出の予測を行えます。クラウドコストをリソース グループ、サービス、場所、タグ別に分類するほか、「カスタム フィルター」を作成して重要なデータに焦点を絞ることなどが可能です。予算に基づいて通知を設定することで支出の増減に応じて組み込みのアラートルールを設定できるツールのため、コスト計算の手間なく継続的な管理を実現します。

 今回は、GitHub Copilotの具体的な機能と活用方法、メリットを紹介しました。本記事を踏まえてGitHub Copilotを提案し、ユーザー企業さまへの効率的で迅速な開発環境の提供と生産性向上を支援していきましょう。

Azure Cost Management では Azure の利用料と併せて GitHub Actions や GitHub Copilot の利用量、インフラ費用、開発ツールの利用料をまとめて確認できる。

text:日本マイクロソフト 大北崇人 氏