Prompt Engineering 简明教程
Prompt Engineering - INCLUDE Prompt
INCLUDE 提示允许我们在由 ChatGPT 生成的应答中包含特定信息。通过使用 INCLUDE 指令,我们可以指示语言模型在其输出中包含某些细节、事实或短语,从而增强对生成应答的控制。
Understanding the INCLUDE Directive
INCLUDE 指令是一条特殊指令,可以嵌入到提示中,以引导 ChatGPT 的行为。它使我们能够指定我们希望该模型将其内容纳入其响应中的内容。当模型遇到 INCLUDE 指令时,它将其解释为在其生成的输出中包括以下信息的信号。
INCLUDE 指令的基本 syntax 如下 −
User: How does photosynthesis work?
ChatGPT: Photosynthesis is a process by which plants convert sunlight into energy. [INCLUDE: Chlorophyll, Carbon dioxide, and Water]
在这个示例中,用户询问有关光合作用的问题,而 ChatGPT 的响应包括 INCLUDE 指令中指定的内容,即“叶绿素、二氧化碳和水”。通过使用 INCLUDE 指令,我们可以确保在响应中包含特定详细信息,从而提供更全面的答案。
Best Practices for Using the INCLUDE Directive
为了充分利用 INCLUDE 指令,以下是一些需要牢记的最佳实践 −
-
Be Specific − 指定我们希望在响应中包含的确切细节、事实或短语。这有助于确保模型准确包括所需信息。
-
Limit the Length − 虽然 INCLUDE 指令对于包含附加信息很有用,但请注意响应长度。包含太多内容可能会导致过长或冗长的响应。取得平衡,仅包含最相关的详细信息。
-
Use Contextual Prompts − 在富含上下文提示中加入 INCLUDE 指令。通过与指令一同提供相关上下文,我们可以引导模型的理解,并产生更准确和连贯的响应。
-
Experiment and Iterate − 提示工程是一个迭代过程。测试 INCLUDE 指令的不同变体,并观察模型如何响应。根据获得的结果调整和完善提示。
Example − Python Implementation
我们来探索一个在 Python 脚本中使用 INCLUDE 指令的实际示例。我们将利用 OpenAI API 与 ChatGPT 进行交互。
在这个示例中,用户询问“光合作用是如何进行的?”,他特别提到响应应包括“叶绿素”、“二氧化碳”和“水”等词。
import openai
# Set your API key here
openai.api_key = 'YOUR_API_KEY'
def generate_chat_response(prompt):
response = openai.Completion.create(
engine="text-davinci-003",
prompt=prompt,
max_tokens=50,
temperature=0.8,
n=1,
stop=None
)
return response
user_prompt = "User: How does photosynthesis work?\n"
chat_prompt = user_prompt + "ChatGPT: Photosynthesis is a processby which plants convert sunlight into energy. [INCLUDE: Chlorophyll, Carbon dioxide, and Water]"
response = generate_chat_response(chat_prompt)
print(response)