一句话定义:提示词的位置效应(Position Effect),指同一条指令写在提示词的不同位置——开头、中间还是结尾——模型遵守它的程度和输出质量经常不一样。
为什么会这样
大模型是逐字往外写的,每写一个词,都要回头"看"一遍你给的上下文。这个"看"不是平均用力:靠近当前生成位置的文字,往往影响更大;而埋在超长上下文中间的内容,容易被稀释。业界常说的"中间遗忘"(lost in the middle)讲的就是这件事——关键信息放在长文档中段,模型答对的概率明显低于放在开头或结尾。
打个比方:开会布置任务。开场那句"今天的目标是把方案定下来",所有人都记住了,后面讨论都围着它转;中间插播的报销流程,最容易走神漏掉;散会前那句"对了,周报今天交",执行力往往最强,因为它是最后听到的。同一句话,位置不同,效果不同。
还有一层原因:模型见过的指令,大多出现在对话开头(系统提示、任务描述)。所以开头位置的文字,更容易被它识别为"这是规矩";结尾位置的文字,因为紧挨着要生成的内容,更像"下一个动作的即时提醒"。
和相邻概念的区别
| 概念 | 关心的问题 |
|---|---|
| 位置效应 | 同一句话,放哪儿更管用 |
| 上下文长度 | 模型能读进多少字 |
| 指令冲突 | 两条要求互相打架,听谁的 |
| 提示词结构 | 整体怎么组织(角色、任务、示例、格式) |
位置效应不是"读不完",而是"读到了,但权重不同"。它也不是指令冲突——话只有一句,只是效果会浮动。
实际怎么用
- 关键约束两头放:开头当规矩写("必须用中文,不要用列表"),结尾当检查项复述一遍("再确认:中文,纯段落")。这种"三明治"写法在长提示里最稳。
- 别把唯一一份硬要求埋在中间:写长提示时,第三段中间塞一句"金额一律保留两位小数",很容易被忽略。
- 长文档问答换个顺序:与其把问题放在文档前面,不如放在文档后面,或者前后各写一次。
- 格式要求靠后:输出格式、字数、语气这类"生成时立刻要用"的约束,放在结尾通常更灵。
- 位置效应是概率性的,不是开关。它受模型、任务、上下文长度影响,具体表现以各家官方文档和你的实测为准,别把某次经验当定律。
对做产品的人,这意味着提示词模板的排版是要设计的,不只是内容;对普通职场人,这意味着让 AI 帮忙时,把"最重要的那句话"再说一遍在最后,通常比写得更长更管用。
