AIネイティブな開発の3つのポイント
続いて、AIネイティブな開発のためのポイントを3つ挙げ、それぞれ解説した。「ツール特性の理解」「プロンプト作成時の4要素を理解」「AIフレンドリーな開発を心がける」の3つである。
ツール特性の理解
服部氏は「ツールとモデルを混同しているケースが多いが、われわれが開発しているのは開発者体験を最大化するためのAIツールです」と強調する。AIツールごとに期待できる価値は異なるため、ツールの特性と自分のやりたいことを理解することが重要だ。
例えば「ある程度頭の中に書きたいコードがあって取り出す作業をしたいだけであれば、AIを用いたコードの自動補完機能でよいですが、もう少し対話形式でやりたいという場合にはChat形式の機能を使うとよい」という。
その中でGitHub Copilotの大きな特徴は以下の4点だ。特に「確実で安全な出力」についてはエンタープライズから注目されている。「ライセンス汚染を防ぐため、毎回世界最大、最新のオープンソースデータベースにクエリを投げて安全なものだけを返す仕組み。GitHub Copilotを使う理由になっています」と服部氏。
プロンプト作成時の4要素
服部氏は、GitHub Copilotにおけるプロンプトのコツを「文脈」「意図」「明瞭さ」「具体性」の4つだと説明する。
AIが何の情報を持っているのかを正しく理解して期待することが大事だという。ノイズを入れ過ぎると精度が下がっていくので、正確な情報を伝えてコントロールする。また、コンテキスト変数の使用やワークスペース指定するエージェント機能を使うなど、該当スコープで何をやりたいのかを明らかにすることが重要だ。
AIフレンドリーな開発
服部氏は、ai-native.devにおいて「GitHub Copilot Patterns & Exercises」を公開し、GitHub Copilotを活用した開発のベストプラクティスを共有している。服部氏は、その中で重要な項目を紹介した。
まずは一貫性。一般のプログラミングにおいても命名規則を守ることが重要であるように、GitHub Copilotが読み込むデータも分かりやすいことが好ましい。「AIに理解してもらいやすいコードを書くことで、AIからも最高のアウトプットをもらえる」という。
また、GitHub Copilotは副操縦士という意味があるように、開発者自身がキャプテンとしてハンドリングすることが求められる。「無限に情報を渡して、過度な期待を持つのは避けるべき」と服部氏。ハイレベルのアーキテクチャをある程度定義し、小さなコードチャンクに区切って作業するとよい。
さらに、今後GitHub Copilotが開発のライフサイクル全体に入り込んでいくと考えると、「ドキュメンテーションや詳細設計、デザインドキュメントなどが高度に実装に変換可能なものになる可能性がある」と服部氏は言う。AIが読みやすいドキュメント形式まで考慮すると、最終的な成果物の精度も向上すると期待できる。
また、服部氏いわく「AIは発散は得意だが収斂は苦手」。プロンプトのテクニックとしても、オープンクエスチョンで尋ねてテストやリファクタリングのバリエーションを出すことに集中すると有効に活用できる。プロンプトの使いこなし方については、社内やチームで共有し、テクニックを標準化することもおすすめだという。
これからのエンジニアに求められるスキルとは
「これからのエンジニアに求められるスキル」についてのパートでは、新田氏と服部氏両名が議論を交わした。
新田氏が「求められるスキルが大きく変わるのではなく、人と人の間にAIが入ることでスピードが上がる印象がある」と話すと、服部氏もうなずき「良いコードをAIに書かせるためには、コードを書かせる術をエンジニアが知っている必要がある」と提言。GitHub Copilotを含めた生成AIツールは、「最強の学習ツールでもある」と指摘し、教育の観点での活用可能性に期待を寄せた。
また、生成AIツールを活用する際には、試行錯誤が重要になる。服部氏は「どういうふうに組み合わせたらいいアウトプットが出るのか探ることは、体験を通して探っていく領域です」と話し、「時間をかけて、自分で学んでいくことが大事」だとした。
さらに新田氏は、「これまでも開発効率を上げるためにエディタの設定やCLIの工夫をしてきたように、AIツールも開発生産性を上げるためにセッティングをして、それを周囲に共有していくことになるのでは」と推察する。服部氏も「ベストプラクティスをチームで共有することで組織の開発効率を上げることが、これからの議論になっていく」と指摘。
「AIネイティブ開発は、エディターの中に収まるものではない。組織として、エンジニアチーム全体でどう力を養っていくのかが重要になっていきます」(服部氏)
最後に、新田氏のギブリー社が提供する開発案件マッチングプラットフォーム「Track Works」と、生成AIのスキルを習得するオンライン講座「Track Academy」が紹介された。
Track Academyは「生成AIに関する知見からプロンプトエンジニアリング、RAG開発やAIネイティブ開発を完全にオンラインで学べることができるようなアカデミー」だ。
新田氏は「興味のある方はぜひ参加してください」と呼びかけてセッションを締めくくった。