1. システムとオフィスの融合
  2. media
  3. 仕事効率化 Open AI GitHub
  4. 【AIでコーディング効率化】GitHub Copilotって何?新入社員がGitHub Copilotのライセンスや主な機能について解説

QESブログ

【AIでコーディング効率化】GitHub Copilotって何?新入社員がGitHub Copilotのライセンスや主な機能について解説

  • LINEで送る
  • このエントリーをはてなブックマークに追加
はじめまして!新入社員でDXソリューション営業本部1年目の大和矢です。
本ブログはGitHub Copilot初心者の筆者がまとめたもので、GitHub Copilotの概要を簡単に知りたいという方向けの記事です。

GitHub Copilotとは

初めに、GitHub Copilotを簡単にまとめると、以下の通りです。

  • GitHub・OpenAI・Microsoftにより共同開発されたツール
  • AIがペアプログラミングのパートナーとしてサポートしてくれる
  • コードの自動生成や補完を行い、開発者の作業を効率化してくれる
  • 多くのプログラミング言語に対応
  • サブスクリプションサービス

GitHub Copilotは、様々なレベルの開発者のコーディングをサポートしてくれるツールです。
プログラミング初心者の筆者もGitHub Copilotを使用してコーディングしてみましたが、そのコードを見た上司に「本当にプログラミング初心者?」と疑われるほどの効果がありました!

GitHub Copilotサブスクリプションプラン

GitHub Copilotのサブスクリプションプランは、以下の3つがあります。
いずれも基本的には有料となっております。

GitHub Copilot Individual

■ 料金:ユーザーあたり月額10ドルまたは年額100ドル
■ 30日間の試用版が用意されています。
■ 以下の条件を満たす場合、無料で利用することができます。

  • 学生(GitHub Student Developer Packに登録済み)
  • 教師(GitHub Educationで検証済み)
  • オープンソース保守管理者(人気のあるオープンソースプロジェクト)

■ 主な利用可能な機能として、以下が挙げられます。

  • コード補完機能
  • 主要IDE(Visual Studio Code, Visual Studio, JetBrains IDE, Azure Data Studio, Vim/Neovim)との統合
  • Copilot Chat:コーディング関連の質問ができるチャットインターフェース

GitHub Copilot Business

■ 料金:ユーザーあたり月額19ドル
■ Individualプランの機能に加えて、以下の追加機能があります。

  • セキュリティとプライバシーの強化
  • チーム向け管理機能

GitHub Copilot Enterprise

■ 料金:ユーザーあたり月額39ドル
■ Businessプランの全機能に加えて、以下の追加機能があります。

  • GitHub.com上でのCopilot Chatの利用
  • プルリクエストの要約機能
  • 組織内のドキュメントやコードベースをもとに、問に対する回答を生成
  • 組織の特定のコードベースを使ってAIモデルをトレーニング

参照:https://docs.github.com/ja/copilot/about-github-copilot/subscription-plans-for-github-copilot

以上の3つのプランから、ビジネスニーズに合ったプランを柔軟に選択することが可能です。
※今後料金が変わる可能性があるため、上記参照リンクをご参照ください。

GitHub Copilotの主な機能

GitHub Copilotの機能として、主に以下のような機能があります。
実際に、筆者がVisual StudioでGitHub Copilotを使用してC#のコーディングを行っている様子を交えながら、機能のご紹介をしていきます。

コードの自動補完

コードを入力する際に、リアルタイムで補完候補を提案してくれます。
筆者がAddメソッドを作成しようと'static int Add'と入力したところ、薄い文字で続きのコードが生成されました。


これが、GitHub Copilotによるコードの自動補完機能です。
自動補完を利用することにより、コーディングのスピードおよび効率が向上します。

コメントからのコード生成

コメントを入力すると、コメントに基づいたコードを生成してくれます。
ここでは、「バブルソート」というコメントを入力したところ、バブルソートアルゴリズムを実装したBubbleSortメソッドが実装されました。


このように、GitHub Copilotはコメントに基づき、コードの提案を行ってくれます。

Copilot Chat

Copilot Chatでは、チャット形式で対話を行い、リアルタイムで回答を得ることが可能です。


