Perintah dan petunjuk sistem PaliGemma

Halaman ini menjelaskan pemformatan perintah dan petunjuk sistem untuk model PaliGemma. Varian model Gemma ini menggunakan format umum yang sama dengan model dasar Gemma, dan juga mendukung sintaksis khusus untuk tugas terkait gambar tertentu.

Format perintah

Model PaliGemma menggunakan format perintah yang sama dengan model fondasi Gemma yang menjadi dasar model tersebut. Namun, model PaliGemma juga mendukung sintaksis tugas khusus, yang dijelaskan di bagian berikutnya. Untuk informasi selengkapnya tentang pemformatan perintah Gemma, lihat Perintah Gemma dan petunjuk sistem.

Urutan data gambar dan teks

Saat meminta model PaliGemma dengan data teks dan gambar, data gambar harus selalu diberikan terlebih dahulu, lalu data perintah teks setelahnya. Membalik urutan data perintah gambar dan teks, atau mencampur data gambar dan teks biasanya akan menghasilkan respons yang tidak dapat digunakan.

Sintaksis tugas perintah

Model PaliGemma dilatih dengan pola dan sintaksis perintah tertentu untuk tugas seperti identifikasi objek dan pemberian teks pada gambar. Anda dapat menggunakan sintaksis tugas perintah ini untuk meminta perilaku tertentu dari model PaliGemma, sebagai berikut:

  • "cap {lang}\n": Teks singkat yang sangat mentah (dari WebLI-alt)
  • "caption {lang}\n": Teks singkat yang bagus dan mirip COCO
  • "describe {lang}\n": Teks yang agak lebih panjang dan lebih deskriptif
  • "ocr": Pengenalan karakter optik
  • "answer {lang} {question}\n": Menjawab pertanyaan tentang konten gambar
  • "question {lang} {answer}\n": Pembuatan pertanyaan untuk jawaban tertentu
  • "detect {object} ; {object}\n": Menemukan objek yang tercantum dalam gambar dan menampilkan kotak pembatas untuk objek tersebut
  • "segment {object}\n": Menemukan area yang ditempati oleh objek dalam gambar untuk membuat segmentasi gambar bagi objek tersebut

Opsi {lang} adalah untuk kode bahasa. PaliGemma mendukung pengenalan bahasa untuk 34 bahasa berbeda untuk perintah tugas dengan opsi ini. Anda dapat menemukan daftar bahasa yang didukung di GitHub.

Untuk contoh kode mendetail yang menunjukkan cara menggunakan sintaksis ini, lihat tutorial Membuat output PaliGemma dengan Keras.

Perintah prompt dalam batch

Anda dapat memberikan lebih dari satu perintah perintah dalam satu perintah sebagai batch petunjuk. Setiap perintah perintah harus diakhiri dengan karakter \n. Contoh berikut menunjukkan cara menyusun teks perintah untuk memberikan beberapa petunjuk.

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)

Petunjuk sistem

Model PaliGemma tidak mendukung petunjuk sistem tambahan selain petunjuk sistem Gemma dari model dasar yang menjadi dasarnya.