생성 모델 정보

생성형 인공지능 (AI) 모델 모델은 텍스트, 이미지, 오디오, 동영상 등 오디오, 텍스트, 이미지, 오디오입니다 가장 기본적인 수준에서 이러한 모델은 복잡한 자동 완성 애플리케이션을 위해 개발되었습니다. 주어진 입력 텍스트("당신은 말을 이끌 수 있습니다. 물에 빠뜨리면 안 되는 경우) 생성 모델은 다음에 비추어 볼 때 통계적으로 따를 가능성이 있음('그러나 물을 마실 수는 없음') 학습 데이터에서 학습한 패턴입니다. 이 기본 속성을 사용하여 생성형 모델을 지원합니다.

  • 시, 단편 소설, 은유, 가사 등의 창의적인 글쓰기를 블로그 게시물
  • 구조화된 데이터를 자유 형식 텍스트로 변환
  • 자유 형식 텍스트에서 정보 추출 및 요약
  • 코드 생성
  • 언어 간 번역

생성 모델을 사용하여 이러한 특성을 빌드하는 데는 머신이 필요하지 않습니다 학습 (ML) 전문성을 고려할 수 있습니다 대규모 데이터 세트를 수집하거나 데이터를 있습니다. 첫 번째 프로토타입을 시작하려면 원하는 것을 설명하기만 하면 됩니다. 실행할 수 있습니다

텍스트 입력과 출력만 처리하는 생성 모델이라고도 하며 대규모 언어 모델 (LLM)에 대응합니다. Gemini 모델 제품군은 LLM의 기능을 수행할 수 있지만 생성 모델이라고 합니다.

예시 애플리케이션

다음 예는 일반적인 텍스트 입력 및 출력의 결과를 보여줍니다. 생성 모델입니다.

시 만들기

사용자 입력: Write me a four-line poem about puppies and Android phones. Make sure it rhymes.

모델 출력:

Puppies are cute,
Android phones are neat,
They both bring joy,
And make life complete.

목록 생성

사용자 입력: Generate a bulleted list of items I need to pack for a three-day camping trip.

모델 출력:

*   Tent
*   Sleeping bag
*   Sleeping pad
*   Camp stove
*   Pots and pans
*   Utensils
*   Food
*   Water
*   First-aid kit
*   Sunscreen
*   Insect repellent
*   ...

생성 모델을 통해 다음과 같은 모든 종류의 유용한 동작을 생성할 수 있습니다. 프롬프트라고도 하는 올바른 입력 텍스트를 작성하기만 하면 됩니다. 예술 적절한 표현을 찾는 과학적 사고를 일으킬 수 있습니다. 원하는 것을 프롬프트 설계('프롬프트 엔지니어링' 또는 '프롬프트 설계'라고도 함)라고 '프롬프트'로만 지정)을 클릭합니다.

프롬프트 설계의 기초

이전 섹션에서는 '시를 써주세요'와 같은 명령이 있습니다 이러한 유형의 안내는 작업을 수행할 수 있습니다 하지만 다른 애플리케이션의 경우 퓨샷 프롬프팅이라는 기법이 더 효과적일 수 있습니다. 퓨샷 프롬프트는 대규모 언어 모델이 대규모 언어 모델(LLM)에 매우 훌륭하다는 복제하는 방법을 배웠습니다 이 아이디어는 텍스트 패턴을 생성하며 이 모델은 완성하도록 학습됩니다 예를 들어 입력으로 국가명을 가져와 수도입니다. 다음은 이를 위해 설계된 텍스트 프롬프트입니다.

Italy : Rome
France : Paris
Germany :

이 프롬프트에서는 [country] : [capital] 패턴을 설정합니다. 보내는 경우 대규모 언어 모델에 이 프롬프트를 입력하면 패턴을 자동 완성하고 다음과 같은 결과를 반환합니다.

     Berlin
