Docker快速部署AstrBot:搭建专属全平台AI聊天助手
2026-07-29 3432275
2026-07-29 0
Claude Code团队复盘发现:删掉80%系统提示词,AI编程效果未降反优,揭示过度约束拖累模型的真相。核心内容:1. Anthropic删减80%系统提示词的实践及效果2. 过度提示词导致系统与技能指令冲突的内耗问题3. 新提示词策略:从给规则到让模型自主判断,从给示例到设计接口
Claude Code负责人Thariq Shihipar近日发表博客,介绍Claude 5模型的context engineering新规则;读完这篇文章,我收获颇多。
这篇文章讲的是,随着模型能力的进化,过去那些给 AI 写提示词、搭建上下文的最佳实践,很多已经过时了。Anthropic 自己在 Claude Code 这个产品上做了大量删减,系统提示词砍掉了超过 80%,结果在编程评测上的表现居然没有下降。
这个数字挺震撼的。我们平时写提示词,总觉得写得越详细越好,规则越多越安全。但 Anthropic 的经验告诉我们,过度约束反而会拖累模型的表现。
他们在复盘内部使用记录的时候发现,系统提示词、技能指令和用户请求之间经常互相打架。比如系统提示词说「适当写注释」,技能指令又说「不要加注释」,模型夹在中间,得花额外的精力去判断到底该听谁的。这种内耗是看不见的,但确实在消耗模型的推理能力。
日常工作中也有类似情形:新员工入职时,如果收到一本200页的操作手册,其中还存在多处相互矛盾的规定,他多半会束手束脚,每走一步都得翻阅确认。反过来,若员工本身能力很强,只需交代大方向和几个关键风险,其余交由他判断,效果可能更好。
Anthropic归纳了六条做法:它们过去被奉为圭臬,如今却已成为误区;在我看来,每一条都值得展开讨论。
为了防止模型乱删文件等最坏情况,过去他们会制定十分强硬的规则,例如「代码里默认不写注释」「永远不要写多行文档字符串」「不要创建规划文档」。
多数时候,这些规则确实有效,却无法覆盖所有例外。例如特别复杂的代码,可能必须配有多行注释,后来者才能读懂;旧规则采用一刀切方式,模型只能机械执行,连应当添加注释的位置也会留空。
现在新的提示词变成了一句话:写出来的代码要和周围的代码风格一致,匹配它的注释密度、命名习惯和惯用写法。
这一变化的本质在于,模型已有足够出色的判断能力,不再需要人为替它决定每个细节。只要说明原则,它便能结合实际情况灵活处理。
这与教育孩子颇为相似。年幼时,必须告诉他过马路要看红绿灯、不能触碰插座,因为这些属于硬规则。等他长大后,如果仍细致规定睡觉时间和穿着,就成了过度管控。真正有效的引导应提供方向,而不是罗列清单。
以前指导模型使用工具,首要准则就是展示示例,包括如何调用API、怎样填写参数以及会返回什么结果,都需要交代清楚。
Anthropic却发现,面对新一代模型,示例可能压缩探索空间。模型看过示例后,往往沿用既有模式,不太愿意尝试其他也许更合适的用法。
如今,他们把主要精力投入工具本身:使用清晰的参数名、明确列出枚举值,并界定工具的功能边界。模型获得这些信息后,自然能够理解使用方法。
以待办事项工具为例,只要把状态字段设为pending、in_progress、completed三个枚举值,再补充「同时只保持一个任务处于进行中」,模型就能充分理解操作方式,无须通过大段示例演示。
同样的道理也适用于产品设计:好的产品界面应让用户一眼看懂,无须翻阅说明书。如果工具必须依靠大量教程才能投入使用,问题多半出在设计本身。
过去 Claude Code 的系统提示词里塞了大量信息,包括怎么做代码审查、怎么验证结果这些内容。这些信息不是每次都用得上,但万一用到了又很关键,所以就一直放在那里占着位置。
现在,这些内容被拆分成独立技能模块,由模型在需要时主动调用,不需要时则不加载。有些工具甚至采用延迟加载形式,模型必须先搜索到定义,之后才能使用。
这种思路称为渐进式披露:核心信息置于最前,详细内容则在需要时展开。
我认为,这套思路很适合知识管理。许多人记笔记时习惯把所有内容堆进同一文档,认为查找更方便;实际上,信息过多反而增加检索难度。不妨把笔记分层,将核心要点放在顶部、细节存入子文档,需要时再进入查看。
早期的模型有个毛病,上下文窗口里靠后的内容比靠前的更容易被注意到。所以为了确保模型记住某些规则,他们会在系统提示词里写一遍,在工具描述里再写一遍。
现在不需要了。新模型对整个上下文窗口的注意力分配更均匀,把指令写在工具描述里就够了,不用在系统提示词里重复。
这个变化看起来小,但意义很大。它意味着你可以把系统提示词写得更精简,把每个工具的使用说明放在它自己的描述里,各管各的,互不干扰。整个上下文的结构会更清晰,维护起来也更方便。
过去使用Claude Code时,用户必须主动按快捷键,把重要信息存进CLAUDE.md文件,相当于亲自替模型整理笔记。
现在,与工作相关的记忆会由模型自动保存;哪些内容该记、哪些不该记,无须用户操心,模型会自行判断。
这种进步看似理所当然,背后体现的却是模型对「什么信息重要」的理解正在增强。它不再只是被动工具,而是开始具备些许主动管理上下文的能力。
过去提供给模型的参考资料,基本都是Markdown格式的规格说明文档。
如今,模型已经可以处理更复杂的参考形式,包括HTML格式设计稿、另一个代码库中的函数实现、完整测试用例,甚至一份评分标准,并能依据该标准验证输出质量。
这意味着人与模型可以采用更多样的沟通方式。与其用文字描述期望的设计,不如直接提供HTML原型;与其解释个人的代码风格偏好,不如展示一段自己认可的代码。模型能从这些具体参考中提取比文字说明更精准的信息。
Anthropic将完整的上下文划分为四层。
系统提示词,告诉模型它在什么产品里、要做什么事。这一层跟产品强绑定,普通用户一般不用改。
CLAUDE.md文件应保持轻量,只需简要说明项目用途,重点记录模型通过文件系统无法发现的特殊约束。例如项目规定所有类型定义集中放在一个文件里,这类信息模型无法自行猜出,必须明确告知。
技能模块可视为轻量指南,供模型按需查阅。除非涉及格外重要的领域,否则不要把技能写得过于僵化;较长技能应拆成多个文件,并通过渐进式披露组织。最理想的技能,是编码了个人、团队或产品独有观点、知识及最佳实践的内容。
参考资料用于补充当前任务的详细背景,应优先采用代码形式,因为代码对模型而言是高保真的指令语言。通常,一个HTML设计稿产生的效果会优于一段文字说明或一张截图。
读完文章后,我最深的体会是:与AI协作正在由「精确控制」逐渐迈向「信任与引导」。
早期模型如同刚入行的实习生,必须手把手教学,把每一步写明,否则容易犯下各种低级错误。现在的模型则更像经验丰富的同事,只需明确目标与几个关键约束,余下工作它可以自行完成。
如果你还在用老方法写提示词,写了一大堆规则和示例,可能反而在限制模型的发挥。试着删掉一些,给模型更多判断空间,看看效果会不会更好。
Anthropic 自己都砍掉了 80% 的系统提示词。我们普通用户,大概也该学着做减法了。
最后分享一个好消息:我的星球社群已运营800多天,累计主题2000个,加入人数达到1800+人,精华主题有300+篇,各类专栏课程累计上百篇,今年更新的视频教程也已有50+。
感兴趣的读者可以查看具体介绍:
《AIGC·掘金成长研习社值得你加入》
登录查看剩余70%内容