PaliGemma 提示和系統指示

本頁面說明 PaliGemma 模型的提示格式和系統操作說明。這些 Gemma 模型變化版本會使用與 Gemma 基礎模型相同的一般格式,並支援特定圖像相關工作專用的特殊語法。

提示格式

PaliGemma 模型會使用與 Gemma 基礎模型相同的提示格式。不過,PaliGemma 模型也支援特殊的工作語法,詳情請參閱下一節。如要進一步瞭解 Gemma 提示格式,請參閱「Gemma 提示和系統指示」。

圖片和文字資料順序

向 PaliGemma 模型提示文字和圖像資料時,請務必提供圖像資料,然後再提供文字提示資料。反轉圖片和文字提示資料的順序,或混合圖片和文字資料,通常會產生無法使用的回覆。

提示工作語法

我們使用特定提示模式和語法訓練 PaliGemma 模型,用於物件辨識和圖片標題等工作。您可以使用以下提示工作語法,要求 PaliGemma 模型執行特定行為:

  • "cap {lang}\n"非常簡短的粗略字幕 (來自 WebLI-alt)
  • "caption {lang}\n"簡短的字幕,類似 COCO
  • "describe {lang}\n"較長且更具說明性的字幕
  • "ocr"光學字元辨識
  • "answer {lang} {question}\n"回答有關圖片內容的問題
  • "question {lang} {answer}\n"針對特定答案產生問題
  • "detect {object} ; {object}\n"在圖片中找出所列物件,並傳回這些物件的邊界框
  • "segment {object}\n"找出圖片中物件所佔據的區域,為該物件建立圖片區塊

{lang} 選項適用於語言代碼。透過這個選項,PaliGemma 可辨識 34 種不同語言的任務提示。您可以在 GitHub 上查看支援的語言清單。

如需詳細的程式碼範例,說明如何使用這項語法,請參閱「使用 Keras 產生 PaliGemma 輸出內容」教學課程。

批次提示指令

您可以在單一提示中提供多個提示指令,做為一批指示。每個提示指令都必須以 \n 字元結尾。以下範例說明如何安排提示文字,提供多項操作說明。

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)

系統指示

除了基礎模型的 Gemma 系統指示外,PaliGemma 模型不支援任何其他系統指示。