生成AI時代のエンジニアに必要な「AIネイティブ開発」とは
「AIネイティブ開発」とは、さまざまな用途でAIを活用しながら開発することだ。新田氏は「例えば仕様を満たすコードの生成や、バグの原因の探索、コードの要約など多様な用途で活用できます。エンジニアもAIと働く時代です」と説明する。
エンジニア領域で生成AIの利用が広がっていることは、調査データからも明らかだ。会場でも「業務に生成AIを取り入れていますか」と問いかけると、参加者の50%ほどが手を挙げた。
その中でも特に注目されているツールが「GitHub Copilot」だろう。GitHub CopilotはAIペアプログラマーであり、AIが開発者に代わってコードを自動生成し、提案する。
GitHub Copilotを使ってWebサーバーをJavaScriptで実装した場合、使わないユーザーと比べて約55%も生産性が向上するというレポートが出ている。強力なツールとして注目されているのだ。
服部氏は、GitHub Copilotについて「エディターの中だけの体験ではなく、GitHub.com上、そして開発のライフサイクルの全体で活用してもらいたいので、機能の拡張が進んでいます」と説明する。
例えば、画面の左にあるチャットインターフェースでAIとやり取りでき、まるで人とペアプログラミングを行うような体験ができる(図左)。また、Copilot Enterpriseのプランではプルリクエストに対して自動で概要を生成してくれる機能もある(図右)。AIが上司や部下として振る舞う状況に近づいていると言える。
とはいえ「ただAIを活用すればよいのではない」と新田氏。自身がChatGPTにコードレビューを依頼した際にハルシネーションが起きたことを例に挙げて、「より実践的に業務でAI活用するには、有効活用するためのテクニックが重要です」と補足した。