系统提示词(system prompts)正逐渐过时!
通过构建真实世界的智能Agent,我们发现一个反直觉的真理:
拼凑一大堆规则的长prompt,反而会降低模型表现。
举例来说,你先加一条退款政策规则,再加一条语气规范,接着又加一条升级流程……很快,prompt就变成一篇2000字的操作手册。
但大型语言模型(LLM)对此表现极差。
研究也验证了这个现象,称之为“指令诅咒”:
规则越多,模型对单条指令的执行能力反而越差。
更好的方法是——“上下文条件式指导”(contextually conditional guidelines)
不是把所有规则塞进一个大prompt,而是把指令拆成模块,按照当前对话上下文动态加载:
```
agent.create_guideline(
condition="客户询问退款",
action="先检查订单状态,看是否符合退款条件",
tools=[check_order_status],
)
```
每条指导包含:
- 条件:何时加载?
- 动作:满足条件时执行什么?
系统后台根据当前对话状态筛选相关规则,只加载真正需要的几条。
这样,模型不用同时处理几十条规则,而只专注当前3-4条,显著提升执行效果。
这种方法叫做“对齐建模(Alignment Modeling)”,通过上下文结构化指导,让Agent更专注、一致且合规。
关键不在于等待更小或更强的模型,而是设计尊重LLM工作原理的架构。
这套思路已在开源框架 Parlant中实现,欢迎尝试:github.com/emcie-co/parlant
---
额外思考:
- 这其实是“上下文工程”的进阶:给模型正确、精准、及时的信息,而非一股脑堆砌。
- 这种模块化、条件触发的设计,也更便于维护和扩展。
- 与其盲目加规则,不如用工程思维把Agent当成系统来构建,而非仅靠prompt“打鸡血”。
- 长远看,等待更智能的模型固然重要,但现阶段用好架构更能发挥现有模型的潜力。
---
原文链接: x.com/akshay_pachaar/status/1973377325225091560
