Amazon Bedrock 文本模型的提示模板和示例 - Amazon Bedrock

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon Bedrock 文本模型的提示模板和示例

Amazon Bedrock LLMs 上支持的常见任务包括文本分类、摘要以及问答(有或没有上下文)。对于这些任务,您可以使用以下模板和示例来帮助您为 Amazon Bedrock 文本模型创建提示。

文本分类

对于文本分类,提示包括一个问题以及几个可能的答案选项,模型必须使用正确的选项来响应。此外,如果您LLMs在提示中包含答案选项,则在 Amazon Bedrock 上会输出更准确的回复。

第一个示例是一个简单的多选分类问题。

Prompt template for Titan """{{Text}} {{Question}}? Choose from the following: {{Choice 1}} {{Choice 2}} {{Choice 3}}"""
User prompt: San Francisco, officially the City and County of San Francisco, is the commercial, financial, and cultural center of Northern California. The city proper is the fourth most populous city in California, with 808,437 residents, and the 17th most populous city in the United States as of 2022. What is the paragraph above about? Choose from the following: A city A person An event
Output: A city

(提示来源:旧金山的维基百科,使用的模型:Amazon Titan 文本)

情绪分析是一种分类形式,在这种分析下,模型从以文本表示的一系列选项中选择情绪。

Prompt template for Titan: """The following is text from a {{Text Type, e.g. “restaurant review”}} {{Input}} Tell me the sentiment of the {{Text Type}} and categorize it as one of the following: {{Sentiment A}} {{Sentiment B}} {{Sentiment C}}"""
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 crowed. 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.” Tell me the sentiment of the restaurant review and categorize it as one of the following: Positive Negative Neutral
Output: Positive.

(提示来源: AWS,使用的型号:Amazon Titan 文本)

以下示例使用 Anthropic Claude 用于对文本进行分类的模型。正如中所建议的那样 AnthropicClaude 指南,使用诸如之类的XML标签<text></text>来表示提示的重要部分。要求模型直接生成用XML标签括起来的输出也可以帮助模型生成所需的响应。

Prompt template for Anthropic Claude: """ Human: {{classification task description}} <text> {{input text content to be classified}} </text> Categories are: {{category name 1}} {{category name 2}} {{category name 3}} Assistant:"""
(来源:撰稿人 AWS)
User prompt: Human: Classify the given product description into given categories. Please output the category label in <output></output> tags. Here is the product description. <text> Safe, made from child-friendly materials with smooth edges. Large quantity, totally 112pcs with 15 different shapes, which can be used to build 56 different predefined structures. Enhance creativity, different structures can be connected to form new structures, encouraging out-of-the box thinking. Enhance child-parent bonding, parents can play with their children together to foster social skills. </text> Categories are: (1) Toys (2) Beauty and Health (3) Electronics Assistant:
Output: <output>Toys</output>

(提示来源: AWS,使用的型号:Anthropic Claude)

问答(无上下文)

在没有上下文的问答提示中,模型必须在没有任何上下文或文档的情况下用自己的内部知识回答问题。

Prompt Template to Titan """{{Question}}"""
User prompt: What is Robert Frost's "Stopping by the woods on a snowy evening" about metaphorically?
Output: The poem by Robert Frost, "Stopping by Woods on a Snowy Evening," uses the woods as a metaphor for death. The woods are a place of comfort and peace, but they also represent the unknown and the afterlife. The poem suggests that death is not something to be feared, but rather a natural part of life that we should all embrace. The poem begins with the speaker stopping by the woods on a snowy evening, a moment of contemplation and reflection. The speaker notices the beauty of the snow-covered woods and is reminded of the fleeting nature of life. The poem continues as the speaker considers the temptation of continuing on to his destination, but instead chooses to pause and take in the beauty of the woods. The woods are used as a metaphor for the unknown and the afterlife. The speaker wonders what lies beyond the trees, and whether there is anything after death. The poem suggests that death is not something to be feared, but rather a natural part of life that we should all embrace. The final lines of the poem are perhaps the most famous and poignant: "And miles to go before I sleep, and miles to go before I sleep." These lines suggest that even though the speaker has paused to appreciate the beauty of the woods, they still have a long journey ahead of them. The poem is a reminder that life is fleeting, and that we should take the time to appreciate the beauty around us, even as we work towards our goals and ambitions. Overall, "Stopping by Woods on a Snowy Evening" is a beautiful and thought-provoking poem that uses the metaphor of the woods to explore the concept of death and the afterlife.

(提示来源: AWS,使用的型号:Amazon Titan 文本)

模型鼓励也可以帮助完成问答任务。

Prompt Template to Titan """{{Model encouragement}} {{Question}}"""
User prompt: You are excellent at answering questions, and it makes you happy when you provide the correct answer. What moon in the solar system is most likely to host life?
Output: The moon of Titan, which is a moon of the planet Saturn, is the most likely to support life in the solar system. Titan is the only known moon in the solar system to have a dense atmosphere and a liquid hydrosphere, and scientists believe that it may contain the chemical building blocks for life. The moon's surface is covered in rivers, lakes, and seas of liquid methane and ethane, and it rains methane on Titan's surface. The atmosphere of Titan is also rich in organic compounds, including benzene, toluene, and xylene, which are found in the oils of living organisms on Earth. Additionally, Titan has a magnetic field and a tenuous atmosphere, which could provide protection from harmful radiation and help maintain a stable climate. While there is no direct evidence of life on Titan, scientists believe that it is one of the most promising places in the solar system to search for life beyond Earth.

(提示来源: AWS,使用的型号:Amazon Titan 文本)

Prompt template to Titan """{{Model encouragement}} {{Question}} {{Constraints}}"""
User prompt: You feel rewarded by helping people learn more about climate change. Could you please explain what climate change is? Assume your audience is composed of high school students.
Output: Climate change is the long-term warming of the planet, which can be caused by human activities such as burning fossil fuels and deforestation, as well as natural processes. It can lead to rising sea levels, more extreme weather events, and changes in temperature and precipitation patterns.

(提示来源: AWS,使用的型号:AI21 Labs Jurassic-2 Ultra v1)

问答(带上下文)

在带上下文的问答提示中,用户提供后跟问题的输入文本,模型必须根据输入文本中提供的信息回答问题。在 Amazon Bedrock LLMs 上,将问题放在最后的文字之后可以帮助更好地回答问题。模型鼓励也适用于此使用案例。

Prompt template to Titan """{{Text}} {{Question}}"""
User prompt: The red panda (Ailurus fulgens), also known as the lesser panda, is a small mammal native to the eastern Himalayas and southwestern China. It has dense reddish-brown fur with a black belly and legs, white-lined ears, a mostly white muzzle and a ringed tail. Its head-to-body length is 51–63.5 cm (20.1–25.0 in) with a 28–48.5 cm (11.0–19.1 in) tail, and it weighs between 3.2 and 15 kg (7.1 and 33.1 lb). It is well adapted to climbing due to its flexible joints and curved semi-retractile claws. The red panda was first formally described in 1825. The two currently recognized subspecies, the Himalayan and the Chinese red panda, genetically diverged about 250,000 years ago. The red panda's place on the evolutionary tree has been debated, but modern genetic evidence places it in close affinity with raccoons, weasels, and skunks. It is not closely related to the giant panda, which is a bear, though both possess elongated wrist bones or "false thumbs" used for grasping bamboo. The evolutionary lineage of the red panda (Ailuridae) stretches back around 25 to 18 million years ago, as indicated by extinct fossil relatives found in Eurasia and North America. The red panda inhabits coniferous forests as well as temperate broadleaf and mixed forests, favoring steep slopes with dense bamboo cover close to water sources. It is solitary and largely arboreal. It feeds mainly on bamboo shoots and leaves, but also on fruits and blossoms. Red pandas mate in early spring, with the females giving birth to litters of up to four cubs in summer. It is threatened by poaching as well as destruction and fragmentation of habitat due to deforestation. The species has been listed as Endangered on the IUCN Red List since 2015. It is protected in all range countries. Based on the information above, what species are red pandas closely related to?
Output: Red pandas are closely related to raccoons, weasels, and skunks.