Turkey : Ankara
Greece : Athens

이 모델 응답이 약간 이상해 보일 수 있습니다. 모델은 독일의 수도 (자기 작성 프롬프트의 마지막 국가)와 추가 국가 및 수도 쌍의 전체 목록 그 이유는 '패턴을 이어가는' 것입니다. 당신이 하려는 일이 입력 국가의 수도('독일 : '베를린'), 여러분은 아마도 모델이 학습하는 텍스트에는 별로 신경 쓰지 않을 생성할 수 있습니다. 실제로 애플리케이션 디자이너는 자릅니다. 또한 여러분은 아마도 입력을 매개변수화하여 독일이 고정 문자열이 아니라 변수 값이 되도록 합니다. 다음과 같습니다.

Italy : Rome
France : Paris
<user input here> :

국가의 수도를 생성하기 위한 몇 샷 프롬프트를 작성했습니다.

퓨샷 프롬프트를 따르면 많은 작업을 수행할 수 있습니다. 있습니다. 이것은 캡쳐를 위해 사용 가능한 약간 다른 형식의 Python을 자바스크립트로 변환합니다.

Convert Python to JavaScript.
Python: print("hello world")
JavaScript: console.log("hello world")
Python: for x in range(0, 100):
JavaScript: for(var i = 0; i < 100; i++) {
Python: ${USER INPUT HERE}
JavaScript:

또는 이 '역 사전'을 사용하세요. 메시지가 표시됩니다. 정의가 주어지면 다음 단어를 선택합니다.

Given a definition, return the word it defines.
Definition: When you're happy that other people are also sad.
Word: schadenfreude
Definition: existing purely in the mind, but not in physical reality
Word: abstract
Definition: ${USER INPUT HERE}
Word:

이러한 퓨샷 프롬프트의 정확한 패턴은 있습니다. 예시뿐만 아니라 프롬프트는 자체 프롬프트를 작성할 때 고려해야 할 추가 전략입니다. 인텐트를 모델에 전달하는 데 도움이 됩니다.

프롬프트 표시 및 기존 소프트웨어 개발 비교

신중하게 작성된 사양에 따라 설계된 기존 소프트웨어와 달리, 모델 트레이너조차도 생성 모델의 동작이 대체로 불투명합니다. 어떤 유형의 프롬프트 구조가 어떤 유형의 프롬프트에 적용할지 특정 모델에 가장 적합한 모델을 선택할 수 있습니다 또한, 생성형 AI의 동작은 모델은 대체로 학습 데이터에 의해 결정되며 새로운 데이터 세트에 대해 지속적으로 조정되므로 때로는 모델이 어떤 프롬프트 구조가 가장 효과적인지 실수로 변경합니다. 미치는 영향 너는? 실험해 보세요. 다양한 프롬프트 형식을 사용해 보세요.

모델 매개변수

모델로 보내는 모든 프롬프트에는 모델이 응답을 생성합니다. 모델은 서로 다른 매개변수 값에 대해 서로 다른 결과를 생성할 수 있습니다. 가장 일반적인 모델 매개변수는 다음과 같습니다.

  1. 최대 출력 토큰: 출력할 수 있는 토큰의 최대 개수를 지정합니다. 확인할 수 있습니다. 토큰 1개는 약 4자(영문 기준)입니다. 100명 약 60~80개 단어에 해당합니다

  2. 강도: 온도는 토큰의 무작위성 수준을 제어합니다. 선택합니다. 온도는 응답 생성 중 샘플링에 사용됩니다. 이는 topPtopK가 적용될 때 발생합니다. 온도가 낮은 것이 좋습니다. 보다 확정적이거나 덜 개방형 응답이 필요한 프롬프트 고온일수록 더욱 다양하거나 창의적인 결과를 얻을 수 있습니다. 가 온도가 0이면 확정적인 것이고 항상 선택됩니다.

  3. topK: topK 매개변수는 모델이 다음에 사용할 토큰을 선택하는 방식을 변경합니다. 출력됩니다. topK가 1이면 선택한 토큰이 모델의 어휘에 있는 모든 토큰 (그리디 디코딩이라고도 함)과 topK가 3이면 다음 토큰이 3개의 토큰 중에서 가능성이 가장 높습니다. 각 토큰 선택 단계에서 확률이 가장 높은 topK 토큰이 샘플링됩니다. 그러면 토큰이 topP를 기준으로 추가로 필터링되고, 다음을 사용하여 선택된 최종 토큰 온도 샘플링.

  4. topP: topP 매개변수는 모델이 다음에 사용할 토큰을 선택하는 방식을 변경합니다. 출력됩니다. 토큰은 확률이 가장 높은 것에서 가장 낮은 것부터 확률은 topP 값과 같습니다. 예를 들어 토큰 A, B, C의 확률은 0.3, 0.2, 0.1이고 topP 값은 0.5입니다. 모델은 C를 후보에서 제외합니다. 기본 topP 값은 0.95입니다.

  5. stop_sequences: 중지 시퀀스를 다음과 같이 설정합니다. 콘텐츠 생성을 중지하도록 모델에 알립니다. 중지 시퀀스는 문자 시퀀스입니다. 텍스트, 이미지, 오디오, 생성된 콘텐츠에 표시될 수 있습니다.

프롬프트 유형

프롬프트에 포함된 컨텍스트 정보의 수준에 따라 크게 3가지 유형으로 분류됩니다.

제로샷 프롬프트

이 프롬프트에는 모델이 복제할 수 있는 예시가 포함되어 있지 않습니다. 제로샷 프롬프트는 기본적으로 다른 작업 없이 프롬프트를 완료할 수 있는 모델의 능력을 추가 예시나 정보를 얻을 수 있습니다. 즉, 모델이 학습한 내용을 기반으로 기존 지식을 활용하여 타당한 답을 생성합니다.

일반적으로 사용되는 제로샷 프롬프트 패턴은 다음과 같습니다.

  • 안내 콘텐츠
<Overall instruction>
<Content to operate on>

예를 들면 다음과 같습니다.

Summarize the following into two sentences at the third-grade level:

Hummingbirds are the smallest birds in the world, and they are also one of the
most fascinating. They are found in North and South America, and they are known
for their long, thin beaks and their ability to fly at high speeds.

Hummingbirds are made up of three main parts: the head, the body, and the tail.
The head is small and round, and it contains the eyes, the beak, and the brain.
The body is long and slender, and it contains the wings, the legs, and the
heart. The tail is long and forked, and it helps the hummingbird to balance
while it is flying.

Hummingbirds are also known for their coloration. They come in a variety of
colors, including green, blue, red, and purple. Some hummingbirds are even able
to change their color!

Hummingbirds are very active creatures. They spend most of their time flying,
and they are also very good at hovering. Hummingbirds need to eat a lot of food
in order to maintain their energy, and they often visit flowers to drink nectar.

Hummingbirds are amazing creatures. They are small, but they are also very
powerful. They are beautiful, and they are very important to the ecosystem.
  • 안내 콘텐츠 안내
<Overall instruction or context setting>
<Content to operate on>
<Final instruction>

예를 들면 다음과 같습니다.

Here is some text I'd like you to summarize:

Hummingbirds are the smallest birds in the world, and they are also one of the
most fascinating. They are found in North and South America, and they are known
for their long, thin beaks and their ability to fly at high speeds. Hummingbirds
are made up of three main parts: the head, the body, and the tail. The head is
small and round, and it contains the eyes, the beak, and the brain. The body is
long and slender, and it contains the wings, the legs, and the heart. The tail
is long and forked, and it helps the hummingbird to balance while it is flying.
Hummingbirds are also known for their coloration. They come in a variety of
colors, including green, blue, red, and purple. Some hummingbirds are even able
to change their color! Hummingbirds are very active creatures. They spend most
of their time flying, and they are also very good at hovering. Hummingbirds need
to eat a lot of food in order to maintain their energy, and they often visit
flowers to drink nectar. Hummingbirds are amazing creatures. They are small, but
they are also very powerful. They are beautiful, and they are very important to
the ecosystem.

Summarize it in two sentences at the third-grade reading level.
  • 계속. 어떤 경우에는 모델이 입력값을 지정하지 않고 텍스트를 계속하도록 할 수 있습니다. 참조하세요. 예를 들어, 이것은 모델이 학습하고 계속하여 입력합니다.
Once upon a time, there was a little sparrow building a nest in a farmer's
barn. This sparrow

제로샷 프롬프트를 사용하여 시, 코드, 스크립트, 음악 작품, 이메일, 편지 등이 있습니다.

원샷 프롬프트

이 프롬프트는 모델에 복제하고 계속 진행할 수 있는 단일 예를 제공합니다. 패턴입니다. 이를 통해 있습니다.

예를 들어 다음과 같은 음식 페어링을 생성할 수 있습니다.

Food: Apple
Pairs with: Cheese
Food: Pear
Pairs with:

퓨샷 프롬프트

이러한 프롬프트는 모델에 복제할 여러 예시를 제공합니다. 사용 데이터 기반 통합과 같은 복잡한 작업을 완료하기 위한 퓨샷 프롬프트 학습합니다.

프롬프트의 예는 다음과 같습니다.

Generate a grocery shopping list for a week for one person. Use the JSON format
given below.
{"item": "eggs", "quantity": "6"}
{"item": "bread", "quantity": "one loaf"}

생성 모델 자세히 살펴보기

이 섹션에서는 다음 질문에 답하는 것을 목표로 합니다. 생성형 콘텐츠에 무작위성이 있나요? 예측하기 위해 아니면 확정적인가요?

간단히 말하자면 둘 다 '예'입니다. 생성 모델에 프롬프트를 입력하면 두 단계로 구성됩니다 첫 번째 단계에서는 생성 모델이 입력 프롬프트를 처리하고 학습 도중에 확률 분포를 단어의 수를 반환합니다. 예를 들어 입력 텍스트가 'The 강아지가 ...를 뛰어넘었습니다'라는 입력 텍스트가 있으면 생성 모델은 다음에 올 가능성이 있는 단어의 배열을 생성합니다.

[("fence", 0.77), ("ledge", 0.12), ("blanket", 0.03), ...]

이 프로세스는 확정적입니다. 생성 모델은 동일한 작업을 동일한 프롬프트 텍스트를 입력할 때마다 가중치 분포가 적용됩니다

두 번째 단계에서는 생성 모델이 이러한 분포를 여러 디코딩 전략 중 하나를 사용하여 실제 텍스트 응답을 생성합니다. 간단한 디코딩 전략은 시간 단계마다 가능성이 가장 높은 토큰을 선택할 수 있습니다. 이 항상 확정적입니다 그러나 대신 모델이 반환한 분포에서 무작위 샘플링하여 응답을 있습니다. 이 프로세스는 확률적 (무작위)입니다. 디코더에서 디코딩 시 허용될 수 있는 임의성을 선택합니다. 가 강도가 0이면 가능성이 가장 높은 토큰만 선택되고 있습니다. 반대로 온도가 높으면 무작위성이 높아지고 모델이 선택한 토큰으로 변환하여 보다 예상치 못한 모델 응답입니다.

추가 자료

  • 이제 프롬프트와 생성 모델을 더 깊이 이해했으니 직접 프롬프트를 작성하여 Google AI Studio
  • 자세한 내용은 프롬프트 가이드라인을 참고하세요. 프롬프트 생성 권장사항에 대해 자세히 알아보세요.