コンテンツに移動
アプリケーション開発

アプリ デベロッパーの新時代が到来

2024年4月15日
https://storage.googleapis.com/gweb-cloudblog-publish/images/Next24_Blog_blank_2-03.max-2500x2500.jpg
Google Cloud Japan Team

Gemini 1.5 モデル をお試しください。

Vertex AI からアクセスできる、Google のもっとも先進的なマルチモーダル モデルです。

試す

※この投稿は米国時間 2024 年 4 月 10 日に、Google Cloud blog に投稿されたものの抄訳です。

タスクの自動化、コラボレーションの促進、イノベーションの加速をもたらす生成 AI ツールにより、ソフトウェア開発は変革期を迎えています。生成 AI によってデベロッパーの生産性と創造性が高まることは、もはや疑いようがありません。Google は、作業の効率化という面だけでなく、AI を活用した独自アプリケーションの構築という面でも生成 AI の可能性を最大限に引き出すプロダクトを提供し、デベロッパーを支援しています。

Duet AI for Developers の進化版である Gemini Code Assist では、コードの品質とセキュリティを高めながら開発プロセスを強化できます。この度、Gemini Code Assist に新機能が追加され、以下のことが可能になりました。

  • コードベース全体を認識: Gemini Code Assist に追加されたコードベース全体の認識機能(限定公開プレビュー版で提供中)により、コードベースを最大限に活用できるようになりました。世界最大級のコンテキスト ウィンドウを備えた Google の最先端モデルである Gemini 1.5 Pro が情報を深く情報するため、複雑な変更を加え、画期的な機能を追加し、更新を効率化できます。

  • コードを簡単に変換: Cloud Workstations Cloud Shell エディタにこのたび追加された新しいコード変換機能では、コードの分析、リファクタリング、最適化を自然言語プロンプトを使って Gemini Code Assist に指示できます。

  • ローカル コンテキストの拡張: 複数のコードファイルの情報を必要とするタスクをより正確にサポートするため、Gemini Code Assist で自動的に IDE ワークスペースから関連するローカル ファイルを取得し、使用するファイルへのリファレンスを表示できるようになりました。

  • コードのカスタマイズ: プライベート コードベースとリポジトリを統合して、Gemini モデルを活用した高度にパーソナライズされたコード生成とコード補完(限定公開プレビュー版)を行うことができます。また、GitLabGitHubBitbucket などの複数のコード リポジトリに Gemini Code Assist から接続できるようになりました。

  • インテグレーション サービス: アプリケーションにアクセスおよび接続できるように、Apigee Application Integration を使って Gemini Code Assist の適用範囲を拡大しています。

  • 新しいパートナーシップ: 昨年 12 月に行ったエコシステムに関する発表に続き、Snyk と提携してセキュリティ情報をユーザーに提供しています。Gemini Code Assist には Snyk のセキュリティ分析情報が活用されているため、統合開発環境(IDE)内で直接、脆弱性やセキュリティの一般的なトピックを確認して、コンテキスト アウェアなガイダンスを即座に入手できます。

コードベース全体を認識する 

Gemini Code Assist では現在、コードベース全体の認識機能を限定公開プレビュー版で提供しています。この機能では、新機能の追加、ファイル間の依存関係の更新、バージョン アップグレードの支援、包括的なコードレビューなど、コードベース全体に対して大規模な変更を実行できます。Gemini Code Assist 100 万トークンという膨大なコンテキスト ウィンドウとコード全体の認識機能により、コーディングに大変革がもたらされます。この機能は個々のファイルだけでなくリポジトリ全体を理解して、10 万行ものコードから引き出した分析情報を提供します。

コード変換機能でデベロッパーの生産性を高める 

Gemini Code Assist のコード変換機能では、自然言語を使用して IDE 内から直接、既存コードを分析、リファクタリング、最適化できます。コード変換機能を使った一例として、下の画像をご覧ください。関数をハイライト表示し、IDE 内に明確でわかりやすいコメントをオンデマンドで生成しています。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/1_SFdmvP3.gif

IDE に関しては、デベロッパー エクスペリエンスを強化する鍵として、既存のデベロッパー ワークフローへのツールのインテグレーションを進めています。Gemini Code Assist は、Visual Studio Code JetBrains のフルパッケージといった一般的な IDE をサポートしています。実際、Google Cloud 全体で Gemini Code Assist の生産性向上機能を利用できるようになっています。たとえば、Apigee 内の Gemini Code Assist(公開プレビュー版で提供中)を使用すると、仕様の生成、動作の擬似的な再現、プロキシの構築をすべて自然言語のプロンプトで行えるため、エンタープライズ クラスの API を簡単に作成できます。また、Application Integration 内の Gemini Code Assist(公開プレビュー版で提供中)では、新しいフローや拡張機能の候補が提示され、効率を最大限に高めるためにアセットがインテリジェントに再利用されます。

プライベート コードベースでコードをカスタマイズ

Gemini Code Assist の新しいコード カスタマイズ機能(限定公開プレビュー版で提供中)を使えば、プライベート コードベースを活用してより適切な回答を生成したり、組織のコード リポジトリ内にある既存のソリューションを利用するように Gemini モデルに指示したりできます。

Turing 社では、コードのカスタマイズ機能を使用することでプロジェクトをより迅速かつ効率的に、高い品質で完了できるようになりました。同社は AI を活用したテクノロジー サービスを提供し、クライアントが大規模言語モデル(LLM)をトレーニングして生成 AI ソリューションを構築できるようサポートしています。Gemini Code Assist のコード カスタマイズ機能の効果は明らかでした。この機能を導入したことで、基盤モデルのみを使用した場合と比べてコードの受け入れ率が約 70% 向上しました。

Turing における Gemini Code Assist コード カスタマイズ機能のさらなる活用方法をご紹介します。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/2_BxM3DQb.gif

Gemini Code Assist は、Turing が持つ特定のコードベースのコンテキスト内で動作します。そのため、文書化にかかる時間を短縮して、コーディングにより多くの時間を割くことができます。Gemini Code Assist Turing の社内コード リポジトリを理解し、適切な関数(「getFeatureList()」など)を正確に提案します。さらに、関連する「experimentationSDK」リファレンスも組み込みます。その結果、正確で実行可能なコードを迅速に開発できるようになります。

Turing Intelligent Talent Cloud は、優秀なリモート デベロッパーのグローバルな人材プールを提供して、企業が自社のエンジニアリング チームを形成、拡大できるよう支援しています。Gemini Code Assist によってデベロッパーは最初から正確なコードを作成できるようになり、生産性が 33% アップしました。これは、Turing プラットフォームでの開発が Gemini Code Assist によっていかに加速するかを表しています。」- Turing、エンジニアリング担当ディレクター、Kai Du

Google でのあらゆる取り組みと同様に、セキュリティとコンプライアンスは最も重要な要素です。現在、コード カスタマイズ機能に組み込む堅牢な機能(単一テナント、分離 VPC、エンタープライズ アクセス制御、監査可能なアクセス履歴など)の構築を進めています。こうした機能により、プライベート コードを保護できるようになります。また、ソースコードはさまざまな場所に格納されているため、Gemini Code Assist のコード カスタマイズ機能から GitHubGitLabBitbucket などの一般的なソースコード リポジトリに接続できるようにしています。各種デプロイモデル(プライベート、自己ホスト型、オンプレミス)もサポートしています。

デベロッパーは、一般的な提案よりも約 70% 高い確率で、Gemini Code Assist の AI によるパーソナライズされたコード提案を受け入れています。

パートナー エコシステムの拡大

Google は昨年、業界をリードする ISV パートナーのデータを使用して Gemini Code Assistwe を強化し、ドキュメントやナレッジソースなどのシグナルを統合して、パートナーのプロダクトに関するよりコンテキストに沿った支援を提供できるように Gemini Code Assist を最適化することを発表しました。この取り組みにより、DatadogDataStaxElasticHashiCorpMongoDBNeo4jPineconeRedisSingleStoreSnyk などのパートナーは、自社のプロダクトに関する深いインテリジェンスを提供して Gemini Code Assist の回答を改善できます。

そして今回、Snyk とのパートナーシップの拡大を発表いたします。Snyk はデベロッパー向けのセキュリティ ツールの大手企業であり、デベロッパーがソフトウェア開発ライフサイクルを通して迅速かつ安全にアプリケーションを構築できるよう支援しています。今回のパートナーシップ拡大により、ワークフロー内で直接、Synk が提供する実用的なセキュリティ ガイダンスを入手できるようになりました。Gemini Code Assist に、Snyk の使い方、一般的な脆弱性の解消方法、ベスト プラクティスを尋ねると、Snyk が持つセキュリティの専門知識に基づく回答が返されます。たとえば、「コードが GKE にデプロイされる前に Snyk スキャンを適用するにはどうすればよいですか?」と尋ねると、Gemini Code Assist が詳細な手順を提供します。あるいは、「ハードコードされたシークレットの使用に関する Snyk の提案は何ですか?」と質問すると、リスク分析と対処方法に関するアドバイスを受け取ることができます。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/3_FSgZrAm.gif
https://storage.googleapis.com/gweb-cloudblog-publish/original_images/4_itKvxqn.gif

