こんにちは、デザイン&エンジニアリング部の山田です。
2023/1/12(金)に TIS INTEC Group Innovation Hub(TIH) にて開催された GitHub Copilot ハンズオンイベントのレポートをお送りします。
本イベントは GitHub社のエンジニアを講師にお招きし、TISインテックグループの社員・パートナーを対象に開催されました。募集定員がオンサイト50名、オンライン90名に対しどちらも早々と枠が埋まったことから、GitHub Copilotへの関心の高さがうかがえます。

イベント概要

本イベントはGitHub Copilotの概要を知り、体験することまで行うハンズオンイベントです。

以下の構成に分かれ、GitHub Copilotを使ったことがないユーザ、使ったことがあるユーザともに多くの学びを得られる機会となりました。

・GitHub Copilotの概要紹介

・プロンプトクラフティング

・ハンズオン

・まとめ・アンケート

GitHub Copilotの概要紹介

まずは、GitHub Copilotの概要の紹介がありました。

GitHub CopilotはAIを利用したプログラミング支援サービスであり、利用者は150万ユーザを超え、37000以上の企業が採用しています。本章ではGitHub Copilotの仕組みや認証の解説、利用の効果 など基本的な事項に関しての解説が行われました。

GitHub Copilotの効果検証結果の紹介においては、GitHub Copilotを利用した場合とそうでない場合の事例の比較事例が紹介されました。GitHub Copilotを利用していた場合は、タスク完了までの平均時間に2倍以上の差が出たとのことでした。

続いて、GitHub Copilot Chatとその効果的な使い方の紹介やGitHub Copilot Chatのスラッシュコマンドの紹介が行われました。

GitHub Copilot Chatのスラッシュコマンドの紹介においては、1コマンドで対象としているファイルに対して命令が実行できることが紹介されました。/explainでコードの解説を要求する、/testsで選択されたコードのテストコードを作成するなど、プロンプト作成をせずにかんたんに命令できます。

プロンプトクラフティング(プロンプト作成の考え方を紹介)

まず、プロンプトクラフティングを行うための解説が行われました。プロンプトクラフティングとは、プログラムに対して自然言語によって明確な指示を与えるプロセスのことです。

GitHub Copilotは確率論的に結果を生成するため、入力値に対して何が出力されるか予測できず、同じ入力を与えても異なる回答が出力されることがあることが特徴です。その特徴を持つ中で、効果的なプロンプトを作成するための4つの原則(文脈・意思・鮮明・具体的)や具体的な要素やコツがレクチャーされました。

たとえば

  • 文脈:コメントなどにおいて入力する文脈が重要であること
  • 鮮明:指示があいまいではなく理解しやすいこと

といったような原則が紹介されました。

本章では参加者から「他の生成AIサービスと比較した、GitHub Copilotの優位性はどこか」という質問が出ました。

講師のダニエル氏からは

  • 他のAIチャットと異なり、毎回情報入力をせずともファイルを開いておくだけで文脈を読み取ってくれることによってハルシネーション(AIが事実に基づかない返答をすること)の可能性が減ること
  • すでにプロンプトの調整が行われており、プロンプトエンジニアリングを意識しなくてよいこと

が挙げられました。GitHub Copilotはよりプログラミングに特化したサービスであることが改めて分かります。

ハンズオン

続いて、GitHub Copilotを体験するハンズオンが実施されました。参加者は講師とともに60分ほど手を動かします。

参加者が使う言語は問わないとのことで、各々が自由に言語を選択しハンズオンに参加することができました。

事前に参加者にとったアンケートでは、普段もっともよく使う言語は以下のような結果でした。

Java 50%
Python 16%
JavaScript 13%
その他(C#、TypeScriptなど) 21%

講師のダニエル氏はPythonを使用してデモを行いました。

プロンプトクラフティングにて説明があった原則・コツに触れながら、ソースコードを作成していく流れと考え方、出力内容の解説が行われました。GitHub Copilot Chatの利用タイミングや詳細な解説を聞くことができるのはハンズオンならではです。

先述の通り、GitHub Copilotからの提案は毎回異なる可能性があり、提案されたコードが何を行っているのか、正しいかなどを利用者が判断する必要があります。ダニエル氏はあくまでもGitHub Copilotは副操縦士であることを強調しつつ、短いハンズオンの時間の中でより最適なコードを生成するための解説してくださいました。

参加者の方々は時折周りの方と相談しつつ、もくもくとハンズオンを進めていました。

ツールに造詣の深い方から、使い方だけでなくソースコードを作成する流れや考え方を直に学べる機会は、参加者にとっても貴重な学びになったのではないでしょうか。

ハンズオン参加者の感想

最後に、ハンズオン参加者の感想の発表がありました。発表者にはGitHubオリジナルグッズがプレゼントされるおまけつきです! 参加者からは次々と手が上がり、イベントにてGitHub Copilotを利用した感想を伝えてくれました。

当日出た感想を一部抜粋してお届けします。

  • 「GitHub Copilotを使えば誰でもコードを書くことができるのか?」と疑問に思っていた。ハンズオンを経て、提案を受け入れるか否かなどを利用者が意思決定する必要があることを知った。
  • 日ごろからGitHub Copilotを使っていたが、今回のイベントでテストコードの作成が楽にできることを知った。ぜひテスト駆動開発もしてみたい。
  • 普段はChatGPT Plusを使ってデバッグを行っていたが、文脈を渡すことに苦労していた。それに比べてGitHub Copilotはコードを書くプロセスに組み込みやすいと感じた。

GitHub Copilotを利用したことがある方もそうでない方も、今回のハンズオンを経てGitHub Copilotの便利な使い方を体感し今後も使っていきたい、という感想が多く出ていたことが印象的でした。

参加者が感想を述べている様子の写真

実施後アンケート

本イベントでは参加者を対象にアンケートを実施しました。

「GitHub Copilotハンズオンは、満足頂けましたか?」という質問に対しては、満足・やや満足と回答された方が97%と高い評価が得られました。参加者のみなさまがハンズオンを経てGitHub Copilotに関して知りたかった・知らなかった情報を得られたことがうかがえます。

ここで、アンケートにお寄せいただいたご意見をピックアップして紹介いたします。

  • 思ったより的確なコードが生成できることを知ることができた
  • 元々これから導入予定だったのですが、期待感が高まりました!今後は上手くAIを活用出来るようにドキュメントの形式を変えていくような動きも求められるように感じました。(設計書をマークダウンで書いてGitHub Copilotに読ませるなど)
  • 開発の産業革命が起きる予感がせざるを得ません。

GitHub Copilotが実務に十分適用できる品質であり、期待感が高まったことがわかるご意見が多く寄せられていました。また、今以上に広い用途・ツールでGitHub Copilotを使いたい、というご意見も複数ありました。今後のGitHub Copilotのさらなる進化が楽しみです。

まとめ

本イベントはGitHub社・マイクロソフト社のご協力のもと開催されました。この場をお借りして御礼申し上げます。

筆者にとって特に印象的だった個所は、GitHub Copilotを利用した場合とそうでない場合、タスク完了までの平均所要時間に2倍以上の差がついた、という事例の紹介でした。GitHub Copilotによって生産性が向上するであろうことは予想していましたが、圧倒的な生産性の差を見て、今後使いこなしていく必要性があることをさらに実感しました。

参加者の感想やアンケートの結果からも期待の高まりが感じられ、今後さらにGitHub Copilotの活用が進んでいくことが予測されます。