프롬프트 설계는 언어 모델에서 정확하고 고품질의 응답을 유도하는 프롬프트 또는 자연어 요청을 만드는 프로세스입니다.
이 페이지에서는 Gemini AI 모델을 최대한 활용하기 위한 프롬프트 설계를 시작하기 위한 기본 개념, 전략, 권장사항을 소개합니다.
주제별 프롬프트 가이드
더 구체적인 프롬프트 전략을 찾고 계신가요? 다음과 같은 다른 프롬프트 가이드를 확인하세요.
Google AI 스튜디오에서는 이 가이드에서 공유된 다양한 개념을 양방향으로 보여주는 프롬프트 갤러리도 호스팅합니다.
명확하고 구체적인 안내
모델 동작을 효과적이고 효율적으로 맞춤설정하는 방법은 명확하고 구체적인 안내를 제공하는 것입니다. 안내는 질문, 단계별 태스크의 형태일 수 있으며 사용자의 경험과 사고방식을 매핑하는 것만큼 복잡할 수도 있습니다.
입력
입력은 모델에 응답을 제공하려는 프롬프트의 필수 텍스트입니다. 입력은 모델에서 답하는 질문(질문 입력), 모델에서 수행하는 태스크(태스크 입력), 모델에서 작업하는 항목(항목 입력) 또는 모델에서 완료하거나 계속하는 부분 입력(완료 입력)일 수 있습니다.
입력 유형 | 프롬프트 | 생성된 출력 |
---|---|---|
질문 |
|
|
작업 | Give me a simple list of just the things that I must bring on a camping trip. The list should have 5 items. |
1. **Tent:** Your shelter from the elements. 2. **Sleeping Bag:** Stay warm and comfortable. 3. **Sleeping Pad:** Insulation and cushioning for a good night's sleep. 4. **Headlamp or Flashlight:** Light for nighttime activities. 5. **First Aid Kit:** Be prepared for minor injuries. |
항목 |
|
|
부분 입력 완료
생성형 언어 모델은 고급 자동 완성 도구처럼 작동합니다. 부분 콘텐츠를 제공하면 모델은 나머지 콘텐츠나 해당 콘텐츠의 연속이라고 생각하는 것을 응답으로 제공할 수 있습니다. 이 경우 예시 또는 컨텍스트를 포함하면 모델이 이러한 예시 또는 컨텍스트를 고려할 수 있습니다.
다음 예시에서는 안내 및 항목 입력과 함께 프롬프트를 제공합니다.
For the given order, return a JSON object that has the fields cheeseburger, hamburger, fries, or drink, with the value being the quantity. Order: A burger and a drink. { "cheeseburger": 0, "hamburger": 1, "fries": 0, "drink": 1 } |
모델이 예측한 대로 작동하지만 자연어로 ���내를 작성하는 것이 어려울 수 있으며 모델의 해석에 많은 영향을 미칩니다. 예를 들어 레스토랑 메뉴에는 많은 항목이 포함되어 있을 수 있습니다. JSON 응답의 크기를 줄이기 위해 정렬되지 않은 항목을 생략하고 싶을 수 있습니다. 이 경우 예시와 응답 접두사를 제공하여 모델이 이를 완료하게 할 수 있습니다.
Valid fields are cheeseburger, hamburger, fries, and drink. Order: Give me a cheeseburger and fries Output: ``` { "cheeseburger": 1, "fries": 1 } ``` Order: I want two burgers, a drink, and fries. Output: ``` { "hamburger": 2, "drink": 1, "fries": 1 } ``` |
'치즈버거'가 주문의 일부가 아니었기 때문에 출력에서 어떻게 제외되었는지 확인하세요.
제약조건
프롬프트 읽기 또는 응답 생성에 대한 제약조건을 지정합니다. 모델에게 해야 할 일과 하지 말아야 할 일을 지시할 수 있습니다. 예를 들어 프롬프트에서 요약의 길이에 대한 제약조건을 지정할 수 있습니다.
Summarize this text in one sentence: Text: A quantum computer exploits quantum mechanical phenomena to perform calculations exponentially faster than any modern traditional computer. At very tiny scales, physical matter acts as both particles and as waves, and quantum computing uses specialized hardware to leverage this behavior. The operating principles of quantum devices is beyond the scope of classical physics. When deployed at scale, quantum computers could be used in a wide variety of applications such as: in cybersecurity to break existing encryption methods while helping researchers create new ones, in meteorology to develop better weather forecasting etc. However, the current state of the art quantum computers are still largely experimental and impractical.
Exploiting quantum mechanical phenomena, quantum computers can perform calculations exponentially faster than traditional computers for potential applications like cybersecurity and meteorology, although they are currently largely experimental and impractical. |
대답 형식
응답 형식을 지정하는 요청 사항을 제공할 수 있습니다. 예를 들어 응답 형식을 표, 글머리기호 목록, 엘리베이터 피치, 키워드, 문장 또는 단락 형식으로 요청할 수 있습니다. 다음 시스템 안내는 모델에 대답을 더 대화식으로 하라고 지시합니다.
All questions should be answered comprehensively with details, unless the user requests a concise response specifically. What is a smart way to make a business that sells DVD's in 2025? Starting a business selling DVDs in 2025 presents significant challenges due to the overwhelming dominance of digital streaming and on-demand services; a "smart" approach would therefore require a highly specialized niche, a strong value proposition beyond just the disc, and likely a focus on community or collector markets rather than mainstream consumption. Here's a breakdown of what a smart DVD business in 2025 would likely entail: 1. Extreme Niche Specialization: You cannot compete with streaming libraries. Your business must focus on what digital doesn't offer easily or at all. This could include: * Out-of-Print & Rare Titles: Sourcing films or TV shows that have never been released digitally or are currently unavailable on major streaming platforms. .... |
완료 전략을 사용하여 응답 형식 지정
완료 전략도 응답의 형식을 지정하는 데 도움이 될 수 있습니다. 다음 예시에서는 모델에 에세이 개요를 만들라는 프롬프트를 표시합니다.
Create an outline for an essay about hummingbirds. Here is a possible outline for an essay about hummingbirds: I. Introduction A. Hook: Start with a captivating fact or description about hummingbirds (e.g., their speed, iridescent colors, or tiny size). B. Background: Briefly introduce hummingbirds – where they are found (Americas), their reputation as unique birds. C. Thesis Statement: State the main point of the essay, which could be about the remarkable adaptations, behaviors, and ecological importance of hummingbirds. II. Appearance and Identification ..... |
프롬프트에 개요의 형식이 지정되지 않았고 모델이 자동으로 형식을 선택했습니다. 모델이 특정 형식으로 개요를 반환하기 위해서는 개요의 시작을 나타내는 텍스트를 추가하고, 시작한 패턴에 따라 모델이 이를 완료하도록 할 수 있습니다.
Create an outline for an essay about hummingbirds. I. Introduction * Okay, here is an outline for an essay about hummingbirds, starting from the introduction you provided: I. Introduction * Hook: Start with a captivating fact or description about hummingbirds (e.g., their speed, iridescent colors, or tiny size). * Background: Briefly introduce hummingbirds – where they are found (Americas), their reputation as unique birds, and their general characteristics. * Thesis Statement: State the main point of the essay, focusing on the remarkable adaptations, behaviors, and ecological significance that make hummingbirds extraordinary. ..... |
제로샷 또는 퓨샷 프롬프트
프롬프트에 올바른 예시 모델을 보여주는 예시를 포함할 수 있습니다. 모델은 예시의 패턴과 관계를 식별한 후 응답을 생성할 때 이를 적용합니다. 몇 가지 예시가 포함된 프롬프트를 퓨샷 프롬프트라고 하며, 예시를 제공하지 않는 프롬프트를 제로샷 프롬프트라고 합니다. 퓨샷 프롬프트는 모델 응답의 형식 지정, 문구, 범위 지정 또는 일반적인 패턴을 규제하는 데 자주 사용됩니다. 모델이 초점을 좁히고 더 정확한 결과를 생성할 수 있도록 구체적이고 다양한 예시를 사용합니다.
프롬프트에는 항상 퓨샷 예시를 포함하는 것이 좋습니다. 퓨샷 예시가 없는 프롬프트는 효과적이지 않을 수 있습니다. 실제로 태스크를 보여주는 예시가 충분히 명확하다면 프롬프트에서 요청 사항을 삭제해도 됩니다.
다음 제로샷 프롬프트는 모델에 가장 적합한 설명을 선택하라고 요청합니다.
Please choose the best explanation to the question: Question: How is snow formed? Explanation1: Snow is formed when water vapor in the air freezes into ice crystals in the atmosphere, which can combine and grow into snowflakes as they fall through the atmosphere and accumulate on the ground. Explanation2: Water vapor freezes into ice crystals forming snow. Answer: Explanation1 is the better explanation because it provides more detail on the process, including how ice crystals combine and grow into snowflakes as they fall through the atmosphere. |
모델이 간결한 응답을 생성해야 하는 사용 사례의 경우 간결한 응답을 선호할 수 있도록 프롬프트에 예시를 포함할 수 있습니다.
다음 프롬프트는 간략한 설명을 선호하는 두 가지 예시를 제공합니다. 응답에서 모델은 이전과 마찬가지로 더 긴 설명 (Explanation1
)이 아닌 더 짧은 설명 (Explanation2
)을 선택하도록 모델에 예시를 통해 안내가 제공된 것을 볼 수 있습니다.
Below are some examples showing a question, explanation, and answer format: Question: Why is the sky blue? Explanation1: The sky appears blue because of Rayleigh scattering, which causes shorter blue wavelengths of light to be scattered more easily than longer red wavelengths, making the sky look blue. Explanation2: Due to Rayleigh scattering effect. Answer: Explanation2 Question: What is the cause of earthquakes? Explanation1: Sudden release of energy in the Earth's crust. Explanation2: Earthquakes happen when tectonic plates suddenly slip or break apart, causing a release of energy that creates seismic waves that can shake the ground and cause damage. Answer: Explanation1 Now, Answer the following question given the example formats above: Question: How is snow formed? Explanation1: Snow is formed when water vapor in the air freezes into ice crystals in the atmosphere, which can combine and grow into snowflakes as they fall through the atmosphere and accumulate on the ground. Explanation2: Water vapor freezes into ice crystals forming snow. Answer: Answer: Explanation2 |
최적의 예시 수
Gemini와 같은 모델은 종종 몇 가지 예시를 사용하여 패턴을 선택하지만, 최상의 결과를 얻으려면 프롬프트에 제공할 예시 수를 실험해야 할 수 있습니다. 하지만 너무 많은 예시를 포함하면 모델이 예시에 대한 응답에 과적합하게 될 수 있습니다.
패턴과 방지 패턴 비교
예시를 사용하여 모델을 따라야 할 패턴을 보여주는 것이 예시를 사용하여 모델에 피해야 할 반대 패턴을 보여주는 것보다 더 효과적입니다.
⛔ 부정적인 패턴:
Don't end haikus with a question: Haiku are fun A short and simple poem Don't you enjoy them? |
✅ 긍정적인 패턴:
Always end haikus with an assertion: Haiku are fun A short and simple poem A joy to write |
일관된 형식
원치 않는 형식의 응답을 방지하기 위해 퓨샷 예시의 구조와 형식이 동일해야 합니다. 프롬프트에 퓨샷 예시를 추가하는 기본 목표 중 하나는 모델에 응답 형식을 보여주는 것입니다. 따라서 모든 예시에서 일관된 형식을 보장하는 것이 중요합니다. 특히 XML 태그, 공백, 줄바꿈, 예시 분할기에 주의해야 합니다.
컨텍스트 추가
모델에 필요한 모든 정보가 있다고 가정하는 대신 모델이 문제를 해결하는 데 필요한 프롬프트 안내와 정보를 포함할 수 있습니다. 이 컨텍스트 정보는 모델이 요청된 작업의 제약조건과 세부정보를 이해하는 데 도움이 됩니다.
다음 예시에서는 모델에 라우터에 대한 문제 해결 안내를 제공하도록 요청합니다.
What should I do to fix my disconnected wifi? The light on my Google Wifi router is yellow and blinking slowly. A yellow blinking light on your Google Wifi router usually indicates a problem with the internet connection. Here are some steps to troubleshoot and fix the issue: 1. Restart your router and modem: - Unplug your modem from the power outlet and wait for 30 seconds. - Plug your modem back in and wait for it to fully boot up. - Unplug your Google Wifi router and wait for 30 seconds. - Plug your Google Wifi router back in and wait for it to fully boot up. ..... |
이 응답은 라우터 또는 LED 표시기 표시등의 상태와 관련이 없는 일반적인 문제 해결 정보처럼 보입니다.
특정 라우터의 응답을 맞춤설정하려면 응답을 제공할 때 참조할 컨텍스트로 라우터의 문제 해결 가이드를 프롬프트에 추가할 수 있습니다.
Answer the question using the text below. Respond with only the text provided. Question: What should I do to fix my disconnected wifi? The light on my Google Wifi router is yellow and blinking slowly. Text: Color: Slowly pulsing yellow What it means: There is a network error. What to do: Check that the Ethernet cable is connected to both your router and your modem and both devices are turned on. You might need to unplug and plug in each device again. Color: Fast blinking yellow What it means: You are holding down the reset button and are factory resetting this device. What to do: If you keep holding down the reset button, after about 12 seconds, the light will turn solid yellow. Once it is solid yellow, let go of the factory reset button. Color: Solid yellow What it means: Router is factory resetting. What to do: This can take up to 10 minutes. When it's done, the device will reset itself and start pulsing white, letting you know it's ready for setup. Color: Solid red What it means: Something is wrong. What to do: Critical failure. Factory reset the router. If the light stays red, contact Wifi customer support. Check that the Ethernet cable is connected to both your router and your modem and both devices are turned on. You might need to unplug and plug in each device again. |
프리픽스 추가
프리픽스는 프리픽스를 배치하는 위치에 따라 여러 용도로 사용할 수 있는 프롬프트 콘텐츠에 추가하는 단어 또는 구문입니다.
- 입력 프리픽스: 모델에 대한 입력에서 의미론적으로 의미 있는 부분에 입력 프리픽스를 추가합니다. 예를 들어 '영어:' 및 '프랑스어:' 프리픽스는 두 가지 언어를 구분합니다.
- 출력 접두사: 모델에서 출력을 생성하더라도 프롬프트에서 출력에 대한 접두사를 추가할 수 있습니다. 출력 접두사는 예상되는 응답에 대한 모델 정보를 제공합니다. 예를 들어 출력 접두사 'JSON:'은 출력이 JSON 형식이어야 함을 모델에 알립니다.
- 예시 프리픽스: 퓨샷 프롬프트에서 예시에 프리픽스를 추가하면 모델이 출력을 생성할 때 사용할 수 있는 라벨을 제공하여 출력 콘텐츠를 더 쉽게 파싱할 수 있습니다.
다음 예에서 'Text:'는 입력 접두사이고 'The answer is:'는 출력 접두사입니다.
Classify the text as one of the following categories. - large - small Text: Rhino The answer is: large Text: Mouse The answer is: small Text: Snail The answer is: small Text: Elephant The answer is: The answer is: large |
프롬프트를 구성요소로 분류
복잡한 프롬프트가 필요한 사용 사례의 경우 항목을 더 간단한 구성요소로 나누면 모델이 이러한 복잡성을 관리하도록 도울 수 있습니다.
안내 분류: 하나의 프롬프트에 여러 안내를 포함하는 대신 안내당 하나의 프롬프트를 만듭니다. 사용자의 입력에 따라 처리할 프롬프트를 선택할 수 있습니다.
프롬프트 연결: 여러 순차적 단계가 포함된 복잡한 태스크의 경우 각 단계를 프롬프트로 만들고 프롬프트를 순서대로 연결합니다. 이 순차적인 프롬프트 체인에서 시퀀스의 한 프롬프트 출력이 다음 프롬프트의 입력이 됩니다. 시퀀스에서 마지막 프롬프트의 출력이 최종 출력입니다.
응답 집계: 집계는 데이터의 서로 다른 부분에서 서로 다른 병렬 태스크를 실행하고 결과를 집계하여 최종 출력을 생성하는 것입니다. 예를 들어 데이터의 첫 번째 부분에 대해 하나의 작업을 수행하고 나머지 데이터에서 다른 작업을 수행한 후 결과를 집계하도록 모델에 지시할 수 있습니다.
모델 매개변수 실험
모델에 보낸 각 셀에는 모델의 응답 생성 방식을 제어하는 매개변수 값이 포함되어 있습니다. 모델은 서로 다른 매개변수 값에 대해 서로 다른 결과를 생성할 수 있습니다. 이 작업에서는 최상의 값을 얻을 수 있도록 다양한 매개변수 값으로 실험해 봅니다. 모델별로 사용 가능한 매개변수가 다를 수 있습니다. 가장 일반적인 파라미터는 다음과 같습니다.
최대 출력 토큰: 응답에서 생성할 수 있는 토큰의 최대 개수를 지정합니다. 토큰 1개는 약 4자(영문 기준)입니다. 토큰 100개는 단어 약 60~80개에 해당합니다.
온도: 온도는 토큰 선택의 무작위성 수준을 제어합니다. 온도(temperature)는 응답 생성 중 샘플링에 사용되며
topP
및topK
가 적용될 때 발생합니다. 강도가 낮을수록 보다 결정적이거나 덜 개방적인 응답이 필요한 프롬프트에 적합하고, 강도가 높을수록 다양하거나 창의적인 결과로 이어질 수 있습니다. 강도가 0이면 확정적입니다. 즉, 확��이 가장 ����� ���답��� 항상 선택됩니다.topK
:topK
매개변수는 모델이 출력용 토큰을 선택하는 방식을 변경합니다.topK
가 1이면 선택된 토큰이 모델의 어휘에 포함된 모든 토큰 중에서 가장 확률이 높다는 의미입니다 (그리디 디코딩이라고도 함). 반면에topK
가 3이면 강도를 사용하여 가장 확률이 높은 토큰 3개 중에서 다음 토큰이 선택된다는 의미입니다. 각 토큰 선택 단계에서 확률이 가장 높은topK
토큰이 샘플링됩니다. 그런 다음 강도 샘플링을 사용하여 선택된 최종 토큰으로topP
을 기준으로 토큰을 추가로 필터링합니다.topP
:topP
매개변수는 모델이 출력용 토큰을 선택하는 방식을 변경합니다. 토큰의 확률 합계가topP
값과 같아질 때까지 확률이 가장 높은 순에서 낮은 순으로 토큰이 선택됩니다. 예를 들어 토큰 A, B, C의 확률이 0.3, 0.2, 0.1이고topP
값이 0.5이면 모델은 온도를 사용하여 다음 토큰으로 A 또는 B를 선택하고 C는 후보에서 제외합니다. 기본topP
값은 0.95입니다.stop_sequences
: 모델에 콘텐츠 생성을 중지하도록 지시하는 중지 시퀀스를 설정합니다. 중지 시퀀스는 임의의 문자 시퀀스일 수 있습니다. 생성된 콘텐츠에 표시될 수 있는 문자 시퀀스는 사용하지 않는 것이 좋습니다.
프롬프트 반복 전략
프롬프트 설계 시 원하는 응답을 일관되게 얻으려면 몇 번의 반복 작업이 필요한 경우가 있습니다. 이 섹션에서는 프롬프트를 반복할 때 시도할 수 있는 몇 가지 사항에 대한 안내를 제공합니다.
다른 문구 사용: 프롬프트에서 다른 단어나 문구를 사용하면 의미가 동일하더라도 모델마다 다른 응답이 출력되는 경우가 많습니다. 예상한 결과를 얻지 못했다면 다른 문구를 사용해 보세요.
Version 1: How do I bake a pie? Version 2: Suggest a recipe for a pie. Version 3: What's a good pie recipe?
유사한 태스크로 전환: 모델이 태스크 안내를 따르게 할 수 없으면 동일한 결과를 얻는 유사한 태스크에 대한 안내를 제공해 보세요.
이 프롬프트는 사전 정의된 카테고리를 사용하여 도서를 분류하도록 모델에 지시합니다.
Which category does The Odyssey belong to: thriller sci-fi mythology biography
The Odyssey belongs to the category of **mythology**. Here's why: * **Mythology:** The Odyssey tells the story of Odysseus, a hero from Greek mythology, and his journey home after the Trojan War. It features gods, monsters, and supernatural events common to Greek mythology. .....
응답은 올바르지만 모델이 옵션의 경계 내에 있지 않았습니다. 또한 전체 문장 대신 옵션 중 하나에만 응답하도록 모델을 만들 수 있습니다. 이 경우 안내를 객관식 질문으로 변경하고 모델이 옵션을 선택하도록 요청할 수 있습니다.
Multiple choice problem: Which of the following options describes the book The Odyssey? Options:
- thriller
- sci-fi
- mythology
- biography
The correct answer is mythology.
프롬프트 콘텐츠 순서 변경: 프롬프트의 콘텐츠 순서는 응답에 영향을 줄 수 있습니다. 콘텐츠 순서를 변경하여 응답에 미치는 영향을 확인하세요.
Version 1: [examples] [context] [input] Version 2: [input] [examples] [context] Version 3: [examples] [input] [context]
대체 응답
대체 응답은 프롬프트 또는 응답이 안전 필터를 트리거할 때 모델에서 반환하는 응답입니다. 대체 응답의 예로는 '저는 언어 모델일 뿐이기 때문에 지원할 수 없습니다.'가 있습니다.
모델이 대체 응답을 제공할 경우에는 강도를 높여보세요.
피해야 할 사항
- 사실에 기반한 정보를 생성하기 위해 모델에 의존하지 마세요.
- 수학 및 논리 문제에 주의해서 사용하세요.
생성형 모델의 내부
이 섹션에서는 생성형 모델의 응답에 무작위성이 있나요, 아니면 결정론적인가요?라는 질문에 답변하는 것을 목표로 합니다.
간단히 말씀드리면 둘 다 '예'입니다. 생성형 모델에 프롬프트를 제공하면 텍스트 응답이 두 단계로 생성됩니다. 첫 번째 단계에서 생성형 모델은 입력 프롬프트를 처리하고 다음에 나올 가능성이 있는 가능한 토큰 (단어)에 대한 확률 분포를 생성합니다. 예를 들어 'The dog jumped over the ... '라는 입력 텍스트를 프롬프트로 사용하면 생성형 모델은 다음에 나올 수 있는 단어의 배열을 생성합니다.
[("fence", 0.77), ("ledge", 0.12), ("blanket", 0.03), ...]
이 프로세스는 결정론적입니다. 생성형 모델은 동일한 프롬프트 텍스트를 입력할 때마다 동일한 분포를 생성합니다.
두 번째 단계에서 생성형 모델은 여러 디코딩 전략 중 하나를 통해 이러한 분포를 실제 텍스트 응답으로 변환합니다. 간단한 디코딩 전략은 시간 단계마다 가장 가능성이 높은 토큰을 선택할 수 있습니다. 이 프로세스는 항상 결정론적입니다. 대신 모델이 반환한 분포에서 무작위로 샘플링하여 응답을 생성할 수 있습니다. 이 프로세스는 확률적 (무작위)입니다. 온도를 설정하여 이 디코딩 프로세스에 허용되는 무작위성 수준을 제어합니다. 온도가 0이면 가장 가능성이 높은 토큰만 선택되고 무작위성이 없습니다. 반대로 온도가 높으면 모델에서 선택한 토큰에 높은 수준의 무작위성이 주입되어 더 예상치 못하고 놀라운 모델 대답이 나올 수 있습니다.
다음 단계
- 이제 프롬프트 설계에 대해 자세히 알아봤으니 Google AI 스튜디오를 사용하여 직접 프롬프트를 작성해 보세요.
- 멀티모달 프롬프트에 대한 자세한 내용은 미디어 파일로 프롬프트를 참고하세요.
- 이미지 프롬프트에 관해 자세히 알아보려면 Imagen 프롬프트 가이드를 참고하세요.
- 동영상 프롬프트에 대한 자세한 내용은 Veo 프롬프트 가이드를 참고하세요.