一句话定义:系统提示词是开发者在对话开始前就塞给模型的那段「总纲」,它规定模型是谁、能做什么、用什么口吻说话,优先级高于用户随后说的任何话。
打个比方:后厨墙上的规矩
把一次对话想象成进一家餐厅点菜。系统提示词是后厨墙上贴的「本店规矩」:只做川菜、不放香菜、客人问招牌菜就推荐水煮鱼。用户提示词则是客人的点单:「来个宫保鸡丁,别放花生。」后厨先看规矩,再看点单。规矩说本店只做川菜,客人却点寿司,端上来的多半是委婉拒绝,而不是照做。
技术上,现代对话模型把输入拆成带角色的消息列表:system、user、assistant。系统提示词放在最前面的 system 位置,模型在训练与对齐阶段被反复教导「system 里的内容优先级更高」。所以它不只是「你多说了一句」,而是换了一层身份。
和普通提示词的本质区别
| 维度 | 系统提示词 | 用户提示词 |
|---|---|---|
| 位置 | system 角色,会话最前 | user 角色,随对话追加 |
| 优先级 | 高,与用户指令冲突时通常优先 | 一般让位于系统指令 |
| 生命周期 | 整段会话(有时跨会话复用) | 通常只影响当前这一轮 |
| 谁写 | 应用开发者、产品方 | 终端用户 |
| 管什么 | 身份、边界、语气、输出格式、工具用法 | 这一轮具体要做什么 |
差异可以概括成一句话:普通提示词回答「这次要什么」,系统提示词回答「你一直是谁」。所以系统提示词才是优先级最高的那条「人设」——用户能改的是任务,改不了的是身份。
对两类人的实际意义
对从业者:你写的不是「提示」,而是产品的一部分。用户在界面上看不到它,但会感觉到它——回复的腔调、拒绝的方式、格式的稳定性都源自这里。建议把它当配置规格来维护:写清角色定位、能力边界、输出格式、遇到不确定时怎么办。同时保持清醒:系统提示词是行为约束,不是安全边界。用户会用各种话术诱导模型越界,真正的权限控制得落在工具调用、数据访问、输出过滤这些代码层面。
对普通职场人:不必会写,但知道它存在很有用。同一个模型在两个产品里表现迥异——一个严肃一个俏皮,一个爱追问一个直接给答案——差别往往不在模型本身,而在那段你看不见的设定。回答风格不合口味时,先意识到可能是产品替你定了人设,再去调整自己这一轮的提问方式。
各家模型对 system 消息的支持程度和写法并不完全一致,具体以官方文档为准。