今年の後半には、Snyk を使用した便利なセキュリティ機能を Gemini Code Assist に追加する予定です。この機能により、IDE 内で直接コード スニペットを事前にスキャンできるようになります。

Snyk Google Cloud の最新のコラボレーションを発表できることを嬉しく思います。このコラボレーションの目的は、Gemini Code Assist を活用してよりシームレスなデベロッパー向けセキュリティ機能を構築することです。このインテグレーションにより、デベロッパーは人間または AI が生成したコードの脆弱性を簡単に特定して修正することが可能になるため、ソフトウェア開発の取り組みを安全に加速できます。」 - Snyk、最高技術責任者、Danny Allen

生成 AI アプリケーションの開発をより簡単に

生成 AI アプリの作成はシンプルに見えるかもしれません。しかし、エンタープライズ グレードの堅牢なソリューションを開発するとなると、単にモデルを選択してプロンプトを微調整するだけというわけにはいきません。検索拡張生成(RAG)、モデル チューニング、事実に基づくグラウンディング、多額の投資が必要な MLOps などの手法を活用して、これらのモデルが生成するハルシネーションを未然に減らす必要があります。

そのため Google Cloud では、わずらわしさを軽減し、デベロッパーが本番環境グレードの生成 AI アプリケーションを迅速かつ簡単に構築できるようサポートするというミッションを掲げています。この取り組みにおいて Google はお客様のパートナーでありたいと考えており、次の重要な 3 つの方法でデベロッパーをサポートしています。

新しいテクノロジーの学習と評価の段階ですぐに利用できる

生成 AI プロジェクトに取り組むためのツールとリソースを利用できるため、迅速かつ効率的にコンセプトを実用的なプロトタイプに変えることができます。便利なリソースの一つに、生成 AI に焦点を当てたジャンプスタート ソリューションのコレクションがあります。これは、Google Cloud コンソール内で直接利用できます。たとえば、Cloud SQL RAG アプリケーションを構築するためのソリューションでは、わずか数クリックで生成 AI アプリをデプロイできます。ジャンプ スタート ソリューションは、高度な生成 AI コンセプトを迅速に理解して実装するための実践的な方法を提供します。アイデアをテストして改良する準備ができたら、Google AI Studio で提供されるプロトタイピング環境で生成 AI のコンセプトを素早くテストできます。

生成 AI アプリを構築して実行するための広範なポートフォリオ

Google Cloud では、生成 AI アプリを構築して実行するための、柔軟で使いやすいツールを幅広く提供しています。まず、Vertex AI Model Garden には 130 以上のモデルのキュレートされたライブラリ(簡単に探索、カスタマイズ、デプロイを行えるツールを含む)が用意されているため、迅速にアプリ構築を開始できます。AlloyDB などのデータベース ソリューションには、RAG ベースの生成 AI アプリ向けに強化された AI 機能が統合されているため、最も関連性の高い最新のデータを常にユーザーに提供できます。最後に、GKE Cloud Run のスケーラブルなコンテナ プラットフォームでは、生成 AI アプリを大規模に実行するために必要な効率性と柔軟性を得られます。

エコシステムの一般的なテクノロジーで既存の環境を変えずに機能を拡張

Google では、生成 AI の開発ワークフローを効率化するために各種ツールとのインテグレーションを常に拡大しています。これには、LangChain などの一般的なオープンソース フレームワークや、AlloyDBCloud SQLSpanner などの堅牢なデータベース サービスとの緊密なインテグレーションが含まれます。また、スケーリングを容易にしてデベロッパー指向の環境を提供するために、Cloud Run LangChain アプリケーションのサポートを開始しました。さらに、活発な AI コミュニティである Hugging Face と提携し、デベロッパーへのさらなる支援も行っています。他にはないこのインテグレーションにより、Hugging Face から Vertex AI または GKE にワンクリックでモデルをデプロイできるようになります。Hugging Face のユーザーは Google Cloud TPU を活用できるため、トレーニングとデプロイにかかる時間が短縮します。AI のユニコーン企業の 90% 以上が Google Cloud で構築を行っているのも不思議ではありません。

独自の生成 AI ショッピング アシスタントを作成してスキルをテストしたい方は、GitHub で簡単な RAG のデモを開始できます。このたび発表したコードベース全体の認識機能、コード変換機能、コードのカスタマイズ機能、新しいパートナーシップなどはすべて、デベロッパーを支援するためのものです。Google は、最先端の生成 AI アプリケーションの構築をこれまで以上に迅速かつ容易にするための取り組みを行っています。5,000 以上の組織が Gemini Code Assist でワークフローを変革しています。プレビュー プログラムに登録して、Gemini Code Assist のパワーを実際にご体験ください。

- デベロッパー エクスペリエンス担当バイスプレジデント、Gabe Monroy

投稿先