AI支援の開発からAIエージェントベースの開発へ–Google CloudのB・カルダー氏
今回は「AI支援の開発からAIエージェントベースの開発へ–Google CloudのB・カルダー氏」についてご紹介します。
関連ワード (CIO/経営、トップインタビュー等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
Google Cloudは8月1〜2日、同社カンファレンス「Google Cloud Next Tokyo ’24」を開催した。同カンファレンスに合わせて来日した同社のプラットフォーム バイスプレジデント兼ジェネラル マネージャーのBrad Calder氏に同社が提供する開発向け生成AI製品について話を聞いた。
同社は、Googleの生成AI「Gemini」を搭載した開発関連の製品として「Gemini Code Assist」と「Gemini Cloud Assist」を提供する。Gemini Code Assistは、AIコード支援ソリューションとしてコードを記述・提案・リファクタリングする。Gemini Cloud Assistは、アプリケーション開発ライフサイクル全体をAIで支援する。
Gemini Cloud Assistは、アプリケーションの「設計」「サポートとトラブルシューティング」「コストの最適化」を柱とするとCalder氏は説明する。アプリケーションの開発や設計、トライブルシューティングやサポート、コードレビュー、テスト、環境の管理、セキュリティ、最適化といった領域で変革をもたらすことを目指しているという。Geminiが最も強みを発揮するコード生成だが、アプリケーション開発ライフサイクル全体にわたる支援を提供できるよう開発が進められている。
2025年には、これら全ての機能が利用可能になるだろうと同氏は考える。しかし、それはスタート地点に過ぎず、今後数年のうちにAIシステムがライフサイクル全体を自動的に実行するようになることが理想であり、それを目指しているという。
検索拡張生成(RAG)のような手法を使用し、企業のプライベートコードベースを理解・活用することは既に可能だが、関連した機能がさらに今後登場するとCalder氏は語る。Geminiや「ChatGPT」などをウェブサイトから利用して特定の関数を記述させることは可能だ。しかし、ユーザーのコードベースは考慮されない。Gemini Code Assistを統合開発環境(IDE)と組み合わせて使うことで、コードベース全体を理解した上でコードの記述やリファクタリングが可能になる。
Gemini Code Assistで「Apigee」によるAPIの管理、「SQL」の生成、セキュリティの統合といった機能を提供することでも、アプリケーション開発ライフサイクル全体をサポートする。これらは、開発者がアプリケーションに必要な全ての機能にアクセスできるようにする。
さらに、「Gemini in Databases」「Gemini in BigQuery」「Vertex AI」「AlloyDB」「Spanner」といったサービスが提供されているが、そこには、AIアプリケーションやAIエージェントを簡単に開発できるようにしたいという考えがある。「これもGeminiが持つ強みの一つだ」(Calder氏)
顧客がGeminiを利用する理由として、2つの重要な側面があるという。まず、マルチモーダルであるため、AIエージェントを構築する際、動画、テキスト、音声を全て利用できること。そして、200万トークンのコンテキストが入力可能なので、コードベース全体を使って開発を進められることだとCalder氏はアピールする。
開発向け生成AI製品の提供においては、Gemini Code Assistが登場した後、Gemini Cloud Assistがそれに続くという順番になった。これは、最初にコード生成やテスト生成に注力した方が短時間で大きなメリットを得られる部分があったからだという。しかし、アプリケーション開発ライフサイクル全体をサポートするという考えは以前からあり、その例として「App Hub」がある。
App Hubは、Google Cloudプロジェクト全体でアプリケーション、サービス、ワークロードを一元的に追跡するためのサービス。リソースからメタデータを抽出し、アプリケーション環境の統合ビューを提供する。
ソリューションオーナーがアプリケーションのコストをより管理したい場合、利用率を見ながら、コストが最もかかっているのはどこかを考える必要がある。App Hubを使うことで、アプリケーションリソースの割り当てについて、アプリケーションでどれだけ使われているかという観点で把握できる。同様に、トラブルシューティングにおいても、アプリケーションにネットワークエラーがあるような場合、どのコミュニケーションパスで発生しているかといったことの特定を可能にする。
App Hubがなければ、仮想マシンやストレージといったリソースの膨大なリストが単に得られるだけだとCalder氏はいう。App HubとAIを組み合わせることで、より充実したガイダンスを提供できるようになる。App HubがあったことでGemini Cloud Assistが可能になったと同氏は述べる。
企業が開発領域でAIを採用する際の課題としては、導入プログラムの作成が挙げられる。これは、これまでとやり方を変える必要があるためだが、Gemini Code Assistの場合、トレーニングプログラムが用意され、包括的に導入するにはどうするかなどが支援される。企業は、アプリケーション開発の高速化、品質やセキュリティの向上が期待できることから、AIの導入を歓迎している。とはいえ、技術の利点を最大限に活用できるよう、十分な教育が重要だという。
一方で、同社は、顧客と協業することでフィードバックを得ており、それを基にIDEにおける体験などが継続的に改善されている。AIを開発で使用するのは比較的新しい分野なためだとCalder氏は指摘する。
現在、AI機能を導入する開発向けサービスが増えている。競合サービスに対する差別化要因として、Calder氏は、入力可能な200万トークン、企業が持つコードベースの理解、ApigeeによるAPIの管理などを挙げる。
また、GitHubやGitLabといった複数のサービスに対応していることは、さまざまなソリューションを必要とするコングロマリットのような大手顧客では有利に働くという。データレジデンシーにおいても優位性がある。米国だけでなく複数の国でGPUやTensor Processing Unit(TPU)の利用を可能にしているので、それらの地域でデータレジデンシーに関する問題に対応できる。
今後の予定としては、短期的には、先述のアプリケーション開発ライフサイクル全体への対応がある。長期的には、AIエージェントによる開発に目を向けているとCalder氏。現在、AIアシスタントが多くの作業を支援するようになっている。将来的には、AIエージェントを使うことで、セキュリティ上の問題をバックグラウンドで検出したり、大規模なリファクタリングや自動化を実行したりすることなどを考えているという。
「AIが支援する開発からAIエージェントベースの開発へと移行する方法を長期的な視点で検討している」(Calder氏)