Gemini può rispondere ai prompt relativi ai documenti. Puoi aggiungere documenti alle richieste a Gemini per eseguire attività che richiedono la comprensione dei contenuti dei documenti inclusi.
La comprensione dei documenti è uno degli input multimodali di Gemini che combinano testo e file multimediali.
Per saperne di più sulla comprensione dei documenti con Gemini e per istruzioni passo passo sull'invio di richieste API, consulta Inviare un prompt multimodale.
Specifiche per i prompt con documenti
Puoi aggiungere file di documenti alla tua richiesta a Gemini. Per le richieste Gemini si applicano i seguenti limiti massimi di documenti:
- Numero massimo di file per richiesta: 100
- Numero massimo di pagine per file: 100
- Dimensioni massime per file: 50 MB
Di seguito sono riportati alcuni esempi di valori massimi che puoi fornire in una singola richiesta utilizzando Gemini (che può elaborare un totale di 100 pagine in una richiesta):
- 100 file di una sola pagina
- dieci file di 10 pagine
- un file di 100 pagine
I documenti devono essere in uno dei seguenti tipi MIME supportati:
- CSS:
text/css - CSV:
text/csv - HTML:
text/html - JS:
text/javascriptoapplication/x-javascript - MD:
text/md - PDF:
application/pdf - PY:
text/x-pythonoapplication/x-python - RTF:
text/rtf - TXT:
text/plain - XML:
text/xml
Gemini impone le seguenti regole sui documenti:
- I PDF vengono trattati come immagini, quindi una singola pagina di un PDF viene trattata come un'immagine. Il numero di pagine consentite in un prompt è limitato al numero di immagini che il modello può supportare.
- Ogni pagina di un PDF viene suddivisa in token nello stesso modo di un'immagine.
- I documenti in testo normale vengono tokenizzati come testo.
- Se il prompt contiene un singolo PDF, inseriscilo prima del prompt di testo nella tua richiesta.
- Se hai un documento lungo, valuta la possibilità di suddividerlo in più PDF per elaborarlo.
Puoi utilizzare l'endpoint Completamenti di chat nell'API REST e utilizzare un client HTTP. Puoi fornire il documento come dati incorporati nella richiesta del prompt come file con codifica base64 o caricare il file del documento in un bucket di archiviazione prima di effettuare la richiesta del prompt.
Scopri di più sulle best practice e sulle limitazioni per i documenti nella documentazione di Google Cloud .
Per saperne di più su OpenAI e sull'endpoint Chat Completions che Gemini implementa in Google Distributed Cloud (GDC) air-gapped, consulta https://platform.openai.com/docs/api-reference/chat.
Comprendere i documenti da un prompt
Gli esempi seguenti mostrano una richiesta dell'API Gemini Chat Completions per generare testo dall'input del documento utilizzando curl.
Inviare richieste di dati inline
Fornisci i documenti come dati incorporati alla richiesta del prompt da file con codifica base64. La richiesta API contiene il campo input_document per i documenti con codifica Base64. Il seguente esempio mostra come inviare richieste di documenti codificati in base64:
curl \
-X POST "https://ENDPOINT:443/v1/projects/PROJECT/locations/PROJECT/chat/completions" \
-H "Content-Type: application/json; charset=utf-8" \
-H "Authorization: Bearer $(gdcloud auth print-identity-token)" \
-d '{
"model_id": "MODEL_ID",
"messages": [
{
"role": "user",
"content": [
{
"type": "input_document",
"input_document": {
"data": BASE64_DATA,
# Valid formats are css, csv, html, js, md, pdf, py, rtf, txt, or xml
"format": "pdf"
}
}
]
}
],
}'
Sostituisci quanto segue:
ENDPOINT: l'endpoint API che utilizzi per la tua organizzazione.PROJECT: il tuo ID progetto.MODEL_ID: l'ID endpoint del modello da cui vuoi generare la risposta.BASE64_DATA: i dati con codifica Base64 del file del documento. I dati con codifica Base64 devono avere come prefisso uno schema URI dati, RFC 2397. Pertanto, il formato del campodataper i dati con codifica Base64 è, ad esempio,"data": f"data:application/pdf;base64,{base64_document}".
Inviare gli URL dei documenti nella richiesta
Carica il file
del documento in un bucket di archiviazione prima di effettuare la richiesta di prompt. La richiesta API
contiene il campo document_url per i file di documenti nei bucket di archiviazione.
Il seguente esempio mostra come inviare richieste di URL del documento:
curl \
-X POST "https://ENDPOINT:443/v1/projects/PROJECT/locations/PROJECT/chat/completions" \
-H "Content-Type: application/json; charset=utf-8" \
-H "Authorization: Bearer $(gdcloud auth print-identity-token)" \
-d '{
"model_id": "MODEL_ID",
"messages": [
{
"role": "user",
"content": [
{
"type": "document_url",
"document_url": {
"url": "DOC_URL",
}
}
]
}
],
}'
Sostituisci quanto segue:
ENDPOINT: l'endpoint API che utilizzi per la tua organizzazione.PROJECT: il tuo ID progetto.MODEL_ID: l'ID endpoint del modello da cui vuoi generare la risposta.DOC_URL: il percorso di un URL del documento in un bucket di archiviazione. Gli URL dei documenti devono fare riferimento a file di documenti archiviati in un bucket di archiviazione GDC. Per maggiori informazioni, consulta la pagina Memorizzare i dati.