はじめに
弊社では、エンジニアチームの生産性向上と質の高いソフトウェア開発を目指し、最先端の技術を積極的に取り入れています。
このたび、GitHub Copilot と ChatGPT を弊社の開発環境に導入することにしました。これらの技術を活用することで、エンジニアの日常業務が効率化が期待できます。
本記事では、それぞれのツールの概要と、弊社での導入方法、期待について書いていこうと思います。
GitHub Copilot の概要
GitHub Copilot は、AI 駆動のコーディング支援ツールで、エンジニアがコードを効率的に書くのをサポートします。GitHub と OpenAI が共同開発したこのツールは、GPT-3 技術をベースにしており、エンジニアが書いているコードを理解し、そのコンテキストに合ったコード補完候補を提示します。これにより、コードの品質が向上し、開発時間が短縮されることが期待されます。
ChatGPT の概要
ChatGPT は、OpenAI が開発した GPT-4 ベースの AI 機能を活用したチャットボットです。自然言語処理技術を駆使して、質問に答えたり、文章の作成や校正をサポートしたりすることができます。弊社では、ChatGPTを用いて技術的な問題解決やドキュメント作成のサポートを期待しています。
導入方法
GitHub CopilotはOrganizationでfor Businessを導入できるため、弊社はGitHub Copilot for Businessを契約しています。弊社では開発に PhpStormやGoLandなどのJetBrains製IDEを採用しているため、プラグインとして簡単に導入することができました。
一方、ChatGPTについては同様のOrganizationとしてのプランが存在しないため、エンジニア各自が契約する形で導入しています。支払いは会社からエンジニア個人にバーチャルカードを付与し精算し、領収書を経理宛てに転送するという形で行っています。
ChatGPTについては利用ガイドラインを設け、オプトアウト設定の実施と投入して良い情報についてルール化を行っています。
使い方と期待する効果
弊社では、以下のようなシチュエーションで GitHub Copilot と ChatGPT の活用を考えています。
コーディング時の生産性向上
GitHub Copilot を用いて高度なコード補完を活用すると今までメソッド名やメンバ変数程度だったコード補完が行やブロックレベルで行われるためコーディング作業での生産性の大幅な向上が見込めます。
テストコード生成の支援
秘匿情報を含まないソースコードを ChatGPT に送信し、ドメインモデルからテストコード生成を支援してもらうことが考えられます。
技術的質問への対応
導入して数日ですが、技術的質問をChatGPTに問い合わせたり、回答を元に検索を行うことで調査がスムーズになった実感があります。ChatGPTの回答を鵜呑みにせず、検索キーワードを見つけるなど使い方には注意しています。
文章校正の支援
ChatGPT は文章構成に優れており、ドキュメントや記事作成時に校正を依頼することで品質向上が期待されます。この記事も記述してからChatGPTに校正を依頼し、ブラッシュアップしています。
まとめ
GitHub CopilotとChatGPTの導入により、弊社エンジニアの生産性向上や質の高いソフトウェア開発が期待できます。活用事例や効果などなにか見つけられたら今後も弊ブログで公開していきたいとおもいます。