Gemini API は、プロンプト入力とは別にメディア ファイルのアップロードをサポートしているため、複数のリクエストや複数のプロンプトでメディアを再利用できます。詳しくは、メディアを使用したプロンプトのガイドをご覧ください。
メソッド: media.upload
File を作成します。
エンドポイント
- アップロード URI(メディアのアップロード リクエストの場合):
https: / /generativelanguage.googleapis.com /upload /v1beta /files
- メタデータ URI(メタデータのみのリクエストの場合):
https: / /generativelanguage.googleapis.com /v1beta /files
リクエストの本文
リクエストの本文には、次の構造のデータが含まれます。
file
object (File)
省略可。作成するファイルのメタデータ。
リクエスト例
画像
Python
Node.js
Go
Shell
音声
Python
Node.js
Go
Shell
テキスト
Python
Node.js
Go
Shell
動画
Python
Node.js
Go
Shell
Python
Go
メソッド: files.get
指定された File のメタデータを取得します。
エンドポイント
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=files /*}
パスパラメータ
name
string
必須。取得する File の名前。例: files/abc-123 形式は files/{file} です。
リクエストの本文
リクエストの本文は空にする必要があります。
リクエスト例
Python
Node.js
Go
Shell
レスポンスの本文
成功した場合、レスポンスの本文には File のインスタンスが含まれます。
メソッド: files.list
リクエスト元のプロジェクトが所有する File のメタデータを一覧表示します。
エンドポイント
gethttps: / /generativelanguage.googleapis.com /v1beta /files
クエリ パラメータ
pageSize
integer
省略可。ページごとに返す File の最大数。指定しない場合のデフォルトは 10 です。pageSize の最大値は 100 です。
pageToken
string
省略可。前回の files.list 呼び出しのページトークン。
リクエストの本文
リクエストの本文は空にする必要があります。
リクエスト例
Python
Node.js
Go
Shell
メソッド: files.delete
File を削除します。
エンドポイント
削除https: / /generativelanguage.googleapis.com /v1beta /{name=files /*}
パスパラメータ
name
string
必須。削除する File の名前。例: files/abc-123 形式は files/{file} です。
リクエストの本文
リクエストの本文は空にする必要があります。
リクエスト例
Python
Node.js
Go
Shell
レスポンスの本文
成功した場合、レスポンスの本文は空の JSON オブジェクトになります。
REST リソース: ファイル
リソース: File
API にアップロードされたファイル。次の ID: 15
name
string
変更不可。ID。File リソース名。ID(「files/」接頭辞を除く名前)には、小文字の英数字またはダッシュ(-)を最大 40 文字まで使用できます。ID の先頭または末尾にダッシュを使用することはできません。作成時に名前が空の場合、一意の名前が生成されます。例: files/123-456
displayName
string
省略可。File の人が読める表示名。表示名は、スペースを含めて 512 文字以下にする必要があります。例: 「Welcome Image」
mimeType
string
出力専用。ファイルの MIME タイプ。
sizeBytes
string (int64 format)
出力専用。ファイルのサイズ(バイト単位)。
createTime
string (Timestamp format)
出力専用。File が作成されたときのタイムスタンプ。
RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z"、"2014-10-02T15:01:23+05:30"。
updateTime
string (Timestamp format)
出力専用。File が最後に更新されたときのタイムスタンプ。
RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z"、"2014-10-02T15:01:23+05:30"。
expirationTime
string (Timestamp format)
出力専用。File が削除されるタイムスタンプ。File の有効期限が切れる予定の場合にのみ設定します。
RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z"、"2014-10-02T15:01:23+05:30"。
sha256Hash
string (bytes format)
出力専用。アップロードされたバイトの SHA-256 ハッシュ。
Base64 でエンコードされた文字列。
uri
string
出力専用。File の URI。
downloadUri
string
出力専用。File のダウンロード URI。
state
enum (State)
出力専用。ファイルの処理ステータス。
source
enum (Source)
ファイルのソース。
error
object (Status)
出力専用。ファイルの処理が失敗した場合のエラー ステータス。
metadata
Union type
metadata は次のいずれかになります。videoMetadata
object (VideoFileMetadata)
出力専用。動画のメタデータ。
| JSON 表現 |
|---|
{ "name": string, "displayName": string, "mimeType": string, "sizeBytes": string, "createTime": string, "updateTime": string, "expirationTime": string, "sha256Hash": string, "uri": string, "downloadUri": string, "state": enum ( |
VideoFileMetadata
動画 File のメタデータ。
videoDuration
string (Duration format)
動画の長さ。
s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"。
| JSON 表現 |
|---|
{ "videoDuration": string } |
州
ファイルのライフサイクルの状態。
| 列挙型 | |
|---|---|
STATE_UNSPECIFIED |
デフォルト値。この値は、状態が省略された場合に使用されます。 |
PROCESSING |
ファイルが処理中のため、まだ推論に使用できません。 |
ACTIVE |
ファイルが処理され、推論に使用できるようになりました。 |
FAILED |
ファイルの処理に失敗しました。 |
ソース
| 列挙型 | |
|---|---|
SOURCE_UNSPECIFIED |
ソースが指定されていない場合に使用されます。 |
UPLOADED |
ファイルがユーザーによってアップロードされたことを示します。 |
GENERATED |
ファイルが Google によって生成されたことを示します。 |
REGISTERED |
ファイルが登録済み(Google Cloud Storage ファイル)であることを示します。 |
ステータス
Status 型は、REST API や RPC API など、さまざまなプログラミング環境に適した論理エラーモデルを定義します。gRPC により使用されます。各 Status メッセージには、エラーコード、エラー メッセージ、エラーの詳細という 3 種類のデータが含まれます。
このエラーモデルと操作方法について詳しくは、API 設計ガイドをご覧ください。
code
integer
ステータス コード。google.rpc.Code の列挙値である必要があります。
message
string
デベロッパー向けのエラー メッセージ。英語で記述します。ユーザー向けのエラー メッセージは、ローカライズして google.rpc.Status.details フィールドで送信するか、クライアントでローカライズする必要があります。
details[]
object
エラーの詳細を保持するメッセージのリスト。API が使用する共通のメッセージ タイプのセットがあります。
任意の型のフィールドを含むオブジェクト。追加フィールドの "@type" には、その型を識別する URI が含まれます。例: { "id": 1234, "@type": "types.example.com/standard/id" }
| JSON 表現 |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |