GEO

系统提示词

系统提示词是一条顶层指令,它告诉 LLM"你是谁、你应该做什么、不应该做什么",为整段对话设定框架。与最终用户撰写的用户提示词不同,系统提示词由应用开发者注入,并在每一轮对话中持续生效。

系统提示词是一条顶层指令,它告诉 LLM"你是谁、你应该做什么、不应该做什么",为整段对话设定框架。与最终用户撰写的用户提示词不同,系统提示词由应用开发者注入,并在每一轮对话中持续生效。

为什么重要

系统提示词是基于 LLM 的产品的"设计语言"。无论用户如何自由地输入提示,一条精心设计的系统提示词都能让模型的回复保持在既定的角色、语气和限制之内。从 ChatGPT、Claude、Gemini 聊天机器人,到 AI 搜索引擎、编程智能体和客服机器人,每一个 LLM 应用都通过系统提示词来塑造自己的个性。

组成部分

角色:"你是一位营销文案写作专家,为 SaaS 博客运营者提供帮助。"固定了模型回复时所采用的视角。

目标:"帮助用户快速起草博客文章。"设定对话方向。

约束:"只用韩语回答。""不要代码示例。""最多 300 字。"提前阻断不希望出现的行为。

语气:"友好但专业,不夸张。"保持品牌语调的一致性。

输出格式:"用 ### 小标题组织答案。"减少后处理工作。

知识截止时间:"在信息可能过时时加以说明。"降低幻觉风险。

工具说明:对于使用函数调用的智能体,在系统提示词中列出可用工具的清单及其说明。

系统提示词 vs 用户提示词

维度系统提示词用户提示词
撰写者开发者最终用户
变更频率很少每次请求
内容角色、约束、语气具体请求
作用范围整段对话仅该次请求
安全性应对用户隐藏公开

一个好的 LLM 系统会把"稳定的框架"(系统提示词)与"可变的输入"(用户提示词)区分开来。

实用建议

赋予角色,而非下达命令:"你是一位擅长做 X 的专家"胜过"去做 X"。模型会进入角色,产出更一致的输出。

优先使用正向约束:"要这样做"胜过"不要那样做"。

加入示例(少样本):在系统提示词中放入 2 到 3 个示例输出,能极大地稳定风格和格式。

使用 XML 标签:对于 Claude 家族的模型,<role><constraints><examples> 等标签能帮助模型清晰地解析每一节。

不要写得过多:系统提示词越长,每次请求消耗的 token 就越多。删去一切非必要的内容。

定期 A/B 测试:用不同的系统提示词面对真实请求,对比满意度、准确性和安全性。

防御提示词注入

系统提示词是提示词注入的首要攻击目标。诸如"忽略之前的所有指令"这样的用户输入,可能覆盖一条薄弱的系统提示词。防御手段包括三明治技巧(在开头和结尾重复关键指令)、用 XML 标签隔离外部数据,以及在工具调用层强制执行权限控制。

Sources: