Copilot in github.com： GitHub Copilot のチャットを GitHub のサイト内で使うものの 1つを軽く試す【Github】

この記事は、「[GitHub Advent Calendar 2024](https://qiita.com/advent-calendar/2024/github)」の 10日目の記事です。

## はじめに
今回の話は、[github.com](https://github.com/) トップ左上のメニューでは、以下からアクセスできる機能の話です。Github内での Copilotチャットを利用できるものの一つです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/16835944-be90-0e80-614f-545e6a47f062.png)

Github のサイト内では、いろいろなところで Github Copilot のチャットを利用できますが、上記のメニューからアクセスした先だと、以下の構成のページで利用する形になります。
（※ URL は https://github.com/copilot ）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/61fd3cb0-bedb-726d-63ec-476750c98965.png)

### 利用可能なモデル
画面上部の中央で、モデルを切り替えが可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/02fb8f54-ce33-5d47-1388-caaafa3db125.png)

記事執筆時点で、自分の環境で出てくるモデルは以下の通りです。

- GPT 4o
- o1-preview
- o1-mini
- Claude 3.5 Sonnet

### コード生成を中心に軽く試してみる
実際に、このページ内でのチャットを試してみます。

主には、このページ上で表示されているサンプルを使ってみることにします（モデルの切り替えも）。

#### GPT 4o
まずはモデルは GPT 4o のままで、画面上の例として出ているものの 1つだった Python に関するものを試してみます。プロンプトは「Write a Python script that analyzes a dataset using Pandas.」です。

そうすると以下のように、Python のコードと説明を出力してくれました（※説明書きは、以下の画像では見きれていますが、コードの下に出力されていました）。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/e092c0fb-5c79-a8c1-aa4f-6fecd8b4ff1c.png)

#### Claude 3.5 Sonnet
次にモデルを「Claude 3.5 Sonnet」に切り替えてみて、その際に表示された例の １つ（JavaScript に関するもので、説明を求めるもの）を実行してみました。

こちらは、プロンプトで依頼したハッシュテーブルに関する説明が出力されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/a75a32e9-d178-5cd3-06cf-dfec300ef616.png)

#### o1-preview・o1-mini 
他 2つのモデルでも試してみます。出力の細かな違いの検証は省きますが、実行可能かを確かめるために試してみます。

まずは o1-preview で、特に問題なく出力されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/4ac59871-9222-9a88-7a04-24d4f1dce671.png)

o1-mini を試した時は、以下となりました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/1b4731bd-174e-3f15-979a-22cd456f3e75.png)

出力が途中で消える形となりましたが、これはモデルに依存した結果ではなさそうです。

以前、GitHub Copilot の設定をした内容と、上記のプロンプトでの依頼内容に対するレスポンスとが関連する結果と思われます。公式ドキュメントでは、以下のページで説明されている「パブリックコード」関連の内容です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/b00432b2-e3b1-a6d5-6ec5-e3f40276cdc5.png)

これは個人設定を変えてやれば、出力が問題なく得られるかと思います。

### GitHub内の内容に関するもの
GitHub内の内容に関するものも軽く試してみます。

#### サンプルを試す
以下、サンプルの「Fetch the latest release of nodejs/node and highlight the changes.」を試したものです。

「nodejs/node」のリポジトリの内容を読み取る対応が必要なものですが、リポジトリの内容を取得した回答が得られているようでした。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/2b5a465d-11a8-5c3b-7a5e-5bf33e56d26d.png)

#### サンプルと似た内容で試す
次に、モデルと対象のリポジトリを変えて実行してみました。

プロンプトは「Fetch the latest release of processing/p5.js and highlight the changes.」という内容で、以下のとおり問題なく出力が得られるのが確認できました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/022fbc1f-34a0-56fc-7b09-f187bdbb8117.png)

対象にしたリポジトリは、以下の p5.js に関するものです。

●processing/p5.js: p5.js is a client-side JS platform that empowers artists, designers, students, and anyone to learn to code and express themselves creatively on the web. It is based on the core principles of Processing. http://twitter.com/p5xjs

https://github.com/processing/p5.js

回答の中の「v1.11.2」の部分はハイパーリンクになっていました。この部分をクリックすると、以下のリリース情報のページ（なおかつ v1.11.2 に関する部分）へ簡単に移動できるようになっていました。

●Release v1.11.2 · processing/p5.js
 https://github.com/processing/p5.js/releases/tag/v1.11.2

#### できそうなこと（公式ドキュメントよりキャプチャ）
以下の公式ドキュメントの内容を見ると、その他にもできることが色々とありそうです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/86dd93fb-230e-a7b1-22c2-947b07b2c5bb.png)

## その他
上で取り上げた画面でのチャット以外も含む「Copilot in github.com」関連の情報も、ここにいくつか参考情報として掲載してみます。

### 関連する設定画面
Copilot in github.com に関する設定の画面を掲載してみます。

●Copilot
　https://github.com/settings/copilot

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/5f98e081-6b25-b1c5-3ee7-e4c9c1c8783f.png)

上記の設定画面のメニューで「Copilot in github.com」の有効化が行えます。

### 関連する公式・非公式の情報
関連情報として、公式ドキュメントの内容や公式・公式以外のニュースなどを掲載してみます。

説明は省いて、情報の羅列という感じになります。

#### 公式のもの

●GitHub で GitHub Copilot に質問をする - GitHub Enterprise Cloud Docs
　https://docs.github.com/ja/enterprise-cloud@latest/copilot/using-github-copilot/asking-github-copilot-questions-in-github

●GitHub Copilot IndividualプランとBusinessプランでgithub.comでGitHub Copilotが利用可能になりました - GitHubブログ

https://github.blog/jp/2024-09-27-github-copilot-now-available-in-github-com-for-copilot-individual-and-copilot-business-plans/

https://x.com/GitHubJapan/status/1839472005718139083

#### 公式以外のもの

●「GitHub Copilot」、github.comから「GitHub Copilot Individual/Business」で利用可能に - ZDNET Japan

https://japan.zdnet.com/article/35224343/

●GitHub Copilot が github.com サイト内でも実装されました | 豆蔵デベロッパーサイト

https://developer.mamezou-tech.com/blogs/2024/09/28/github-copilot-in-github-com/

●GitHub Copilot Enterprise(ベータ)で、GitHubのWebページ上でCopilotを使える！しかもリポジトリ全体をコンテクストに含めるので便利！ - Alternative Architecture DOJO

https://aadojo.alterbooth.com/entry/2024/02/09/093000

●GitHub Copilot ChatがGitHub Mobileでも正式に利用可能に。どこでも自然言語でコーディングに関する質問をAIが答えてくれる － Publickey

https://www.publickey1.jp/blog/24/github_copilot_chatgithub_mobileai.html

●GitHub.com上でのCopilotがエンプラ以外に開放（beta）など｜Productivity Weekly(2024-10-09)

https://zenn.dev/cybozu_ept/articles/productivity-weekly-20241009

## 【2024/12/21追記】
o1 が利用可能になったようです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/ea36323a-b06a-193a-9180-d523e50d538a.png)

https://x.com/github/status/1870152969544503611