新一代提示词工程 · 知识全景图面向有工程基础、提示词工程尚未系统化的工程师
显示设置

负向提示的失效

Failure of Negative Prompting

PE-A-05内容已写满G06安全与鲁棒性第 17 层

负向提示指令遵循改写

一句话结论

「不要做 X」不是可靠的控制手段:禁令会把被禁内容带进上下文,又缺少可判定的判定标准。处置办法是做一次负向指令清查,把每条约束改写成期望行为的正向描述并核对原意覆盖,无法正向化的改写为可判定的处置规则并配输出校验。不靠加强语气来补救,因为强调式措辞在新代模型上常反而降低遵循度。

本页结构(可跳转)

A 原提示「不要提到 X」 B 机制:提示中的词本身激活相关表征 ⇒ X 被放进上下文,可及性反而提高 ⇒ 否定词在后续 token 预测中提高而非降低相关内容概率(模型规模越小越明显) A->B C 改法:描述期望行为而不是禁止行为 与其说「不要用某类格式」 不如说「回答应由怎样的结构组成」 B->C 改写 D 无法正向化的约束 (例如必须拒绝某类请求) ⇒ 改为可判定的处置规则并配合输出校验 C->D N 清查纪律 把每条「不要」改写为对应的正向描述 并检查改写后是否仍覆盖原意 负向清单只作兜底,不承担主要行为控制职责 C->N
改写对照图:负向提示「不要做 X」反而激活 X 的机制、改写成期望行为的前后对照,以及无法正向化时的可判定处置规则。 (本站自制)

01为什么需要它

「不要做某件事」这类约束在行为控制上不可靠:提示里出现的否定短语会把被禁的内容一并写进上下文,官方口径因此要求把约束改写成期望行为的描述。

适用边界

负向表述在提示里仍有一席位置:它可以作为兜底的负面清单,或作为正向描述之外的第二次提醒;它不该承担主要的行为控制职责,也不该成为唯一防线。另有一处须标注:把负向指令改写为正向指令有明确的厂商一手依据,但这不等于业界已经给出统一口径,其他厂商未必逐字表述同一命题;把这条结论推广到所有模型、所有任务之前,应先在自己的评测集上复测。

02机制说明

负向提示的失效可以从两条线索看懂。

03何时该用 / 何时不该用

按场景对照:先看条件,再看该怎么做。
类别场景 / 条件(总结)具体做法(细节)
该用提示或规则文件里出现「不要做 X」类约束时把它改写成期望行为的正向描述,并逐条核对是否仍覆盖原意。
该用约束无法正向化时改写为可判定的处置规则,写明触发条件与输出形态,并加输出校验。
该用同一份提示里负向指令成堆时先做一次清查与归并,把重复的禁止语收成少数几条正向要求。
不该用把负向清单当作主要控制手段它的可靠性低于正向描述,且无法被机检覆盖。
不该用只堆强调词来加固指令全大写与严厉措辞在新一代模型上反而可能降低遵循度。

04实验台

  1. shellbash

    查看代码
    grep -nE "不要|禁止|不可|严禁|切勿" prompts/*.md

    预期观察:输出提示文件里全部负向指令的文件名与行号,作为改写清单的起点;无输出表示这些文件里已没有负向指令。

  2. filepython

    查看代码
    import re
    neg = re.compile("不要|禁止|不可|严禁|切勿")
    total = hits = 0
    for ln in open("prompts/system.md", encoding="utf-8"):
        if neg.search(ln):
            total += 1
            if re.search("应当|必须输出|格式为", ln):
                hits += 1
    print("负向指令 %d 条,已配正向改写 %d 条" % (total, hits))

    预期观察:打印负向指令总条数与其中已同时给出正向写法的条数;已配稿数等于总条数说明改写清查完成,否则差额须逐条处理。

05证据

主张另一家厂商的官方提示指南同样以「精确直接、避免不必要的说服性语言」表达相近方向,可作旁证但非同一命题。

分级official

来源S-0018 https://ai.google.dev/gemini-api/docs/prompting-strategies

原文

展开原文关键句
Be precise and direct ... Avoid unnecessary or overly persuasive language.

06术语

术语负向提示的失效 Failure of Negative Prompting

界定「不要做 X」形式的指令在行为控制上不可靠,因为否定词在后续 token 预测中会提高而非降低相关内容的出现概率;应改写为正向指令。

相关节点—

术语指令的具体性与可验证性 Instruction Specificity and Verifiability

界定正向改写要落到写得出的程度——点名适用的触发情形、说明输出形态与违规时的处置,使结果能被自动化校验,而不只是一句更客气的禁止语。由此可以说清负向约束为何难做兜底:缺少可判定的判定标准,改写后仍无法进入校验环节。

相关节点—

术语过拒 Over-refusal

界定把边界类约束改写为处置规则时容易收紧过度,正常请求被一并拒绝;该现象与拦截率构成安全—可用性权衡,须双向度量。

相关节点—

07失效模式

08在本站知识结构中的位置

所属分组
G06安全与鲁棒性
依赖深度
第 17 层(同层节点彼此无先后约束)
前置PE-A-04→PE-A-05 本节点→后继PE-A-06

在 交互全景图 中定位本节点。