マルチモーダル リクエストにサイズの大きいファイルを含め、Cloud Storage for Firebase を使用してファイルを管理する

Gemini API Vertex AI in Firebase SDK を使用している場合は、Gemini モデルにテキストの生成を 基づいています。マルチモーダル プロンプトには複数のモダリティを含めることができます テキスト、画像、PDF、動画、音声などが含まれます。

入力のテキスト以外の部分(メディア ファイルなど)には、必要に応じて Cloud Storage for Firebase: リクエストにファイルを含めます。。 この機能について知っておくべきことを大まかに説明します。

  • Cloud Storage for Firebase は、任意のマルチモーダル リクエストで使用できます( テキスト生成、チャットなど)で構成されます。このは、 このガイドでは、基本的なテキストと画像の入力について説明します。

  • ファイルの MIME タイプと Cloud Storage for Firebase URL を指定します。 (常に gs:// で始まります)。これらの値は Cloud Storage にアップロードされたすべてのファイルに自動的に割り当てられるメタデータ あります。

  • サポートされているファイル形式と URL を使用する必要があります。

で確認できます。


このソリューション ガイドでは、Cloud Storage for FirebaseGoogle Cloud は、アプリから Cloud Storage for Firebase バケットにファイルをアップロードします。 次に、ファイルの MIME タイプと Cloud Storage for Firebase URL を マルチモーダル リクエストを Gemini API に送信します。

コード例を確認しますか?または、すでに設定済みか Cloud Storage for Firebase をご利用いただけるようになりました。 マルチモーダル リクエストはどうでしょうか。

コードサンプルに移動

アプリで Cloud Storage for Firebase を使用する理由

Cloud Storage for Firebase では、同じ高速、安全、かつ安全な blob とファイルを格納する Google Cloud Storage のようなスケーラブルなインフラストラクチャ とそのクライアント SDK は、モバイルアプリとウェブアプリ専用に構築されています。

Vertex AI in Firebase SDK の場合、リクエストの最大サイズは 20 MB です。 リクエストが大きすぎると、HTTP 413 エラーが発生します。ファイルサイズが リクエストの合計サイズが 20 MB を超えるように設定し、 マルチモーダル リクエストにファイルを含めるための Cloud Storage for Firebase URL。 ただし、ファイルが小さい場合は、多くの場合、インライン データとして直接渡すことができます。 (ただし、インライン データとして提供されたファイルは、 リクエストのサイズが大きくなります)。

Cloud Storage for Firebase を使用すると、他にも次のようなメリットがあります。

  • エンドユーザーに、アプリから画像を直接アップロードしてもらい、 Cloud Storage for Firebase バケットを作成し、それらの画像を ファイルの MIME タイプを指定するだけで、マルチモーダル プロンプトを Cloud Storage for Firebase URL(ファイルの識別子)。

  • エンドユーザーが画像を提供する必要がある場合は、時間と帯域幅を節約できます。 特にネットワークの品質が低い場合や 不安定な場合は特に重要です

    • ファイルのアップロードやダウンロードが中断された場合、Cloud Storage for Firebase SDK は中断したところからオペレーションを自動的に再開します。
    • エンドユーザーがアクセスしなくても、アップロードした同じファイルを複数回使用できる アプリで必要になるたびに同じファイルをアップロード 新しいマルチモーダル リクエストなど)が使用されます。
  • Google Workspace に保存されているファイルへのエンドユーザー アクセスを制限できます。 Firebase Security Rules を使用して Cloud Storage for Firebase 承認されたユーザーだけがファイルのアップロード、ダウンロード、削除を行うことができます。

  • バケット内のファイルには、Firebase または Google Cloud からアクセスできます。 サーバーサイドでの画像処理 フィルタリングや動画のコード変換をGoogle Cloud Storage API で行うことができます。

サポートされるファイルや URL の種類