ここでは、先ほど作成したBubbleSortメソッドを範囲選択した後、Copilot Chatにて「このメソッドを説明して」と質問してみました。すると、GitHub Copilotがコードの説明を返してくれました。
これがCopilot Chatの機能で、コードの説明や修正の提案、ユニットテストケースの作成など、様々な使い方が可能です。

多くの主要プログラミング言語に対応

多くのプログラミングに対応しており、以下はその一部です。

  • Java
  • JavaScript
  • C++
  • C#
  • Python


使用時の留意事項

GitHub Copilotを利用する際には、以下の点に留意することが重要です。

  • 生成されるコードをは必ずしも完璧ではないため、レビューと修正が必要
  • プロンプト(入力するコメントや指示)が重要
    具体的で明確なプロンプトの入力で、より適切な提案を得ることが可能です。
    例えば、以下の二つのプロンプトを比較してみます。

    ■抽象プロンプト:カレンダーを出力するメソッドの生成


    ■具体プロンプト:メソッド実行時の日付を取得して、その月のカレンダーを出力するメソッドの作成


    メソッドを実行すると、以下の画像のような簡易カレンダーが出力されます。
    今回は、2つのメソッドの実行結果に大きな差異がないため、1つの結果のみを掲載します。


    抽象プロンプトでは、引数に年月を入力することでその月のカレンダーを出力するメソッドを生成しています。
    一方、具体プロンプトでは、実行月のカレンダーを出力するメソッドを生成しています。
    このように、具体的で明確なプロンプトを入力することで、より思い通りのコードを生成してくれます。
  • セキュリティやプライバシーに関する考慮が必要です。
    機密情報や個人情報を含むコードを入力する際には注意が必要です。
  • AIの提案は参考として利用し、最終的な判断は開発者自身が行う必要があります。


まとめ

今回は、GitHub Copilotのサブスクリプションや主な機能について簡単にご紹介しました!
開発者であれば、近年話題のChatGPTのようなAIツールにコードを投げかけたことがあるのではないでしょうか?
GitHub Copilotは主要なIDEに統合されており、リアルタイムでコード生成や提案をしてくれるため、まるでペアプログラミングを行っているかのような感覚になります。まさに「Copilot(副操縦士)」の名にふさわしい存在です!

筆者はコーディングの新人課題に取り組む際に、GitHub Copilotを初めて使いましたが、 非常に頼もしい副操縦士でした。具体的な使用方法として、まずGitHub Copilotが生成したコードをもとに作業を開始し、その後、上司にレビューをお願いしました。受けたフィードバックをもとに、再度GitHub Copilotと共にコードを修正していくというプロセスを繰り返すことで、課題を完成に近づけることができました。このように、GitHub Copilotは心強い副操縦士として機能します。

最後までお付き合いいただき、ありがとうございました。
少しでも興味が湧き、この便利なツールを活用してみたいと思った方は、ぜひ実際にGitHub Copilotを利用してみてはいかがでしょうか。

また、GitHubは2024年10月30日にGitHub Sparkというサービスを発表しました。
GitHub Sparkとは、ユーザーが自分のニーズや好みに合わせたマイクロアプリ(スパーク)を作成・共有できるAI駆動のツールです。このツールを使うことで、コードを書くことなく、デスクトップやモバイルデバイスから直接利用できるアプリを簡単に作成することができます。
直近の発表で情報がまだ少ないですが、詳細は以下のリンクをご参照ください。
https://githubnext.com/projects/github-spark

QUICK E-Solutionsでは、AIサービスを利用したシステム導入のお手伝いをしております。
それ以外でも様々なアプリケーションの開発・導入を行っております。
提供するサービス・ソリューションにつきましては こちら に掲載しております。
システム開発・構築でお困りの問題や弊社が提供するサービス・ソリューションにご興味を抱かれましたら、是非一度 お問い合わせ ください。

※このブログで参照されている、Microsoft、Visual Studioその他のマイクロソフト製品およびサービスは、米国およびその他の国におけるマイクロソフトの商標または登録商標です。
※その他の会社名、製品名は各社の登録商標または商標です。
  • LINEで送る
  • このエントリーをはてなブックマークに追加

お気軽にお問い合わせください。

ページのトップへ