小白入门

System Prompt 入门写法:新手第一次配置 AI 角色指南

如果你是第一次调用 ChatGPT 或 Claude 的 API,大概率会在代码里看到一个叫 system 的字段,旁边还有个 user 字段。很多新手第一反应是”这俩有什么区别,随便填一个不行吗”——填是能填,但效果天差地别。这篇文章用最直白的方式,讲清楚 system prompt 到底是什么、怎么写、新手常犯哪些错。

一、System Prompt 到底是什么

打个比方:如果你请了一个助理,system prompt 就是你在助理上班第一天跟 TA 交代的工作说明——“你负责客服,语气要礼貌,遇到退款问题按这个流程走”。而 user 消息是每天具体交代的活——“帮我查一下 3 号订单的物流状态”。

说明只用交代一次,之后助理会一直记得(除非你重新交代);具体的活每次都不一样。API 调用里也是这个逻辑:

{
  "system": "你是一个电商客服助手,回复要礼貌、简洁,涉及退款问题必须先确认订单号。",
  "messages": [
    { "role": "user", "content": "我想退货" }
  ]
}

system 字段设定的是这个 AI 整场对话的行为规则,messages 里的 user/assistant 才是真正一来一回的对话内容。

二、不写 System Prompt 会怎样

完全不写也能用——大部分 API 允许 system 字段留空,模型会用默认的通用助手人格回复。但你会遇到这些问题:

  • 回复风格不稳定:这次简洁,下次啰嗦,因为没有明确规则约束
  • 不知道自己的”身份”:问它”你是谁""你能做什么”,回答含糊,因为你没告诉它该怎么介绍自己
  • 容易被用户”带跑”:没有明确边界的情况下,用户说”忽略之前的设定”,模型更容易照做

对于一次性的小工具或者练手项目,不写问题不大;但凡你要做一个”稳定重复使用”的应用(客服机器人、内容审核、代码助手),system prompt 就是必须品,不是可选项。

三、新手可以直接抄的三个模板

模板一:客服/问答类

你是 [产品名] 的客服助手。
你的任务:回答用户关于 [产品功能范围] 的问题。
语气要求:礼貌、简洁,不说套话。
边界:不知道的问题老实说"不清楚,建议联系人工客服",不要编造答案。

模板二:内容生成类

你是一名 [领域,如"科技媒体"] 的中文写手。
写作风格:[口语化 / 专业严谨 / 幽默],避免空话套话。
输出格式:[分几段 / 要不要小标题 / 字数范围]。
禁止事项:不编造具体数据,不确定的地方标注"待核实"。

模板三:工具/助手类(会调用外部功能)

你是一个 [任务类型,如"数据查询"] 助手。
你可以使用的工具:[列出工具名称和用途]。
遇到工具返回错误时:如实告知用户,不要假装成功。
每次回答前,先确认用户的需求是否明确,不明确就反问一句。

抄的时候把方括号内容换成自己的场景就能用,不需要一开始就追求完美,跑起来看效果比在纸上抠字句更有用。

四、写 System Prompt 的四个新手常见错误

  1. 一次性塞太多规则。刚入门容易把”角色 + 格式 + 禁止事项 + 边界情况处理”全揉在一段话里,模型读起来抓不住重点。按类别分段写(角色说明、输出格式、边界情况),效果明显更稳。

  2. 只说”不要做什么”,不说”该做什么”。比如写”不要说废话”,模型不一定知道什么算废话;换成”每次回复不超过 3 句话,先给结论再给理由”,指令具体多了才好执行。

  3. 把动态信息硬编码进去。比如把”今天是 2026 年 9 月”写死在 system prompt 里,过了这天信息就错了。这类会变化的信息应该在每次调用时通过代码动态拼接,而不是手写死。

  4. 测试的时候只试一轮对话。System prompt 的效果要在多轮对话、边界输入(比如用户故意问超纲问题)下才能看出问题,只测一句”你好”看不出毛病。

五、System Prompt 和普通聊天技巧的区别

刚接触的人容易把”怎么跟 ChatGPT 网页版聊天问出好答案”和”怎么写 API 里的 system prompt”混为一谈,其实是两件事:

网页聊天技巧System Prompt
生效范围单次提问,问一次调一次整个应用/整场对话持续生效
写作对象给 AI 的”这一句话”给 AI 的”长期人设说明书”
修改频率每次都可能不一样写一次,长期复用、偶尔迭代
典型场景个人日常提问做产品、做机器人、做自动化脚本

如果你只是自己偶尔问问题,不需要学 system prompt;一旦要做成一个别人也能用的工具,就绕不开这一步。

六、下一步:从入门到进阶

这篇讲的是”能跑起来”的基础写法。等你开始遇到”怎么控制 system prompt 的长度不超预算""怎么用缓存降低重复调用的成本""system 和 user 到底该怎么精确划分职责”这些问题时,可以往下看:

七、相关阅读