System Prompt

System prompt

Harness 在每次模型请求前附加的指令——Agent 的常驻简报:它是谁、该如何表现、能调用哪些工具、遵循什么规范。通常在一次 Session 中保持稳定。

System Prompt 由 Harness 厂商编写,而不是你;在编程类 Harness 里它非常大——通常包含数万 Token 的行为规则、工具描述和边界情况处理,每一轮都要作为输入 Token 付费。你自己的常驻指令会附带在它旁边:像 Agent.md 这样的文件会在 Session 开始时与 System Prompt 一起被加载,因此模型在看到你消息之前,会先同时读到厂商的简报和你的简报。

因为它在每次请求中都相同,所以构成了前缀缓存的起点——这也是 Harness 会在整个 Session 中保持它固定、而不是边用边改的原因之一。

模型被训练成优先遵循 System Prompt,而不是用户消息。所以当 Agent 坚持你从未要求过的约定,或者以你改不掉的格式输出时,它通常是在服从自己的 System Prompt——而你的消息在这场较量中输了。有些 Harness 可自定义:它们让你完全访问 System Prompt,这样你就能读到 Agent 实际接收到的指令并加以修改。

用法:

“两个 Harness,同一个模型,同一个 Prompt 下表现完全不同。”

“System Prompt 不同。一个被调成了精简代码编辑,另一个被调成了讲解式回复——分歧在你消息到达之前就已经存在了。”