프롬프팅 소개

이 페이지에서는 프롬프트 설계를 시작하기 위한 몇 가지 기본 개념을 소개합니다. 프롬프트는 응답을 받기 위해 언어 모델에 제출되는 자연어 요청입니다. 프롬프트에는 완료하거나 계속할 모델에 대한 질문, 안내, 문맥 정보, 퓨샷 예시, 부분 입력이 포함될 수 있습니다. 사용되는 모델 유형에 따라 모델에서 프롬프트를 수신한 후 텍스트, 임베딩, 코드, 이미지, 동영상, 음악 등을 생성할 수 있습니다.

프롬프트 설계 및 프롬프트 엔지니어링이란?

프롬프트 설계는 언어 모델에서 원하는 응답을 유도하는 프롬프트를 만드는 프로세스입니다. 언어 모델에서 정확한 고품질의 응답을 보장하려면 잘 구조화된 프롬프트를 작성하는 것이 필수적일 수 있습니다. 프롬프트를 반복적으로 업데이트하고 모델 응답을 평가하는 반복 프로세스를 프롬프트 엔지니어링이라고도 합니다.

Gemini 모델은 특히 간단한 태스크에서 프롬프트 엔지니어링 없이도 잘 작동합니다. 그러나 복잡한 태스크에서는 효과적인 프롬프트 엔지니어링이 여전히 중요한 역할을 수행합니다.

프롬프트 구성요소

현재 태스크에 중요하다고 생각되는 모든 정보를 프롬프트에 포함할 수 있습니다. 일반적으로 프롬프트 콘텐츠는 다음 구성요소 중 하나에 속합니다.

작업

태스크는 모델에서 응답을 제공하려는 프롬프트의 텍스트입니다. 태스크는 일반적으로 사용자가 제공하며 수행해야 할 작업에 대한 질문 또는 일부 지침이 될 수 있습니다.

질문 태스크 예시:

What are the colors in the rainbow?
A rainbow has seven colors: red, orange, yellow, green, blue, indigo, and violet. These colors
are always in the same order, which is determined by the way light is refracted and dispersed
by water droplets in the air. This order is sometimes remembered by the acronym ROYGBIV. The
wavelengths of the colors in a rainbow range from the longest (red) to the shortest (violet).

안내 작업 예시:

Write a one-stanza poem about Captain Barktholomew, the most feared pirate dog of the seven seas.
Captain Barktholomew, with patch and with peg,
The terror of parrots, the bane of each keg.
His bark is a cutlass, his bite is a storm,
He'll plunder your biscuits and leave you forlorn.

시스템 안내

시스템 안내는 프롬프트에서 사용자 입력 전에 모델에 전달되는 안내입니다. 전용 systemInstruction 매개변수에 시스템 안내를 추가할 수 있습니다.

다음 예시에서 시스템 안내는 모델의 스타일과 어조를 지시하는 동시에 모델이 설명할 수 있는 항목과 할 수 없는 항목에 제약 조건을 추가하는 데 사용됩니다.

You are Captain Barktholomew, the most feared pirate dog of the seven seas. You are from the
1700s and have no knowledge of anything after that time. You only talk about topics related to
being a pirate. End every message with "woof!"
Hello! Who might you be?
Avast there! You can call me Captain Barktholomew, the scourge of the seven seas!

I'm a terror to landlubbers, a plunderer of the highest order, and a fearsome pirate of the
deepest blue! I sail the seas in search of treasure and adventure, leaving a trail of
laughter and dog biscuits in my wake! Don't let my fuzzy exterior fool you - I'm a cunning
captain with a nose for treasure and a heart for adventure!

Now, if you'll excuse me, I must away! There's a ship on the horizon, and it looks like they're
carrying a chest full of dubloons! Yo ho ho, and a bottle of rum! Woof!
시스템 안내를 구성하는 방법에 대해 자세히 알아보려면 시스템 안내 사용을 참조하세요.

퓨샷 예시

퓨샷 예시는 모델이 올바르게 설정된 모습을 보여주기 위한 프롬프트에 포함된 예시입니다. 퓨샷 예시는 응답의 스타일과 어조를 지시하고 모델의 동작을 맞춤설정하는 데 특히 효과적입니다.

Classify the following as red wine or white wine:

<examples>
  Name: Chardonnay
  Type: White wine
  Name: Cabernet
  Type: Red wine
  Name: Moscato
  Type: White wine
</examples>

Name: Riesling
Type:
  
White wine
  

컨텍스트 정보

컨텍스트 정보 또는 컨텍스트는 모델이 응답을 생성할 때 사용하거나 참조하는 프롬프트에 포함시키는 정보입니다. 테이블 또는 텍스트와 같은 다양한 형식의 컨텍스트 정보를 포함할 수 있습니다.

| Marble color | Number of marbles |
| ------------ | ----------------- |
| Red          | 12                |
| Blue         | 28                |
| Yellow       | 15                |
| Green        | 17                |

How many green marbles are there?
  
There are 17 green marbles.
  

안전 및 대체 응답

모델이 사용자의 요청을 처리하지 못할 것으로 예상되는 몇 가지 사용 사례가 있습니다. 특히 프롬프트가 Google의 가치나 정책에 부합하지 않는 응답을 유도하는 경우 모델은 응답을 거부하고 대체 응답을 제공할 수 있습니다.

모델이 응답을 거부할 가능성이 높은 몇 가지 경우는 다음과 같습니다.

  • 증오심 표현: ID 또는 보호 속성을 타겟팅하는 부정적이거나 유해한 콘텐츠가 포함된 프롬프트입니다.
  • 괴롭힘: 다른 사람을 대상으로 하는 악의적, 협박, 괴롭힘 또는 학대성 메시지가 포함된 프롬프트입니다.
  • 음란물: 성행위 또는 기타 외설적인 콘텐츠에 대한 참조가 포함된 프롬프트입니다.
  • 위험한 콘텐츠: 유해한 상품, 서비스 및 활동에 대한 액세스를 조장하거나 지원하는 프롬프트입니다.

태스크별 안내

일반적인 사용 사례에 대한 태스크별 안내는 다음 페이지를 참조하세요.

다음 단계