「GitHub Copilot Chat」の影響はコード品質にも
一方で、AIによって生成されるコードの品質が気になる方も多いのではないだろうか。開発者は、エラーの発見やテスト、デバックなどはもちろん、脆弱性にも立ち向かっていかねばならない。そのために、コーディングの速さと同じぐらいその品質も注目されている。
Copilot Chatはこの点に関しても役に立つ。開発者にとって最も基本的な単体テストに関しては、コードを選択し/testsと入力するだけでテストを生成してくれる。また、修正の際も/fixで生成してくれる。
またGitHub.comではコードを選択すると、そのコードが何を実行するのかを説明してくれる。プルリクエストの概要もアイコンをクリックするだけで生成してくれるので、レビューも効率的になるだろう。
セキュリティ面では進化した「GitHub Advanced Security」が支援してくれる。これまでAdvanced Securityでは潜在的な脆弱性を見つける「コードスキャン」、依存関係にあるライブラリなどを検索できる「依存関係スキャン」、トークンの漏えいを防止する「シークレットスキャン」の3つの機能を提供してきた。
今回それに加え、GPT-4を活用した「Code scanning autofix」が発表された。これにより、Advanced Securityで通知された脆弱性を修正するコードを提案することが可能になった(現在プレビュー機能)。また、パターンによる検出にとどまらず、AIによるコード内シークレットを検出してくれる機能も追加された。
組織のベストプラクティスが使える「GitHub Copilot Enterprise」
続けて紹介されたのが、上記のCopilot Chatの特性を開発組織に適用する「GitHub Copilot Enterprise」だ。Copilot ChatをGitHub.com上のリポジトリに接続することで、開発者がドキュメントや内部コード、プライベートリポジトリに基づいた提案を受けることができる。組織のベストプラクティスなどの集合知がすぐに使えるようになるので、アプリケーションや機能、アップデートの展開が容易になる。
なお、GitHub.comの新機能により、個人アカウントからエンタープライズアカウントへの切り替えもワンクリックで可能になっている。一見地味だが、コンテクストスイッチによる認知負荷が減らせるのは大きい。
「GitHub Copilot Enterprise」は現在プレビュー版が提供されており、一般提供は2024年2月を予定している。
DockerやPostmanも⁉ GitHub Copilotと既存ツールを統合するパートナーシップ
このように、「GitHub Copilot」は速度と品質の両面で、個人/組織を問わず、開発を楽にしてくれる。「使ってみたい!」と思う開発者は多いだろう。そうなると他に使っているツールやサービスとの連携が気になる人も多いのではないだろうか?
そうした疑問に答えるべく、今回の発表と同時にパートナープログラムに関する情報も公開された。データベースクエリのパフォーマンス向上や、機能フラグのステータ
スチェック、A/Bテストの結果の確認など、GitHub Copilotでできることを増やしていくという。
その第一段階として、Docker、Datastax、LaunchDarkly、Postman、Hashicorp、New Relic、Datadogを含む25社以上のパートナーが紹介された。デモでは、Copilot Chatから製品に関する情報を質問する様子を見ることができた。
AIでアイデアをコードに変える「GitHub Copilot Workspace」
基調講演の最後に発表され、大きな話題となったのが「GitHub Copilot Workspace」だ。これはIssueを起点に、GPT-4が意図した変更を実装するためのプランを自動的に提案するもの。編集が可能なので、希望する方向にAIを誘導することができる。また、変更が期待どおりか検証するために、コードをビルド、実行、テストすることもできる。エラーが発生した場合は、自動的に修正案を提供する。これにより、開発者がアイデアをコードに落としこむ作業が容易になる。現在、Copilot Workspaceは開発の初期段階で、2024年の提供を目指している。
ドンケ氏はこの発表に関して「Copilot Workspaceのリリ-スは、開発者がAIを第二の脳として使用し、自然言語で瞬時に実現する未来への第一歩にすぎません。この人間とAIの交差点が、AIを搭載した開発者プラットフォームとしてのGitHubを形作るでしょう」と語り講演を締めくくった。
基調講演を通して、生成AIを通して自然言語をプログラミング言語のように扱い、開発サイクルのすべてを高速化・効率化するというGitHubのビジョンが見て取れるセッションだった。
一連の発表から「開発者の仕事が奪われるのでは」と悲観的に捉えてしまう向きもある。しかし、GitHubはそう考えてはいないようだ。GitHubによる調査では、開発者の生成AIによる生産性向上は世界のGDPを1.5兆ドル増加させ、それに伴い開発者の需要も増えると予想している。そうなると、Copilotをいかに使いこなし、文字通り仕事のパートナーとしてうまく付き合うかがカギになってくるだろう。またそこまで堅苦しく考えなくても、仕事上で煩わしいと感じる習慣が減るので、開発者体験の向上にもつながりそうだ。まずは2024年が始まる前に「GitHub Copilot Chat」に触ってみて、一足早く未来を体験してみてはいかがだろうか。
