L'API Gemini supporta il caricamento di file multimediali separatamente dall'input dei prompt, in modo che possano essere riutilizzati in più richieste e più prompt. Per maggiori dettagli, consulta la guida Richieste con contenuti multimediali.
Metodo: media.upload
Crea un File
.
Endpoint
- URI di caricamento, per le richieste di caricamento di contenuti multimediali:
https://generativelanguage.googleapis.com/upload/v1beta/files
- URI metadati, per richieste solo di metadati:
https://generativelanguage.googleapis.com/v1beta/files
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
file
object (File
)
(Facoltativo) Metadati per il file da creare.
Esempio di richiesta
Immagine
Python
Node.js
Vai
Conchiglia
Audio
Python
Node.js
Vai
Conchiglia
Testo
Python
Node.js
Vai
Conchiglia
Video
Python
Node.js
Vai
Conchiglia
Python
Metodo: files.get
Ottiene i metadati per l'elemento File
specificato.
Endpoint
recupera
https://generativelanguage.googleapis.com/v1beta/{name=files/*}
Parametri del percorso
name
string
Obbligatorio. Il nome di File
da recuperare. Esempio: files/abc-123
Il formato è files/{file}
.
Corpo della richiesta
Il corpo della richiesta deve essere vuoto.
Esempio di richiesta
Python
Node.js
Vai
Conchiglia
Corpo della risposta
In caso di esito positivo, il corpo della risposta contiene un'istanza di File
.
Metodo: files.list
Elenca i metadati per i file File
di proprietà del progetto richiedente.
Endpoint
recupera
https://generativelanguage.googleapis.com/v1beta/files
Parametri di query
pageSize
integer
(Facoltativo) Numero massimo di File
da restituire per pagina. Se non specificato, il valore predefinito è 10. Il valore massimo di pageSize
è 100.
pageToken
string
(Facoltativo) Un token di pagina di una chiamata files.list
precedente.
Corpo della richiesta
Il corpo della richiesta deve essere vuoto.
Esempio di richiesta
Python
Node.js
Vai
Conchiglia
Corpo della risposta
Risposta per files.list
.
In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:
files[]
object (File
)
L'elenco di File
.
nextPageToken
string
Un token che può essere inviato come pageToken
in una chiamata files.list
successiva.
Rappresentazione JSON |
---|
{
"files": [
{
object ( |
Metodo: files.delete
Elimina File
.
Endpoint
elimina
https://generativelanguage.googleapis.com/v1beta/{name=files/*}
Parametri del percorso
name
string
Obbligatorio. Il nome del File
da eliminare. Esempio: files/abc-123
Il formato è files/{file}
.
Corpo della richiesta
Il corpo della richiesta deve essere vuoto.
Esempio di richiesta
Python
Node.js
Vai
Conchiglia
Corpo della risposta
In caso di esito positivo, il corpo della risposta è vuoto.
Risorsa REST: file
Risorsa: file
Un file caricato nell'API.
name
string
Immutabile. Identificatore. Il nome della risorsa File
. L'ID (nome senza il prefisso "files/") può contenere fino a 40 caratteri alfanumerici minuscoli o trattini (-). L'ID non può iniziare o terminare con un trattino. Se il nome è vuoto al momento della creazione, verrà generato un nome univoco. Esempio: files/123-456
displayName
string
(Facoltativo) Il nome visualizzato leggibile per l'File
. Il nome visualizzato non deve contenere più di 512 caratteri, spazi inclusi. Esempio: "Immagine di benvenuto"
mimeType
string
Solo output. Tipo MIME del file.
sizeBytes
string (int64 format)
Solo output. Dimensioni del file in byte.
createTime
string (Timestamp
format)
Solo output. Timestamp della creazione di File
.
Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z"
e "2014-10-02T15:01:23.045123456Z"
.
updateTime
string (Timestamp
format)
Solo output. Il timestamp dell'ultimo aggiornamento di File
.
Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z"
e "2014-10-02T15:01:23.045123456Z"
.
expirationTime
string (Timestamp
format)
Solo output. Timestamp di eliminazione di File
. Impostalo solo se è pianificata la scadenza di File
.
Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z"
e "2014-10-02T15:01:23.045123456Z"
.
sha256Hash
string (bytes format)
Solo output. Hash SHA-256 dei byte caricati.
Una stringa con codifica base64.
uri
string
Solo output. L'URI di File
.
state
enum (State
)
Solo output. Stato di elaborazione del file.
error
object (Status
)
Solo output. Stato di errore se l'elaborazione del file non è riuscita.
metadata
. Metadati per il file. metadata
può essere solo uno dei seguenti:
videoMetadata
object (VideoMetadata
)
Solo output. I metadati per un video.
Rappresentazione JSON |
---|
{ "name": string, "displayName": string, "mimeType": string, "sizeBytes": string, "createTime": string, "updateTime": string, "expirationTime": string, "sha256Hash": string, "uri": string, "state": enum ( |
VideoMetadata
I metadati per un video File
.
videoDuration
string (Duration
format)
Durata del video.
Durata in secondi con un massimo di nove cifre frazionarie e termina con "s
". Esempio: "3.5s"
.
Rappresentazione JSON |
---|
{ "videoDuration": string } |
Stato
per il ciclo di vita di un file.
Enum | |
---|---|
STATE_UNSPECIFIED |
Il valore predefinito. Questo valore viene utilizzato se lo stato viene omesso. |
PROCESSING |
Il file è in fase di elaborazione e non può ancora essere utilizzato per l'inferenza. |
ACTIVE |
Il file viene elaborato ed è disponibile per l'inferenza. |
FAILED |
Elaborazione del file non riuscita. |
Stato
Il tipo Status
definisce un modello di errore logico adatto a diversi ambienti di programmazione, tra cui API REST e API RPC. È utilizzato da gRPC. Ogni messaggio Status
contiene tre dati: codice, messaggio di errore e dettagli dell'errore.
Per saperne di più su questo modello di errore e su come utilizzarlo, consulta la Guida alla progettazione dell'API.
code
integer
Il codice di stato, che deve essere un valore enum pari a google.rpc.Code
.
message
string
Un messaggio di errore rivolto agli sviluppatori, che deve essere in inglese. Qualsiasi messaggio di errore rivolto agli utenti deve essere localizzato e inviato nel campo google.rpc.Status.details
oppure deve essere localizzato dal client.
details[]
object
Un elenco di messaggi con i dettagli dell'errore. Le API possono utilizzare un insieme comune di tipi di messaggi.
Un oggetto che contiene campi di tipo arbitrario. Un campo aggiuntivo "@type"
contiene un URI che identifica il tipo. Esempio: { "id": 1234, "@type": "types.example.com/standard/id" }
.
Rappresentazione JSON |
---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |