OpenAI官方提供撰写提示词最佳实践
在使用GPT类大模型时,撰写有效的提示词(Prompt)是确保生成内容质量的关键。OpenAI官方提供了一些提示词的最佳实践指南,帮助用户优化提示词,使生成的内容更符合预期。在本文中,我们将逐步介绍这些最佳实践,并通过具体示例来说明如何撰写更有效的提示词。
ChatGPT中文网https://chat.aibox365.cn
一、如何设计提示词
由于OpenAI模型的训练方式存在特定的模式,因此一些提示词的格式效果更佳。官方指南通常是开始学习如何设计提示词的最佳选择。尽管如此,我们也鼓励大家探索不同的提示词格式,以满足不同任务的需求。
二、提示词设计的通用准则和示例
注意: 文中 {text input here}
表示需要替换为具体的内容。
1. 使用最新的模型
为了获得最佳效果,我们通常建议使用最新、功能最强大的模型。最新的模型在提示词设计上更具优势,响应效果更好。
2. 在提示词开头加入说明,并使用 ###
或 """
分隔说明和内容
- 较差的示例 ❌ :
Summarize the text below as a bullet point list of the most important points.
{text input here}
复制
- 更佳的示例 ✅ :
Summarize the text below as a bullet point list of the most important points.
Text: """
{text input here}
"""
复制
这种方式可以让模型更清晰地理解需要完成的任务,并减少内容混淆。
3. 明确描述所需的上下文、结果、长度、格式、风格等细节
提供具体的要求可以使生成的内容更贴近预期。
- 较差的示例 ❌ :
Write a poem about OpenAI.
复制
- 更佳的示例 ✅ :
Write a short inspiring poem about OpenAI, focusing on the recent DALL-E product launch (DALL-E is a text-to-image ML model) in the style of a {famous poet}.
复制
这种方式不仅让模型清楚地理解内容的主题,还帮助它把握写作的风格和长度。
4. 通过示例明确所需的输出格式
模型通常对具体的输出格式响应更佳,示例展示的格式可以有效帮助模型生成符合要求的内容。
- 较差的示例 ❌ :
Extract the entities mentioned in the text below. Extract the following 4 entity types: company names, people names, specific topics and themes.
Text: {text}
复制
- 更佳的示例 ✅ :
Extract the important entities mentioned in the text below. First extract all company names, then extract all people names, then extract specific topics which fit the content and finally extract general overarching themes.
Desired format:
Company names: <comma_separated_list_of_company_names>
People names: -||-
Specific topics: -||-
General themes: -||-
Text: {text}
复制
5. 依次尝试零示例、少示例,如果都不理想,再进行微调
零示例(Zero-shot) :
Extract keywords from the below text.
Text: {text}
Keywords:
复制
少示例(Few-shot) - 提供几个示例:
Extract keywords from the corresponding texts below.
Text 1: Stripe provides APIs that web developers can use to integrate payment processing into their websites and mobile applications.
Keywords 1: Stripe, payment processing, APIs, web developers, websites, mobile applications
##
Text 2: OpenAI has trained cutting-edge language models that are very good at understanding and generating text. Our API provides access to these models and can be used to solve virtually any task that involves processing language.
Keywords 2: OpenAI, language models, text processing, API.
##
Text 3: {text}
Keywords 3:
复制
微调(Fine-tune)需要更复杂的过程,可参考微调最佳实践以了解详细操作。
6. 减少不明确或模糊的描述
- 较差的示例 ❌ :
The description for this product should be fairly short, a few sentences only, and not too much more.
复制
- 更佳的示例 ✅ :
Use a 3 to 5 sentence paragraph to describe this product.
复制
这种明确的要求可以帮助模型更好地控制生成内容的长度。
7. 不仅要指出“不要做什么”,还要说明“该做什么”
- 较差的示例 ❌ :
The following is a conversation between an Agent and a Customer. DO NOT ASK USERNAME OR PASSWORD. DO NOT REPEAT.
Customer: I can’t log in to my account.
Agent:
复制
- 更佳的示例 ✅ :
The following is a conversation between an Agent and a Customer. The agent will attempt to diagnose the problem and suggest a solution, whilst refraining from asking any questions related to PII. Instead of asking for PII, such as username or password, refer the user to the help article www.samplewebsite.com/help/faq.
Customer: I can’t log in to my account.
Agent:
复制
这种方法不仅限制了不该出现的行为,还为模型指明了更合适的操作方式。
8. 针对代码生成 - 使用“引导词”来指引模型生成特定模式
- 较差的示例 ❌ :
# Write a simple python function that
# 1. Ask me for a number in mile
# 2. It converts miles to kilometers
复制
python
- 更佳的示例 ✅ :
# Write a simple python function that
# 1. Ask me for a number in mile
# 2. It converts miles to kilometers
import
复制
python
在代码生成中,像“import”这样的引导词可以有效帮助模型判断生成内容的编程语言,同理,“SELECT”可以提示生成SQL语句。
以上便是OpenAI官方推荐的提示词最佳实践。遵循这些准则,合理设计提示词,不仅能提高生成内容的质量,还能更精准地控制输出的风格和格式,提升整体的使用体验。希望这些示例和建议能够帮助大家更好地利用OpenAI的强大模型,创造出符合需求的高质量内容。