GitHub Copilot

    こんにちは。制作部のミンです。
    今回はGitHub Copilotについて紹介していこうと思います。


    GitHub Copilotとは、MicrosoftとOpenAIが協力して開発したソースコードを補完する有料の開発支援ツールです。
    開発者がコードを書くとき、自動的にコードの断片や関数を提案してくれます。その提案を採用し、作成中のプログラムに反映させることが可能です。

     GitHub Copilot にはさまざまな言語に関する提案が用意されていますが、特に Python、JavaScript、TypeScript、Ruby、Go、C#、C++ に適しています。他の言語も同様に動作します。
    GitHub Copilotは、独立したソフトウェアやWebアプリとして提供されるサービスではありません。対応コードエディタに、専用のプラグインをインストールすることで使えるようになります。GitHub Copilotが使えるコードエディタは、VS Code(Visual Studio Code)・Visual Studio・Neovim・JetBrainsです。

    GitHub Copilotを使うことによるメリット
    * 言語単位だけではなく、フレームワークも区別し規則に則った提案を行ってくれる。
    * 現在のファイルだけではなく、プロジェクト内のファイルの情報も含めた提案を行ってくれる。
    * こちらから提案を誘導するようなコメントも書いていなくとも、何を書きたいのかを予測して一歩先の提案をしてくれる(この体験が素晴らしい)
    実際にGitHub Copilotを活用することで、開発スピードは確実に向上していると感じます。

    GitHub copilotを使用するデメリット
    メリットが多いGitHub copilotですが、デメリットには以下のようなものがあります。

    * 機密情報の流出の可能性がある: GitHub Copilotは、プロンプトインジェクションやSQLインジェクションなどのサイバー攻撃を受ける可能性があります。これらの攻撃は、AIの脆弱性を悪用して機密情報や重要なデータを引き出すことができるため、大きなリスクを伴います。あと、Copilotは最初にソースコードを要求し、コードを提案します。ソースコードには、コメントコードに含まれる可能性があるデータのような機密情報が含まれる場合があります。したがって、ソースコードをアップロードすると、機密情報がCopilotによって分析されます。したがって、情報の流出の可能性があります。
    * コードの著作権が不透明: GitHub Copilotが出力するコードの著作権は複雑で不明瞭であり、他者のコードを部分的にまたはそのまま使用してしまう可能性があります。これにより、著作権侵害のリスクが発生する可能性があります。
    * コードの不具合も自己責任: GitHub Copilotが出力したコードの不具合や品質の責任は、すべてプログラマーが負います。AIによって生成されたコードの最終的な確認はプログラマーによって行われる必要があります。

    GitHub Copilotの料金
    Organization および Enterprise の GitHub Copilot Business サブスクリプションと GitHub Copilot Enterprise サブスクリプションは、毎月のサイクルで利用できます。 サブスクリプションは次の価格で課金されます。
    * GitHub Copilot Business では、ユーザーあたり 1 か月で 19 米国ドル。
    * GitHub Copilot Enterprise では、ユーザーあたり 1 か月で 39 米国ドル。

    GitHub Copilotはエンジニアにとって同様な道具になり得る可能性を大きく秘めており、職場として提供できるかどうかは開発者体験 に大きくかかわるものだと感じました。 ただし、このツールの制限事項を理解し、必要に応じてその提案を編集できるようにしておく必要があります。

    以上、「GitHub Copilot」の紹介でした。