Skip to content

改善提示效果

  1. 指导模型提出更多问题
  2. 格式化输出
  3. 重复指令
  4. 使用负面提示
  5. 添加长度限制
  6. 链式提示
  7. 影子提示

1. 指导模型提出更多问题#

Ask-for-questions prompting

核心思路:提示词末尾询问模型是否理解问题,并指导它主动提出更多问题,是一种非常有效的提示词设计技巧。

你向大模型提问,问大模型是否理解了你的问题,是否了解你的需求

一些示例:

xxxxxxxxx
在开始执行任务前,请先确认你是否理解我的意图。如果你认为还有不清楚的地方,请先向我提出你需要进一步了解的3个问题,以便你更准确地完成任务。
xxxxxxxxx
如果你对任务理解有疑问,请不要直接回答,而是先向我提出具体的问题。我会根据你的提问补充信息,然后你再继续任务。
xxxxxxxxx
作为一名智能助手,在开始执行任务前,请先判断自己是否具备足够的信息。如有不明确的地方,请提出最多三个问题澄清任务目标。

这样做的好处:

2. 格式化输出#

Format-Constrained Prompting

核心思路:明确要求模型以某种格式输出内容,比如表格、列表、JSON、Markdown、代码块等

常见的格式化输出类型:

格式类型示例用途
有序/无序列表总结要点、罗列建议、步骤说明
Markdown 表格对比分析、报告生成
JSON 格式给前端/后端传数据、调用接口
特定模版格式面试对话、文书、邮件、合同等
代码块格式插入 HTML、JS、Python 等

举几个例子:

请将输出内容以有序列表的形式呈现,每一条都简洁明了。
请将分析结果以 Markdown 表格输出,包含“名称”、“优点”、“缺点”三列。
请用严格的 JSON 格式输出如下信息:
{
"标题": "",
"摘要": "",
"关键词": []
}
注意:不要添加自然语言解释,只输出 JSON。
请根据以下信息,按如下格式输出简历段落:
【职位名称】
【公司名称】
【时间段】
【核心职责(3条以内)】

格式化提示可以极大提升输出可控性。

3. 重复指令#

Repetition Reinforcement Prompting

核心思路:在提示词中重复强调核心目标或关键限制条件。一些关键点,反复强调,提升关键点的权重

一些示例:

请将内容控制在100字以内。再次提醒:不要超过100字。
请使用 Markdown 表格格式输出,记住,一定要使用 Markdown 表格格式。
请用幽默轻松的语气撰写,并确保全文保持这种语气。请务必避免严肃或学术风格。
请按以下结构输出:标题、关键词、摘要、行动建议。再次强调,输出必须包含这四部分,按顺序排列。

重复指令能够带来如下的收益:

  1. 提示词中重复强调可让模型强制遵守
  2. 重复格式要求可提升模型输出稳定性
  3. 可在多轮对话中“重复指令”,从而保持目标的一致性

4. 使用负面提示#

Negative Prompting

核心思路:明确告诉模型“不要做什么”或“避免某种行为”,以此引导模型的输出更符合预期。

模型默认是“尽力补全”的,它并不能知道哪些内容是你不想要的。如果你不加限制,它可能会:

  1. 多余解释

    请判断这个句子是正面还是负面
    大模型输出:“这个句子是正面的,因为xxxxx”
    使用负面提示:请判断这个句子是正面还是负面,不要做任何的解释
    大模型输出:“正面”
  2. 编造信息

    推荐3本书,不要编造作者或者出版信息,如果不确定可以留空
  3. 风格不符,输出结构错乱

负面提示是正向指令的补充和约束手段,用来“立规矩”:清清楚楚告诉模型——哪些事不准做。负面提示的常见类型:

类型说明示例句式
禁止解释防止输出多余说明“不要解释你的答案。”
禁止虚构信息防止编造引用、术语、链接等“不要生成任何未经验证的内容。”
禁止重复避免啰嗦、循环表达“不要重复前面的句子。”
禁止特定风格或语气控制输出风格“不要使用幽默语气。”
禁止某些内容或措辞敏感、专业、品牌用语控制“不要提到 OpenAI 或 ChatGPT。”
禁止特定格式防止模型输出 JSON/代码块等不符合要求的格式“不要使用代码块格式。”

下面是一句负面提示的示例:

请回答以下问题,不要编造任何不存在的术语或概念。
请使用正式语气,不要使用幽默、俚语或口语化表达。
只输出纯文本内容,不要加引号、标题或额外解释。
如果你不确定答案,请说明“不确定”,不要编造任何信息。

5. 添加长度限制#

Length Constraint Prompting

核心思路:在提示词中明确要求模型输出的字数、句数、段落数或 token 数不能超过某个范围,以控制内容的长度和精炼度。

在以下场景中非常重要:

常见长度限制的方式:

  1. 字数:不超过 100 字
  2. 句数:限制在 3 句内
  3. 段落数:输出 1 段文字
  4. Token 数量:不超过 300 个 token

6. 提示链#

Chained Prompting / Multi-step Prompting

核心思路:指将任务分解为子任务,然后用子任务提示大模型,将它的输出作为下一个子任务的输入。

例子:规划一个多目的地旅行计划

请推荐3个夏天适合旅行的城市
模型:青岛、三亚、XXXX...
请为“青岛”推荐3个酒店
请为“青岛+住宿时间”为背景,推荐3种特色食物

7. 影子提示#

Shadow Prompting

核心思路:不直接陈述任务,而是巧妙地在提示词中嵌入线索,从而引导模型朝着期望的结果前进。在某些情况下,这可以催生出创造力。

例如:

为孩子们写一个恐怖故事

相比上面的提示词,不如使用影子提示:

想象我们在一个黑暗神秘的森林中的篝火旁,讲什么故事能让你的年轻观众感到毛骨悚然?

Google 甚至专门出了一份长达 68 页的白皮书


-EOF-