使用する場合のファイルと URL の要件は次のとおりです。 Vertex AI in Firebase SDK を使用する Cloud Storage for Firebase 件の URL:

  • ファイルは マルチモーダル リクエストの入力ファイルの要件Vertex AI in Firebase SDK を使用する場合)。これには要件が含まれます MIME タイプやファイルサイズなどです

  • ファイルは Cloud Storage for Firebase バケットに保存されている必要があります。 (つまり、バケットは Firebase Security Rules などの Firebase サービスからアクセスできます)。 Google Cloud コンソールでバケットを Firebase コンソールCloud Storage for Firebase バケットです。

  • Cloud Storage for Firebase バケットは、同じ Firebase プロジェクトに存在する必要があります。 アプリが登録されていることを確認します。

  • ファイルの Cloud Storage for Firebase URL は gs://Google Cloud Storage URL を構成します。

  • ファイルの URL を「ブラウザ」にすることはできませんURL(例: 画像の URL) 。

また、バケットの Firebase Security Rules で、 付与する必要があります。例:

  • 公開ルールがある場合 これにより、すべてのユーザーまたはクライアントがファイルにアクセスし、その URL を Vertex AI in Firebase SDK を使用します。このタイプのルールは、 初期のプロトタイピングの段階で(ファイルが実際に 完全に一般公開されるファイルとして認識されます)。

  • 厳格なルールがある場合 (強く推奨)の場合、Firebase は、ログインしたユーザーまたは 呼び出しを許可する前に、クライアントがファイルへの十分なアクセス権を持っている アクセスします。

Vertex AI in FirebaseCloud Storage for Firebase URL を使用する

ステップ 1: Cloud Storage for Firebase を設定する

大まかな作業は次のとおりです。

  1. Firebase プロジェクトに Cloud Storage for Firebase バケットを作成します。

  2. このバケットに Firebase Security Rules を適用します。Firebase Security Rules がサポート 承認されたエンドユーザーにアクセスを制限することでファイルを保護する。

  3. Cloud Storage for Firebase のクライアント ライブラリをアプリに追加します。

    このタスクはスキップできますが、その場合は常に マルチモーダル リクエストに MIME タイプと Cloud Storage for Firebase URL 値を明示的に含める

ステップ 2: ファイルをバケットにアップロードする

ファイルをバケットにアップロードすると、Cloud Storage が自動的に適用されます。 次の 2 つの情報をファイルに追加します。次を含める必要があります。 マルチモーダル リクエストでこれらの値を取得します( ガイドを参照)。

  • MIME タイプ: ファイルのメディアタイプ(例: image/png)。 Cloud Storage for Firebase は自動的に MIME タイプの検出を試みます そのメタデータをバケット内のオブジェクトに適用します。ただし、 オプションでアップロード時に MIME タイプを指定できます。

  • Cloud Storage for Firebase URL: ファイルの一意の識別子です。 URL の先頭は gs:// にする必要があります。

ステップ 3: マルチモーダル リクエストにファイルの MIME タイプと URL を含める

ファイルを Cloud Storage for Firebase バケットに保存したら、次のことができます。 その MIME タイプと Cloud Storage for Firebase URL をマルチモーダル リクエストに含めます。 以下の例は非ストリーミング generateContent リクエストを示していますが、 ストリーミングとチャットでも Cloud Storage for Firebase URL を使用できます。

リクエストにファイルを含めるには、次のいずれかのオプションを使用します。

方法 1: Storage 参照を使用して MIME タイプと URL を含める

このオプションは、ファイルをバケットにアップロードしたばかりで、 Storage 参照を介して、すぐにそのファイルをマルチモーダル リクエストできます。この呼び出しには、MIME タイプと Cloud Storage for Firebase URL。

方法 2: MIME タイプと URL を明示的に指定する

MIME タイプと MIME タイプの値がわかっている場合は、このオプションを使用します。 Cloud Storage for Firebase URL であり、これらを 使用します。呼び出しには MIME タイプと URL の両方が必要です。