メディア ファイルを使用したプロンプト


ai.google.dev で表示 Google Colab で実行 GitHub でソースを表示

Gemini API は、テキスト、画像、音声、動画データを使用したプロンプトをサポートしています。これはマルチモーダル プロンプトとも呼ばれます。つまり、これらのタイプのメディア ファイルをプロンプトに含めることができます。サイズの小さいファイルの場合は、プロンプトを指定するときに、Gemini モデルを直接ローカル ファイルを指定できます。サイズの大きいファイルは、プロンプトに含める前に File API を使用してアップロードします。

File API を使用すると、プロジェクトごとに最大 20 GB のファイルを保存できます。各ファイルのサイズが 2 GB を超えないようにしてください。ファイルは 48 時間保存され、その期間内に生成するために API キーでアクセスでき、API からダウンロードすることはできません。Files API は、Gemini API が利用可能なすべてのリージョンで無料でご利用いただけます。

File API は、model.generateContent または model.streamGenerateContent でコンテンツを生成するために使用できる入力を処理します。有効なファイル形式(MIME タイプ)とサポートされているモデルについては、サポートされているファイル形式をご覧ください。

このガイドでは、File API を使用してメディア ファイルをアップロードし、Gemini API への GenerateContent 呼び出しに含める方法について説明します。詳細については、コードサンプルをご覧ください。

サポートされているファイル形式

Gemini モデルは、複数のファイル形式のプロンプトをサポートしています。このセクションでは、プロンプトに一般的なメディア形式(特に画像、音声、動画、書式なしテキスト ファイル)を使用する際の考慮事項について説明します。次の表に示すように、メディア ファイルは特定のモデル バージョンでのみプロンプトに使用できます。

モデル 画像 音声 動画 書式なしテキスト
Gemini 1.5 Pro(リリース 008 以降) ✔(最大 3,600 個の画像ファイル)
Gemini Pro Vision ✔(最大 16 個の画像ファイル)

イメージの形式

gemini-pro-vision モデルと gemini-1.5-pro モデルでは、画像データをプロンプトに使用できます。プロンプトに画像を使用する場合、次の制限と要件が適用されます。

  • 画像は、次のいずれかの画像データの MIME タイプにする必要があります。
    • PNG - image/png
    • .JPEG - 画像 /jpeg
    • WEBP - 画像 /webp
    • HEIC - 画像 /heic
    • HEIF - 画像 /heif
  • gemini-pro-vision の場合は最大 16 個の個別画像、gemini-1.5-pro の場合は最大 3,600 個の画像
  • 画像のピクセル数に特に制限はありません。ただし、サイズの大きい画像は、元のアスペクト比を維持したまま、最大解像度 3,072 x 3,072 に合わせて縮小されます。

オーディオ形式

gemini-1.5-pro モデルでは、音声データをプロンプトに使用できます。プロンプトに音声を使用する場合、次の制限と要件が適用されます。

  • 音声データは、次の一般的な音声形式の MIME タイプでサポートされています。
    • WAV - 音声/WAV
    • MP3 - 音声/mp3
    • AIFF - 音声/Aiff
    • AAC - 音声/AAC
    • OGG Vorbis - 音声/ogg
    • FLAC - 音声/FLAC
  • 1 つのプロンプトでサポートされる音声データの最大長は 9.5 時間です。
  • 音声ファイルは 16 Kbps のデータ解像度に再サンプリングされ、複数チャンネルの音声が 1 つのチャンネルに結合されます。
  • 1 つのプロンプトに含める音声ファイルの数に制限はありません。ただし、1 つのプロンプト内のすべての音声ファイルの合計長は 9.5 時間を超えることはできません。

動画形式

gemini-1.5-pro モデルでは、プロンプトに動画データを使用できます。

  • 動画データは、次の一般的な動画形式の MIME タイプでサポートされています。

    • video/mp4
    • video/mpeg
    • 動画/mov
    • 動画/avi
    • video/x-flv
    • 動画/mpg
    • 動画/WebM
    • 動画/WMV
    • 動画/3gpp
  • File API サービスは動画を 1 フレーム/秒(FPS)でサンプリングしますが、最適な推論品質を提供するために変更される可能性があります。解像度や品質に関係なく、個々の画像は 258 トークンを使用します。

書式なしテキスト

File API では、次の MIME タイプの書式なしテキスト ファイルのアップロードをサポートしています。

  • text/plain
  • text/html
  • text/css
  • text/javascript
  • application/x-javascript
  • テキスト/x-typescript
  • application/x-typescript
  • text/csv
  • テキスト/マークダウン
  • テキスト/X-Python
  • application/x-python-code
  • application/json
  • text/xml
  • アプリケーション/RTF
  • テキスト/RTF

リストにない MIME タイプの書式なしテキスト ファイルの場合は、上記の MIME タイプのいずれかを手動で指定できます。