Questa pagina fornisce i prerequisiti e le istruzioni dettagliate per il fine-tuning di Gemini sui dati video utilizzando l'apprendimento supervisionato.
Casi d'uso
Il fine-tuning ti consente di adattare i modelli Gemini di base per attività specializzate. Ecco alcuni casi d'uso dei video:
Riepilogo automatico dei video: ottimizzazione degli LLM per generare riepiloghi concisi e coerenti di video lunghi, acquisendo i temi, gli eventi e le narrazioni principali. Questa funzionalità è utile per la scoperta, l'archiviazione e le revisioni rapide dei contenuti.
Riconoscimento e localizzazione dettagliati degli eventi: il fine-tuning consente agli LLM di identificare e individuare azioni, eventi o oggetti specifici all'interno di una sequenza temporale video con maggiore precisione. Ad esempio, identificare tutte le istanze di un prodotto specifico in un video di marketing o un'azione specifica in un filmato sportivo.
Moderazione dei contenuti: l'ottimizzazione specializzata può migliorare la capacità di un LLM di rilevare contenuti sensibili, inappropriati o che violano le norme all'interno dei video, andando oltre il semplice rilevamento degli oggetti per comprendere il contesto e le sfumature.
Sottotitolaggio e sottotitoli codificati dei video: sebbene sia già un'applicazione comune, l'ottimizzazione può migliorare l'accuratezza, la fluidità e la consapevolezza del contesto dei sottotitoli codificati e dei sottotitoli generati automaticamente, incluse le descrizioni dei segnali non verbali.
Limitazioni
- Dimensioni massime del file video: 100 MB.
Potrebbe non essere sufficiente per i file video di grandi dimensioni. Di seguito sono riportate alcune soluzioni alternative consigliate:
- Se sono presenti pochi file di grandi dimensioni, escludili dai file JSONL.
- Se nel set di dati sono presenti molti file di grandi dimensioni che non possono essere ignorati, riduci la risoluzione visiva dei file. Questa operazione potrebbe influire sul rendimento.
- Dividi i video in blocchi per limitare le dimensioni dei file a 100 MB e utilizza i video suddivisi in blocchi per l'ottimizzazione. Assicurati di modificare tutte le annotazioni dei timestamp corrispondenti al video originale nella nuova sequenza temporale del video (suddiviso in blocchi).
- Durata massima del video per esempio: 5 minuti con
MEDIA_RESOLUTION_HIGHoMEDIA_RESOLUTION_MEDIUMe 20 minuti conMEDIA_RESOLUTION_LOW. - Esempi eliminati: se un esempio contiene un video più lungo della durata massima supportata, l'esempio viene eliminato dal set di dati. Gli esempi eliminati non vengono fatturati né utilizzati per l'addestramento. Se viene eliminato più del 10% del set di dati, il job non andrà a buon fine e verrà visualizzato un messaggio di errore prima dell'inizio dell'addestramento.
- La combinazione di risoluzioni multimediali diverse non è supportata: il valore di
mediaResolutionper ogni esempio nell'intero set di dati di addestramento deve essere coerente. Tutte le righe dei file JSONL utilizzati per l'addestramento e la convalida devono avere lo stesso valore dimediaResolution.
Formato del set di dati
Il campo fileUri specifica la posizione del set di dati. Può essere l'URI di un file in un bucket Cloud Storage o un URL HTTP o HTTPS disponibile pubblicamente.
Il campo mediaResolution viene utilizzato per specificare il conteggio dei token per frame per i video di input. Per Gemini 2.5, di seguito è riportato il conteggio dei token per frame:
MEDIA_RESOLUTION_LOW: 64 token per frameMEDIA_RESOLUTION_MEDIUMeMEDIA_RESOLUTION_HIGH: 256 token per frame
Per Gemini 3, i conteggi dei token sono gli stessi del modello di base. Per ulteriori informazioni, consulta Risoluzione multimediale.
L'ottimizzazione del modello con MEDIA_RESOLUTION_LOW è circa 4 volte più veloce di quella con MEDIA_RESOLUTION_MEDIUM o MEDIA_RESOLUTION_HIGH con un miglioramento minimo del rendimento.
Quando un segmento video viene utilizzato per l'addestramento e la convalida, si trova nel campo videoMetadata. Durante l'ottimizzazione, questo punto dati viene decodificato per contenere le informazioni del segmento estratto dal file video specificato, a partire dal timestamp startOffset (l'offset iniziale, in secondi) fino a endOffset.
Per vedere l'esempio di formato generico, consulta Esempio di set di dati per Gemini.
Le sezioni seguenti presentano esempi di formato di set di dati video.
Esempio di schema JSON per i casi in cui l'intero video viene utilizzato per l'addestramento e la convalida
Questo schema viene aggiunto come singola riga nel file JSONL.
{
"contents": [
{
"role": "user",
"parts": [
{
"fileData": {
"fileUri": "gs://<path to the mp4 video file>",
"mimeType": "video/mp4"
},
},
{
"text": "
You are a video analysis expert. Detect which animal appears in the
video.The video can only have one of the following animals: dog, cat,
rabbit.\n Output Format:\n Generate output in the following JSON
format:\n
[{\n
\"animal_name\": \"<CATEGORY>\",\n
}]\n"
}
]
},
{
"role": "model",
"parts": [
{
"text": "```json\n[{\"animal_name\": \"dog\"}]\n```"
}
]
},
],
"generationConfig": {
"mediaResolution": "MEDIA_RESOLUTION_LOW"
}
}
(Solo modelli Gemini 3 e versioni successive) A partire dai modelli Gemini 3
puoi anche impostare la risoluzione multimediale per ogni Part multimediale.
In questo modo puoi combinare le risoluzioni nel set di dati (ad esempio, impostando MEDIA_RESOLUTION_HIGH per un elemento e MEDIA_RESOLUTION_LOW per un altro).
Per ulteriori informazioni sulla risoluzione a livello di parte e sui conteggi dei token
corrispondenti, consulta Risoluzione
multimediale.
Le impostazioni di risoluzione multimediale a livello di Part hanno la precedenza sulle impostazioni globali.
Di seguito è riportato un esempio di set di dati che imposta la risoluzione multimediale sia a livello di Part che a livello globale:
{
"contents": [
{
"role": "user",
"parts": [
{
"fileData": {
"fileUri": "gs://<path to the mp4 video file>",
"mimeType": "video/mp4"
}
},
{
"fileData": {
"fileUri": "gs://<path to the mp4 video file>",
"mimeType": "video/mp4"
},
"mediaResolution": {
"level": "MEDIA_RESOLUTION_HIGH"
}
},
{
"text": "Describe these videos in detail."
}
]
},
{
"role": "model",
"parts": [
{
"text": "Video 1 is low resolution while video 2 is sharp and clear"
}
]
}
],
"generationConfig": {
"mediaResolution": "MEDIA_RESOLUTION_LOW"
}
}
Esempio di schema JSON per i casi in cui un segmento video viene utilizzato per l'addestramento e la convalida
Questo schema viene aggiunto come singola riga nel file JSONL.
{
"contents": [
{
"role": "user",
"parts": [
{
"fileData": {
"fileUri": "gs://<path to the mp4 video file>",
"mimeType": "video/mp4"
},
"videoMetadata": {
"startOffset": "5s",
"endOffset": "25s"
}
},
{
"text": "
You are a video analysis expert. Detect which animal appears in the
video.The video can only have one of the following animals: dog, cat,
rabbit.\n Output Format:\n Generate output in the following JSON
format:\n
[{\n
\"animal_name\": \"<CATEGORY>\",\n
}]\n"
}
]
},
{
"role": "model",
"parts": [
{
"text": "```json\n[{\"animal_name\": \"dog\"}]\n```"
}
]
},
],
"generationConfig": {
"mediaResolution": "MEDIA_RESOLUTION_LOW"
}
}
Passaggi successivi
Per saperne di più sull'ottimizzazione dei video, consulta Come eseguire il fine-tuning di Gemini 2.5 utilizzando i video tramite la piattaforma Agent.
Per saperne di più sulla funzionalità di comprensione delle immagini di Gemini, consulta la nostra documentazione sulla comprensione delle immagini.
Per iniziare l'ottimizzazione, consulta Ottimizza i modelli Gemini utilizzando il fine-tuning supervisionato
Per scoprire come utilizzare il fine-tuning supervisionato in una soluzione che crea una knowledge base con l'AI generativa, consulta Soluzione già pronta: knowledge base con l'AI generativa.