Questa pagina descrive la formattazione dei prompt e le istruzioni di sistema per i modelli PaliGemma. Queste varianti del modello Gemma utilizzano la stessa formattazione generale dei modelli di base Gemma e supportano una sintassi speciale per attività specifiche relative alle immagini.
Formato del prompt
I modelli PaliGemma utilizzano la stessa formattazione dei prompt dei modelli di base Gemma su cui si basano. Tuttavia, i modelli PaliGemma supportano anche una sintassi delle attività speciale, descritta nella sezione successiva. Per maggiori informazioni sulla formattazione dei prompt di Gemma, consulta le istruzioni del sistema e del prompt di Gemma.
Ordine dei dati di testo e delle immagini
Quando fornisci i prompt ai modelli PaliGemma con dati di testo e immagini, i dati delle immagini devono essere sempre forniti prima, seguiti dai dati del prompt di testo. Se inverti l'ordine dei dati dei prompt di testo e immagine o se li mescoli, tipicamente genererai risposte inutilizzabili.
Sintassi del prompt dell'attività
I modelli PaliGemma vengono addestrati con pattern e sintassi di prompt specifici per compiti come l'identificazione di oggetti e la descrizione di immagini. Puoi utilizzare questa sintassi di compito prompt per richiedere un comportamento specifico ai modelli PaliGemma come segue:
"cap {lang}\n"
: didascalia dello Short non elaborata (supportata solo dal portoghese)"caption {lang}\n"
: sottotitoli codificati degli Short"describe {lang}\n"
: sottotitoli codificati leggermente più lunghi e descrittivi (supportati solo dal portoghese)"ocr"
: riconoscimento ottico dei caratteri (supportato solo dal PT)"answer {lang} {question}\n"
: risposta alle domande sui contenuti delle immagini"question {lang} {answer}\n"
: generazione di domande per una determinata risposta (supportata solo da PT)"detect {object} ; {object}\n"
: individua gli oggetti elencati in un'immagine e restituisce le relative caselle delimitanti"segment {object} ; {object}\n"
: individua l'area occupata dagli oggetti elencati in un'immagine per creare una segmentazione dell'immagine per quell'oggetto
Le opzioni {lang}
sono per i codici lingua. Con questa opzione, PaliGemma supporta il riconoscimento della lingua per 34 lingue diverse per i prompt delle attività. Puoi trovare l'elenco delle lingue supportate su GitHub.
Per esempi di codice dettagliati che mostrano come utilizzare questa sintassi, consulta il tutorial su come generare l'output di PaliGemma con Keras.
Prompt con linguaggio naturale
Sebbene la sintassi nella sezione precedente sia consigliata, i modelli misti supportano anche il linguaggio naturale per molte attività. Ad esempio, "descrivi brevemente questa immagine" o "che cos'è questo testo" funzioneranno comunque anche se non viene richiesta la sintassi esatta.
Comandi prompt raggruppati
Puoi fornire più di un comando prompt all'interno di un singolo prompt come insieme di istruzioni. Ogni comando prompt deve terminare con un carattere \n
. L'esempio seguente mostra come strutturare il testo del prompt per fornire più istruzioni.
prompts = [
'answer en where is the cow standing?\n',
'answer en what color is the cow?\n',
'describe en\n',
'detect cow\n',
'segment cow\n',
]
images = [cow_image, cow_image, cow_image, cow_image, cow_image]
outputs = paligemma.generate(
inputs={
"images": images,
"prompts": prompts,
}
)
for output in outputs:
print(output)
Istruzioni di sistema
I modelli PaliGemma non supportano istruzioni di sistema aggiuntive oltre alle istruzioni di sistema di Gemma dei modelli di base su cui si basano.