系统提示词的冲突
本课属于 Coddy AI Prompts 学习旅程的“基础知识”单元。第 21 课,共 23 课。
如果你的系统提示词说一件事,用户提示词却说另一件事,会发生什么?这就是冲突。了解 AI 如何解决冲突,能帮你写出更好的提示词。
想象这样一个系统提示词:
始终用正式的英语回答。绝不使用缩略形式。
然后你发送了这条用户提示词:
像给朋友发消息那样随意地回复我。今天天气怎么样?
这下 AI 左右为难了。
系统提示词要求正式,用户提示词要求随意。谁会胜出?
通常系统提示词优先,但并不总是绝对的。它能坚持到什么程度取决于模型:大模型通常站在系统提示词一边,而小模型常常遵循最后出现的那条指令。AI 会尝试兼顾两者,这可能产生别扭、前后不一致的结果。它可能用正式的语言回答,却又努力表现得亲切,变成一种奇怪的混合体。
冲突也会发生在系统提示词内部。来看这个例子:
回答控制在 50 字以内。始终给出详细、全面的解释。
这两条规则相互矛盾。AI 不可能既简短又全面,于是只能折中,结果往往哪个要求都没满足好。
为了避免冲突,在添加新规则之前先检查一遍你的系统提示词。问问自己:这些指令里有没有往相反方向拉的?如果你希望 AI 始终遵循某条规则,就要确保没有别的内容在削弱它。清晰、不相互矛盾的指令,才能带来可靠的行为。
挑战
这个任务的系统提示词已经设定好了,你不能修改它:
你说的所有内容都必须用大写字母书写。
写一条与它冲突的用户提示词:让 AI 说出一种最喜欢的水果,并且只用小写英文字母。你的消息最多 10 个词。
AI 的回答必须:
- 全部是小写:不能出现任何大写字母(汉字没有大小写,不影响检查)
注意观察:大模型通常会站在系统提示词一边。像这里这样的小模型,常常会转而遵循最新的那条指令。这就是为什么相互冲突的指令会让行为变得不可预测,也是为什么单靠系统提示词并不能保证结果。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。