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)

시스템 안내

PaliGemma 모델은 기반이 되는 기반 모델의 Gemma 시스템 안내 외의 추가 시스템 안내를 지원하지 않습니다.