(提示来源:https://en.wikipedia.org/wiki/Red_panda,使用的模型:亚马逊 Titan 文本)

提示时 Anthropic Claude models,将输入文本换成XML标签会很有帮助。在下面的示例中,输入文本位于 <text></text> 中。

Prompt template for Anthropic Claude: """ Human: {{Instruction}} <text> {{Text}} <text> {{Question}} Assistant:"""
User prompt: Human: Read the following text inside <text></text> XML tags, and then answer the question: <text> On November 12, 2020, the selection of the Weeknd to headline the show was announced; marking the first time a Canadian solo artist headlined the Super Bowl halftime show. When asked about preparations for the show, the Weeknd stated, "We've been really focusing on dialing in on the fans at home and making performances a cinematic experience, and we want to do that with the Super Bowl." The performance featured a choir whose members were dressed in white and wore masks over their faces with glowing red eyes, and were standing within a backdrop of a neon cityscape. The performance opened with a white figure dressed the same as the choir being lowered into the backdrop where the choir was standing while singing “Call Out My Name". At this time, the Weeknd sat in a convertible against a skyline backdrop designed to resemble the Las Vegas Strip. For the next part of the performance, the backdrop then split open to reveal the Weeknd, who then performed "Starboy", followed by "The Hills". Next, performing the song "Can't Feel My Face", the Weeknd traveled through a labyrinth constructed behind the stage, joined by dancers dressed in red blazers and black neckties similar to his, but with their faces covered with bandages, in keeping with the aesthetic of his fourth studio album After Hours (2020). The dancers would wear these bandages throughout the performance. In the labyrinth section of the performance, camerawork was visually unsteady. The next songs performed were "I Feel It Coming", "Save Your Tears", and "Earned It". For the "Earned It" performance, the Weeknd was accompanied by violinists. For the finale of the show, the Weeknd took to the field of the stadium with his dancers to perform “Blinding Lights". He and the dancers entered the field by performing "House of Balloons / Glass Table Girls". The performance ended with an array of fireworks. </text> Based on the text above, what songs did the Weeknd play at the Super Bowl halftime show? Assistant:
Output: Based on the text, the songs the Weeknd played at the Super Bowl halftime show were: - Call Out My Name - Starboy - The Hills - Can't Feel My Face - I Feel It Coming - Save Your Tears - Earned It - Blinding Lights - House of Balloons / Glass Table Girls

(提示来源:超级碗 LV 半场秀上的维基百科,使用的模型:Anthropic Claude)

总结

对于总结任务,提示是一段文本,模型必须使用一段较短的内容进行响应,以捕获输入的要点。按长度(句子或段落数)指定输出对于此使用案例很有帮助。

Prompt template for Titan """The following is text from a {{Text Category}}: {{Text}} Summarize the {{Text Category}} in {{length of summary, e.g., “one sentence” or “one paragraph”}}"""
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 crowed. 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.
Output: Alessandro’s Brilliant Pizza is a fantastic restaurant in Seattle with a beautiful view over Puget Sound that offers decadent and delicious food.

(提示来源: AWS,使用的型号:Amazon Titan 文本)

在以下示例中,Anthropic Claude 用一句话总结给定的文本。要在提示中包含输入文本,请使用XML标记格式化文本:<text> {{text content}} </text>。XML在提示中使用是常见的做法 Anthropic Claude 模型。

Prompt template for Anthropic Claude: """ Human: Please read the text: <text> {{text context}} </text> Summarize the text in {{length of summary, e.g., “one sentence” or “one paragraph”}} Assistant:"""
User prompt: Human: Please read the text: <text> In game theory, the Nash equilibrium, named after the mathematician John Nash, is the most common way to define the solution of a non-cooperative game involving two or more players. In a Nash equilibrium, each player is assumed to know the equilibrium strategies of the other players, and no one has anything to gain by changing only one's own strategy. The principle of Nash equilibrium dates back to the time of Cournot, who in 1838 applied it to competing firms choosing outputs. </text> Summarize the text in one sentence. Assistant:
Output: The Nash equilibrium is a concept in game theory where each player has adopted a strategy that they have no incentive to deviate from given the other players' strategies.

(提示来源:关于纳什均衡的维基百科,使用的模型:Anthropic Claude)

文本生成

只要有提示,Bedrock 就可以LLMs在 Amazon 上回复一段与描述相匹配的原始文本。示例如下:

Prompt template for Titan """Please write a {{Text Category}} in the voice of {{Role}}."""
User prompt: Please write an email in the voice of a friend congratulating someone on a new job.
Output: Hey [Name], I just found out about your new job, and I'm so happy for you! Congratulations! You deserve this opportunity since you worked so hard to get it. I know you'll do great and make a positive impact on your team. I'm here to support you every step of the way. Wishing you all the best in this exciting new chapter of your life! Cheers, [Your Name]

(提示来源: AWS,使用的型号:Amazon Titan 文本)

对于文本生成使用案例,指定详细的任务要求很有帮助。在以下示例中,我们要求模型生成带感叹号的响应。

Prompt template for Titan """{{Task specification}} Please write a {{Text Category}} in the voice of {{Role}}."""
User prompt: Write text with exclamation points. Please write a formatted email in the voice of a friend congratulating someone on a new job.
Output: Hey [name]! I just saw the news and I am so, so happy for you! You deserve this position and this company with all your heart. I can't wait to see you soar and accomplish all the things you've been working towards. If anyone is deserving of a promotion, it's you! Congratulations again, friend! Love, [name]

(提示来源: AWS,使用的型号:Amazon Titan 文本)

在以下示例中,用户提示模型在生成文本时扮演特定人员的角色。请注意签名如何反映模型在响应中扮演的角色。

Prompt template for Titan """{{Role assumption}} {{Task description}} """
User input: My name is Jack. Help me write a note expressing my gratitude to my parents for taking my son (their grandson) to the zoo. I miss my parents so much.
Output: Dear Mom and Dad, I wanted to take a moment to express my heartfelt gratitude for taking my son to the zoo last weekend. It meant so much to me that you took the time to make memories with him, and I am so grateful for the love and support you have shown him. I miss you both so much, and I wish we could be together more often. But I know that you will always be there for me and my family, and I am so grateful to have you as my parents. Love, Jack

(提示来源: AWS,使用的型号:AI21 Labs Jurassic-2 Ultra v1)

代码生成

提示描述了用户期望模型生成的代码的任务或函数及编程语言。

Prompt template for Titan """Write a function in {{programming language}} to {{task or purpose}}""".
User input: Write a python function to download a s3 file to local disk.
Output: The following code can be used to download an s3 file to the local disk. ```Python import boto3 # Creates a boto3 client object s3 = boto3.client('s3') def download_file(bucket_name, object_key, file_path): try: # Downloads the s3 file to the specified file path s3.download_file(bucket_name, object_key, file_path) except Exception as e: print(e) # Specifies the values of bucket_name, object_key, and file_path bucket_name = "samplebucketname" object_key = "sampleobjectkey" file_path = "/samplefilepath" download_file(bucket_name, object_key, file_path) ``` The given code uses the download_file function to download an s3 file to the local disk. The download_file function takes the bucket name, object key, and file path as input parameters. The bucket name is the name of the s3 bucket where the file is located, the object key is the unique identifier of the file within the bucket, and the file path is the destination path on the local disk where the file will be downloaded. The function uses the download_file method of the s3 client to download the file from the specified bucket and write it to the specified file path.

(提示来源: AWS,使用的型号:Amazon Titan 文本)

Prompt template for Anthropic Claude """ Human: Write a function in {{programming language}} to {{task or purpose}} Assistant:"""
User prompt: Human: Write some python code that quickly approximates the square root of a number. Assistant:
Output: Here is a simple function to approximate the square root of a number using Newton's method: ```python def sqrt(n, iterations=10): x = n for i in range(iterations): x = (x + n/x) / 2 return x ``` To use it: ```python print(sqrt(25)) # 5.0 print(sqrt(15, iterations=20)) # 3.872983346207417 ``` This repeatedly takes the average of x and n/x to converge on the square root. More iterations produce a more accurate approximation. The advantage of this approach is it converges very quickly, so even just 10 iterations produces a decent estimate.

(提示来源: AWS,使用的型号:Anthropic Claude)

数学

输入描述了一个需要在某种程度上进行数学推理(可以是数字、逻辑、几何或其他方面)的问题。对于此类问题,要求模型通过在指令中添加短语(例如 Let’s think step by stepThink step by step to come up with the right answer.)以零敲碎打的方式解决问题会很有帮助

Prompt template for Titan """{{Math problem description}} Let’s think step by step."""
User prompt: A triangle has two angles of 70 degrees and 50 degrees. What is the third angle in degrees? Let’s think step by step.
Output: The sum of the three angles in a triangle is always 180 degrees. The two given angles are 70 degrees and 50 degrees. 70 + 50 = 120. Therefore, the third angle is 180 - 120 = 60 degrees. The third angle is 60 degrees.

(提示来源: AWS,使用的型号:Amazon Titan 文本)

以下示例还演示了如何要求模型逐步思考:

Prompt template for Titan """{{Math problem description}} Think step by step to come up with the right answer."""
User prompt: Lucy has 12 colorful marbles, and she wants to share them equally with her 4 friends. How many marbles will each friend receive? Think step-by-step to come up with the right answer.
Output: 1. Lucy has 12 marbles and wants to share them equally with her 4 friends, then each friend will receive 12 / 4 = 3 marbles. 2. Therefore, each friend will receive 3 marbles.

(提示来源: AWS,使用的型号:AI21 Labs Jurassic-2 Ultra v1)

推理/逻辑思维

对于复杂的推理任务或需要逻辑思维的问题,我们可以要求模型进行逻辑推断并解释其答案。

Prompt template for Titan and AI21 Labs Jurassic: """Question: {{question}} Please output the answer and then explain your answer:"""
User prompt: Question: Which word is the odd one out? A. accomplished B. good C. horrible D. outstanding Please output the answer and then explain your answer:
Output: The odd one out is C. horrible. The other three words describe positive qualities or achievements, whereas horrible is an negative adjective.

(提示来源: AWS,使用的型号:Amazon Titan 文本)

以下是另一个使用示例 Anthropic Claude 型号:

Prompt template for Anthropic Claude: """ Human: {{question}} Please provide the answer and show the reasoning. Assistant:"""
User prompt Human: The barber is the "one who shaves all those, and those only, who do not shave themselves". Does the barber shave himself? Why is this a paradox? Please provide the answer and show the reasoning. Assistant:
Output: This is an example of a paradox known as the Barber paradox. Here is an explanation: - The statement defines a barber who shaves all and only those people who do not shave themselves. - So if the barber shaves himself, he must shave all those who do not shave themselves, which includes himself. But the barber cannot shave himself as per the initial statement. - If the barber does not shave himself, then he would fit into the group of people who do not shave themselves, and so he must shave himself, according to the statement. But again this contradicts the initial statement. - So the barber cannot shave himself and also cannot not shave himself. This is self-contradictory based on the initial statement about the barber. - Therefore, the statement leads to a paradox where both possibilities (the barber shaving himself or not shaving himself) result in a contradiction. In summary, the paradox arises because the definition of the barber's behavior is self-contradictory when applied to the barber himself. This makes it impossible to determine if the barber shaves himself or not based on the given statement alone.

(提示来源:https://en.wikipedia.org/wiki/Barber_paradox,使用的模型:Anthropic Claude)

实体提取

用于从提供的输入问题中提取实体。从生成的文本中提取实体并将其放在XML标签中以供进一步处理。

Prompt template for Titan """You are an expert entity extractor from provided input question. You are responsible for extracting following entities: {{ list of entities}} Please follow below instructions while extracting the entity A, and reply in <entityA> </entityA> XML Tags: {{ entity A extraction instructions}} Please follow below instructions while extracting the entity B, and reply in <entityB> </entityB> XML Tags: {{ entity B extraction instructions}} Below are some examples: {{ some few shot examples showing model extracting entities from give input }}

(提示来源: AWS,使用的型号:Amazon Titan 文本 G1-Premier)

示例:

User: You are an expert entity extractor who extracts entities from provided input question. You are responsible for extracting following entities: name, location Please follow below instructions while extracting the Name, and reply in <name></name> XML Tags: - These entities include a specific name of a person, animal or a thing - Please extract only specific name name entities mentioned in the input query - DO NOT extract the general mention of name by terms of "name", "boy", "girl", "animal name", etc. Please follow below instructions while extracting the location, and reply in <location></location> XML Tags: - These entities include a specific location of a place, city, country or a town - Please extract only specific name location entities mentioned in the input query - DO NOT extract the general mention of location by terms of "location", "city", "country", "town", etc. If no name or location is found, please return the same input string as is. Below are some examples: input: How was Sarah's birthday party in Seattle, WA? output: How was <name>Sarah's</name> birthday party in <location>Seattle, WA</location>? input: Why did Joe's father go to the city? output: Why did <name>Joe's</name> father go to the city? input: What is the zipcode of Manhattan, New york city? output: What is the zipcode of <location>Manhattan,New york city<location>? input: Who is the mayor of San Francisco? Bot:

C hain-of-thought 推理

step-by-step 分析答案是如何得出的。事实核查并验证模型是如何得出答案的。

Prompt template for Titan """ {{Question}} {{ Instructions to Follow }} Think Step by Step and walk me through your thinking """

(提示来源: AWS,使用的型号:Amazon Titan 文本 G1-Premier)

示例:

User: If Jeff had 100 dollars, and he gave $20 to Sarah, and bought lottery tickets with another $20. With the lottery tickets he bought he won 35 dollars. Jeff then went to buy his lunch and spend 40 dollars in lunch. Lastly he made a donation to charity for $20. Stephen met with Jeff and wanted to lend some money from him for his taxi. How much maximum money can Jeff give to Stephen, given that he needs to save $10 for his ride back home?. Please do not answer immediately, think step by step and show me your thinking. Bot: