Prompt Engineering 简明教程
Prompt Engineering - COLUMN Prompt
COLUMN 提示是一个强大的技术,它使我们能够对 ChatGPT 生成的响应进行结构化和格式化。通过使用 COLUMN 指令,我们可以创建结构化输出、以表格形式组织信息,并以清晰有序的方式呈现模型的响应。
Understanding the COLUMN Directive
COLUMN 指令允许我们定义列,并在生成的响应中设置这些列中的内容的格式。当我们要以表格格式呈现信息或者我们需要以特定方式组织输出时,这尤其有用。
COLUMN 指令通过指定列标题以及每列中的相应内容起作用。
COLUMN 指令的基本 syntax 如下所示 −
User: Can you compare the features of smartphones X and Y?
ChatGPT: Sure! Here's a comparison of the features:
------------------------------------------------------
| **Features** | **Smartphone X** | **Smartphone Y** |
|--------------|------------------|------------------|
| Camera | 12 MP | 16 MP |
| Battery | 3000 mAh | 4000 mAh |
| Storage | 64 GB | 128 GB |
------------------------------------------------------
在这个示例中,用户要求比较智能手机 X 和 Y。来自 ChatGPT 的响应包括使用 COLUMN 指令创建的比较表格。表格包括列标题(“特性”、“智能手机 X”、“智能手机 Y”)和每列中的相应内容。
Best Practices for Using the COLUMN Directive
为了充分利用 COLUMN 指令,请考虑以下最佳实践 −
-
Define Column Headers − 明确定义每一列的标题,以便提供背景和促进理解。列标题用作每列中呈现的信息的标签。
-
Organize Content − 确保每一列中的内容正确对齐。保持一致的格式和对齐方式,以增强可读性。
-
Limit Column Width − 考虑每一列的宽度,以避免表格过宽。窄一点的表格更易于阅读,尤其是当信息很长或者有很多列时。
Use Markdown or ASCII Tables − COLUMN 指令可以与 Markdown 或 ASCII 表格格式化相结合来创建视觉上吸引人、结构完善的表格。Markdown 或 ASCII 表格生成器可以用于自动为我们设置表格格式。
Example Application − Python Implementation
我们来看一个使用 COLUMN 指令与 ChatGPT 交互的 Python 脚本的实际示例。
在这个示例中,我们定义了一个 generate_chat_response() 函数,它接受一个提示并使用 OpenAI API 使用 ChatGPT 生成响应。
chat_prompt 变量包含用户的提示和 ChatGPT 响应,包括使用 COLUMN 指令设置格式的比较表格。
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=100,
temperature=0.7,
n=1,
stop=None
)
return response
user_prompt = "User: Can you compare the features of smartphones X and Y?\n"
chat_prompt = user_prompt + "ChatGPT: Sure! Here's a comparison of the features:\n\n| **Features** | **Smartphone X** | **Smartphone Y** "
response = generate_chat_response(chat_prompt)
print(response)