Auf dieser Seite werden die Promptformatierung und die Systemanweisungen für PaliGemma-Modelle beschrieben. Diese Gemma-Modellvarianten verwenden dieselbe allgemeine Formatierung wie Gemma-Grundlagenmodelle und unterstützen eine spezielle Syntax für bestimmte bildbezogene Aufgaben.
Prompt-Format
PaliGemma-Modelle verwenden dieselbe Promptformatierung wie die Gemma-Grundlagenmodelle, auf denen sie basieren. PaliGemma-Modelle unterstützen jedoch auch eine spezielle Aufgabensyntax, die im nächsten Abschnitt beschrieben wird. Weitere Informationen zur Formatierung von Gemma-Prompts finden Sie in der Gemma-Anleitung für Prompts und Systeme.
Reihenfolge der Bild- und Textdaten
Wenn Sie PaliGemma-Modelle mit Text- und Bilddaten anstoßen, müssen die Bilddaten immer zuerst und dann die Textdaten für den Prompt angegeben werden. Wenn Sie die Reihenfolge der Bild- und Text-Prompt-Daten umkehren oder Bild- und Textdaten mischen, werden in der Regel unbrauchbare Antworten generiert.
Syntax für Prompt-Aufgaben
Die PaliGemma-Modelle werden mit bestimmten Promptmustern und Syntax für Aufgaben wie Objekterkennung und Bildunterschriften trainiert. Mit dieser Prompt-Aufgabensyntax können Sie ein bestimmtes Verhalten von den PaliGemma-Modellen anfordern:
"cap {lang}\n"
:Sehr kurze Roh-Unterschrift (nur von PT unterstützt)"caption {lang}\n"
:Kurze Untertitel"describe {lang}\n"
:Etwas längere, aussagekräftigere Untertitel (nur von PT unterstützt)"ocr"
:Optische Zeichenerkennung (nur von PT unterstützt)"answer {lang} {question}\n"
:Beantwortung von Fragen zum Bildinhalt"question {lang} {answer}\n"
:Fragengenerierung für eine bestimmte Antwort (nur von PT unterstützt)"detect {object} ; {object}\n"
:Gelistete Objekte in einem Bild finden und die Begrenzungsrahmen für diese Objekte zurückgeben"segment {object} ; {object}\n"
:Den Bereich ermitteln, den die aufgeführten Objekte in einem Bild einnehmen, um eine Bildsegmentierung für dieses Objekt zu erstellen
Die {lang}
-Optionen sind für Sprachcodes. Mit dieser Option unterstützt PaliGemma die Spracherkennung für 34 verschiedene Sprachen für Aufgabenaufforderungen. Eine Liste der unterstützten Sprachen finden Sie auf GitHub.
Ausführliche Codebeispiele zur Verwendung dieser Syntax finden Sie in der Anleitung Paligemma-Ausgabe mit Keras generieren.
Prompts in natürlicher Sprache
Die Syntax im vorherigen Abschnitt wird empfohlen, aber die Mix-Modelle unterstützen für viele Aufgaben auch die natürliche Sprache. Beispielsweise funktionieren „Beschreib dieses Bild kurz“ oder „Was steht in diesem Text?“ auch dann, wenn nicht die genaue Syntax angezeigt wird.
Batch-Prompt-Befehle
Sie können mehrere Promptbefehle in einem einzigen Prompt als Batch angeben. Jeder Prompt-Befehl muss mit dem Zeichen \n
enden. Im folgenden Beispiel wird gezeigt, wie Sie den Prompttext so strukturieren, dass mehrere Anweisungen enthalten sind.
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)
Systemanweisungen
Die PaliGemma-Modelle unterstützen keine zusätzlichen Systemanweisungen, abgesehen von den Gemma-Systemanweisungen der zugrunde liegenden Basismodelle.