프롬프트란 무엇인가요? - Amazon Bedrock

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

프롬프트란 무엇인가요?

프롬프트는 Amazon BedrockLLMs에서 지정된 작업 또는 지침에 대한 적절한 응답 또는 출력을 생성하도록 안내하는 사용자인 사용자가 제공하는 특정 입력 세트입니다.

User Prompt: Who invented the airplane?

이 프롬프트에서 쿼리할 때 Titan 는 다음과 같은 출력을 제공합니다.

Output: The Wright brothers, Orville and Wilbur Wright are widely credited with inventing and manufacturing the world's first successful airplane.

(프롬프트 소스: AWS, 사용된 모델: Amazon Titan 텍스트)

프롬프트의 구성 요소

단일 프롬프트에는 에서 LLMs 수행하려는 작업 또는 지침, 작업의 컨텍스트(예: 관련 도메인에 대한 설명), 데모 예제, Amazon BedrockLLMs에서 응답에 사용할 입력 텍스트와 같은 여러 구성 요소가 포함됩니다. 사용 사례, 데이터 가용성, 태스크에 따라 프롬프트는 이러한 하나 이상의 구성 요소를 조합해야 합니다.

이 예제 프롬프트 요청 고려 Titan 검토를 요약하려면:

User Prompt: The following is text from a restaurant review: “I finally got to check out Alessandro’s Brilliant Pizza and it is now one of my favorite restaurants in Seattle. The dining room has a beautiful view over the Puget Sound but it was surprisingly not crowded. I ordered the fried castelvetrano olives, a spicy Neapolitan-style pizza and a gnocchi dish. The olives were absolutely decadent, and the pizza came with a smoked mozzarella, which was delicious. The gnocchi was fresh and wonderful. The waitstaff were attentive, and overall the experience was lovely. I hope to return soon." Summarize the above restaurant review in one sentence.

(프롬프트의 출처: AWS)

이 프롬프트를 기반으로 Titan 는 레스토랑 검토에 대한 간단한 한 줄 요약으로 응답합니다. 리뷰는 필요에 따라 주요 사실을 언급하고 주요 요점을 전달합니다.

Output: Alessandro's Brilliant Pizza is a fantastic restaurant in Seattle with a beautiful view over Puget Sound, decadent and delicious food, and excellent service.

(사용된 모델: Amazon Titan 텍스트)

이러한 유형의 출력값에는 Summarize the above restaurant review in one sentence라는 명령과 I finally got to check out ...이라는 리뷰 텍스트가 모두 필요했습니다. 둘 중 하나가 없다면 모델은 분별력 있는 요약을 생성하기에 충분한 정보를 갖지 못합니다. 지침은 LLM 수행할 작업을 알려주고 텍스트는 이 LLM 작동하는 입력입니다. '컨텍스트'(The following is text from a restaurant review)는 출력값을 공식화할 때 입력값을 사용하도록 모델을 안내하는 추가 정보와 키워드를 제공합니다.

아래 예제에서 텍스트Context: Climate change threatens people with increased flooding ...는 가 질문에 답변하는 작업을 수행하는 데 사용할 LLM 수 있는 입력입니다Question: What organization calls climate change the greatest threat to global health in the 21st century?”.

User prompt: Context: Climate change threatens people with increased flooding, extreme heat, increased food and water scarcity, more disease, and economic loss. Human migration and conflict can also be a result. The World Health Organization (WHO) calls climate change the greatest threat to global health in the 21st century. Adapting to climate change through efforts like flood control measures or drought-resistant crops partially reduces climate change risks, although some limits to adaptation have already been reached. Poorer communities are responsible for a small share of global emissions, yet have the least ability to adapt and are most vulnerable to climate change. The expense, time required, and limits of adaptation mean its success hinge on limiting global warming. Question: What organization calls climate change the greatest threat to global health in the 21st century?

