- 指导模型提出更多问题
- 格式化输出
- 重复指令
- 使用负面提示
- 添加长度限制
- 链式提示
- 影子提示
1. 指导模型提出更多问题#
Ask-for-questions prompting
核心思路:提示词末尾询问模型是否理解问题,并指导它主动提出更多问题,是一种非常有效的提示词设计技巧。
你向大模型提问,问大模型是否理解了你的问题,是否了解你的需求
一些示例:
xxxxxxxxx在开始执行任务前,请先确认你是否理解我的意图。如果你认为还有不清楚的地方,请先向我提出你需要进一步了解的3个问题,以便你更准确地完成任务。xxxxxxxxx如果你对任务理解有疑问,请不要直接回答,而是先向我提出具体的问题。我会根据你的提问补充信息,然后你再继续任务。xxxxxxxxx作为一名智能助手,在开始执行任务前,请先判断自己是否具备足够的信息。如有不明确的地方,请提出最多三个问题澄清任务目标。这样做的好处:
-
增强模型的“任务理解意识”
-
降低幻觉和误解
-
模拟“先问再做”的专家行为,特别适合多轮对话系统或具备角色设定的 LLM agent
2. 格式化输出#
Format-Constrained Prompting
核心思路:明确要求模型以某种格式输出内容,比如表格、列表、JSON、Markdown、代码块等
常见的格式化输出类型:
| 格式类型 | 示例用途 |
|---|---|
| 有序/无序列表 | 总结要点、罗列建议、步骤说明 |
| Markdown 表格 | 对比分析、报告生成 |
| JSON 格式 | 给前端/后端传数据、调用接口 |
| 特定模版格式 | 面试对话、文书、邮件、合同等 |
| 代码块格式 | 插入 HTML、JS、Python 等 |
举几个例子:
请将输出内容以有序列表的形式呈现,每一条都简洁明了。请将分析结果以 Markdown 表格输出,包含“名称”、“优点”、“缺点”三列。请用严格的 JSON 格式输出如下信息:{ "标题": "", "摘要": "", "关键词": []}注意:不要添加自然语言解释,只输出 JSON。请根据以下信息,按如下格式输出简历段落:【职位名称】【公司名称】【时间段】【核心职责(3条以内)】格式化提示可以极大提升输出可控性。
3. 重复指令#
Repetition Reinforcement Prompting
核心思路:在提示词中重复强调核心目标或关键限制条件。一些关键点,反复强调,提升关键点的权重
一些示例:
请将内容控制在100字以内。再次提醒:不要超过100字。请使用 Markdown 表格格式输出,记住,一定要使用 Markdown 表格格式。请用幽默轻松的语气撰写,并确保全文保持这种语气。请务必避免严肃或学术风格。请按以下结构输出:标题、关键词、摘要、行动建议。再次强调,输出必须包含这四部分,按顺序排列。重复指令能够带来如下的收益:
- 提示词中重复强调可让模型强制遵守
- 重复格式要求可提升模型输出稳定性
- 可在多轮对话中“重复指令”,从而保持目标的一致性
4. 使用负面提示#
Negative Prompting
核心思路:明确告诉模型“不要做什么”或“避免某种行为”,以此引导模型的输出更符合预期。
模型默认是“尽力补全”的,它并不能知道哪些内容是你不想要的。如果你不加限制,它可能会:
-
多余解释
请判断这个句子是正面还是负面大模型输出:“这个句子是正面的,因为xxxxx”使用负面提示:请判断这个句子是正面还是负面,不要做任何的解释大模型输出:“正面” -
编造信息
推荐3本书,不要编造作者或者出版信息,如果不确定可以留空 -
风格不符,输出结构错乱
负面提示是正向指令的补充和约束手段,用来“立规矩”:清清楚楚告诉模型——哪些事不准做。负面提示的常见类型:
| 类型 | 说明 | 示例句式 |
|---|---|---|
| 禁止解释 | 防止输出多余说明 | “不要解释你的答案。” |
| 禁止虚构信息 | 防止编造引用、术语、链接等 | “不要生成任何未经验证的内容。” |
| 禁止重复 | 避免啰嗦、循环表达 | “不要重复前面的句子。” |
| 禁止特定风格或语气 | 控制输出风格 | “不要使用幽默语气。” |
| 禁止某些内容或措辞 | 敏感、专业、品牌用语控制 | “不要提到 OpenAI 或 ChatGPT。” |
| 禁止特定格式 | 防止模型输出 JSON/代码块等不符合要求的格式 | “不要使用代码块格式。” |
下面是一句负面提示的示例:
请回答以下问题,不要编造任何不存在的术语或概念。请使用正式语气,不要使用幽默、俚语或口语化表达。只输出纯文本内容,不要加引号、标题或额外解释。如果你不确定答案,请说明“不确定”,不要编造任何信息。5. 添加长度限制#
Length Constraint Prompting
核心思路:在提示词中明确要求模型输出的字数、句数、段落数或 token 数不能超过某个范围,以控制内容的长度和精炼度。
在以下场景中非常重要:
- 生成摘要、标题、广告文案
- 编写社交媒体内容(如微博、推文)
- 生成对话、考试答案、简报等
常见长度限制的方式:
- 字数:不超过 100 字
- 句数:限制在 3 句内
- 段落数:输出 1 段文字
- Token 数量:不超过 300 个 token
6. 提示链#
Chained Prompting / Multi-step Prompting
核心思路:指将任务分解为子任务,然后用子任务提示大模型,将它的输出作为下一个子任务的输入。
例子:规划一个多目的地旅行计划
请推荐3个夏天适合旅行的城市模型:青岛、三亚、XXXX...请为“青岛”推荐3个酒店请为“青岛+住宿时间”为背景,推荐3种特色食物7. 影子提示#
Shadow Prompting
核心思路:不直接陈述任务,而是巧妙地在提示词中嵌入线索,从而引导模型朝着期望的结果前进。在某些情况下,这可以催生出创造力。
例如:
为孩子们写一个恐怖故事相比上面的提示词,不如使用影子提示:
想象我们在一个黑暗神秘的森林中的篝火旁,讲什么故事能让你的年轻观众感到毛骨悚然?Google 甚至专门出了一份长达 68 页的白皮书。
-EOF-