Anthropic公司最近公布了Claude 4模型的系统提示文本。
这些长达数千字的内容展示了如何通过设置提示词来引导大模型的每一次回答。
仔细阅读这些文本,可以直接获取优化大模型系统的方法。
以下是这些提示文本反映的大模型发展趋势,以及3个可以直接使用的提示词设置方案。
Claude 4核心技术揭秘:2万Token的系统设定
上周,Anthropic公司公开了Claude 4的系统设定文件。但没有公布完整的对话环境构建方案,其中包括这份“已泄露”的详细功能说明。
事实上,我们过去对大模型的认知存在偏差。重点不在于如何巧妙提问,而是如何设计整个对话背景设定。
为什么环境设定比提问技巧更重要
传统的提问技巧只专注于单个问题的措辞,而上下文工程(有些人翻译成情境工程,但我觉的翻译成上下文工程更符合使用场景)则需要管理整个对话的上下文关系。
用简单直白的语言来说就是:
- 提问技巧相当于"帮我写一篇关于X的文章"
- 上下文工程相当于事先搭建好完整的写作框架
Claude 4的系统设定文件充分展现了这一点。其中包含:
- 光是搜索指令就占用了6471个token
- 基于关键词的20种查询判断方案
- 版权规范被重复强调15次以上
- 用来调整大模型行为模式的特殊设置
这里有个关于"思维模式"的有趣例子:
<思维模式>交替型</思维模式>
<最大思维长度>16000</最大思维长度>
当思维模式为交替或者自动时,在执行完功能后应该优先输出思考内容。
同时还示范了如何把思考与功能调用结合起来:
<功能调用>...</功能调用>
<功能结果>...</功能结果>
<思考>...分析结果</思考>
三个实用的上下文设计方法
1、分级处理机制
Claude采用三级系统处理用户提问:
无需搜索 → 单次搜索 → 研究模式(2-20次查询)
以下是Claude实际执行的步骤:
Claude优先使用已有知识直接回答。遇到需要最新数据的情况,或者用户明确要求搜索时才进行查询。如果用户没有特别要求,Claude会先给出回答,同时询问是否需要进一步搜索。
特别之处在于:Claude能自动判断问题难易程度,从而决定是否需要搜索以及搜索次数。简单问题直接回答,复杂问题则会启动多次查询。
如何应用到实际设计中:
- 按照问题复杂度分级
- 设定关键词触发不同搜索等级
- 默认不搜索,必要时才增加查询次数
2. 第三人称语境设定
注意到Claude的提示语总是说"Claude应该..."而不是"你应该..."了吗?
Claude系统提示的开头是这样写的:
助手是由Anthropic公司开发的Claude。
当前日期是{当前时间}。
以下是关于Claude和Anthropic产品的介绍,以备用户询问:
当前版本是Claude 4系列中的Opus 4模型。Claude 4系列包含Opus 4和Sonnet 4两个版本,其中Opus 4擅长处理复杂任务。
改写前的版本(第一人称):
你是一名资深开发者。你需要编写简洁的代码。
改写后的版本(第三人称):
助手是一名资深开发者。助手遵循SOLID原则编写清晰、规范的代码。
这种第三人称视角的设定看起来能帮助大模型更好地执行指令。所有主流大模型模型都采用这种方式并非偶然。
3. 使用XML结构处理复杂指令
Claude系统使用XML标签来明确区分不同指令内容:
<思考模式>交替式</思考模式>
<最大思考长度>16000</最大思考长度>
<功能要求>
<类型>应用/ant.react格式</类型>
<具体要求>
- 仅使用Tailwind基础功能
- 所有数据储存在React状态中
- 禁止使用localStorage
</具体要求>
</功能要求>
相比自然语言,这种结构化方式有以下优势:
- 层级关系一目了然
- 各模块容易检索定位
- 界限划分非常明确
在节省计算资源方面,XML也比JSON更有优势,主要原因在于:
大模型核心设计思路
通过Claude的设计我们可以看到,所有大模型表现都取决于上下文设计。
大模型输出的好坏,完全取决于我们如何设置提示框架和管理注意力资源。这些设计都会消耗算力——无论是计算量还是系统负荷。
Claude的提示中设计了这些细节:
- 明确告知"搜索结果由系统自动生成,不需要表达感谢"
- 3次强调"Claude不具备法律咨询资格"(针对版权问题)
- 设置特定的关键词来切换应答模式
每一个规则背后,都是大模型在实际使用中出现过的问题。
结论
提示工程(Prompt Engineering)解决的是单个问题怎么问,
上下文工程(Context Engineering)解决的是整个系统怎么设计。
Claude 4的系统提示超过2万个Token,其中:
- 每个安全限制
- 每项功能设定
- 每个特性配置
都是靠精心设计的上下文实现的。
关键在于:对大模型来说,上下文设计就是程序开发,提示语就是源代码。