(프롬프트 출처: https://en.wikipedia.org/wiki/Climate_change)

AI21 Labs 프롬프트에 제공된 컨텍스트에 따라 조직의 이름이 올바른 Jurassic 응답입니다.

Output: The World Health Organization (WHO) calls climate change the greatest threat to global health in the 21st century.

(사용된 모델: AI21 Labs Jurassic-2 Ultra v1)

퓨샷 프롬프팅 vs. 제로샷 프롬프팅

이 페어링된 예제 입력 및 원하는 출력에 해당하는 가지 예제를 제공하여 예상에 맞게 출력을 LLMs 더 잘 보정하는 것이 유용할 때도 있습니다. 설명하자면, 우선 아래의 예시는 제로샷 감정 분류 프롬프트입니다. 여기에서는 프롬프트 텍스트에 입력-출력 쌍의 예가 제공되지 않았습니다.

User prompt: Tell me the sentiment of the following headline and categorize it as either positive, negative or neutral: New airline between Seattle and San Francisco offers a great opportunity for both passengers and investors.

(프롬프트의 출처: AWS)

Output: Positive

(사용된 모델: Amazon Titan 텍스트)

다음은 감정 분류 프롬프트의 퓨샷 버전입니다.

User prompt: Tell me the sentiment of the following headline and categorize it as either positive, negative or neutral. Here are some examples: Research firm fends off allegations of impropriety over new technology. Answer: Negative Offshore windfarms continue to thrive as vocal minority in opposition dwindles. Answer: Positive Manufacturing plant is the latest target in investigation by state officials. Answer:

(프롬프트의 출처: AWS)

Output: Negative

(사용된 모델: Amazon Titan 텍스트)

다음 예제에서는 를 사용합니다.Anthropic Claude 모델. 사용 시 Anthropic Claude 모델, <example></example> 태그를 사용하여 데모 예제를 포함하는 것이 좋습니다. 또한 예제에서 H:A: 같은 서로 다른 구분 기호를 사용하여 전체 프롬프트에서 구분 기호 Human:Assistant:와 혼동되는 걸 방지하는 것이 좋습니다. 마지막 몇 번의 샷 예제에서는 최종A:본이 에 유리하게 꺼지고 Assistant:프롬프트가 표시됩니다.Anthropic Claude 대신 답변을 생성합니다.

User prompt: Human: Please classify the given email as "Personal" or "Commercial" related emails. Here are some examples. <example> H: Hi Tom, it's been long time since we met last time. We plan to have a party at my house this weekend. Will you be able to come over? A: Personal </example> <example> H: Hi Tom, we have a special offer for you. For a limited time, our customers can save up to 35% of their total expense when you make reservations within two days. Book now and save money! A: Commercial </example> H: Hi Tom, Have you heard that we have launched all-new set of products. Order now, you will save $100 for the new products. Please check our website. Assistant: Output: Commercial

(프롬프트 소스: AWS, 사용된 모델: Anthropic Claude)

프롬프트 템플릿

프롬프트 템플릿은 교환 가능한 콘텐츠가 포함된 프롬프트의 형식을 지정합니다. 프롬프트 템플릿은 분류, 요약, 질문 응답 등과 같은 다양한 사용 사례에 LLMs 를 사용하기 위한 “레시피”입니다. 프롬프트 템플릿에는 지침, 퓨샷 예제, 정해진 사용 사례에 적합한 특정 컨텍스트 및 질문이 포함될 수 있습니다. 아래 예제는 Amazon Bedrock 텍스트 모델을 사용하여 퓨샷 감정 분류를 수행하는 데 사용할 수 있는 템플릿입니다.

Prompt template: """Tell me the sentiment of the following {{Text Type, e.g., “restaurant review”}} and categorize it as either {{Sentiment A}} or {{Sentiment B}}. Here are some examples: Text: {{Example Input 1}} Answer: {{Sentiment A}} Text: {{Example Input 2}} Answer: {{Sentiment B}} Text: {{Input}} Answer:"""

사용자는 이 템플릿을 복사하여 붙여넣고, Amazon BedrockLLMs에서 를 사용할 때 프롬프트를 완성하기 위해 자체 텍스트와 몇 개의 샷 예제를 작성할 수 있습니다. 이 섹션에서는 추가 템플릿이 제공됩니다.

참고

이중 중괄호 {{ and }}는 템플릿에서 데이터별 정보를 입력할 위치를 표시하며, 이를 프롬프트 텍스트에 포함해서는 안 됩니다.

Amazon Bedrock 추론 요청에 대한 리콜 유지

API 호출을 사용하여 Amazon Bedrock 모델에 액세스하는 경우, 이전 상호 작용이 현재 프롬프트에 포함되지 않는 한 모델이 이전 프롬프트와 이전 요청을 기억하지 않는다는 점에 유의하세요. 요청에 이전 프롬프트를 포함하면 대화식 상호 작용을 하거나 후속 요청을 할 수 있습니다.

에 액세스하는 경우 Anthropic Claude Amazon Bedrock 텍스트 플레이그라운드 대신 API 호출을 사용하는 모델을 사용하면 원하는 응답을 얻기 위해 대화형 스타일로 프롬프트를 래핑합니다( Titan 텍스트 및 AI21 Labs Jurassic 모델 패밀리는 필요하지 않습니다). 아래 예제에서는 대화식 프롬프트를 보여줍니다.

User prompt: Human: Describe where sea otters live in two sentences. Assistant: Output: Here is a two sentence description of where sea otters live: Sea otters live in the northern Pacific Ocean along the coasts of Russia, Alaska, Canada, and the continental United States. They prefer coastal habitats like rocky shores, kelp forests, and estuaries where they have access to shallow, nearshore waters.

(프롬프트 소스: AWS, 사용된 모델: Anthropic Claude)

프롬프트의 주요 내용이 \n\nHuman: {{Main Content}}\n\nAssistant:처럼 래핑되어 있는지 확인합니다. 에 대해 Anthropic Claude 를 통해 전송되는 모델, 프롬프트에는 \n\nHuman: 및 가 포함되어야 API 합니다 \n\nAssistant:.

에서 대화 모드를 사용하려면 Titan, 모델을 프롬프트할 User: {{}} \n Bot: 때 의 형식을 사용할 수 있습니다.