Claude5模型上下文工程的新规则

admin 2026-08-08 06:33:20 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文介绍了为Claude5等新一代模型优化上下文工程的新规则。核心要点是给模型松绑,删除系统提示词中80%以上的限制性内容,让模型利用自身判断力。建议使用渐进式披露加载上下文,优先采用代码形式的文件作为引用,并利用claudedoctor命令自动调整。关键发现是减少冲突指令可提升模型性能,可操作建议是简化上下文并尝试渐进式披露。 综合评分: 89 文章分类: AI安全,安全建设,技术标准


cover_image

Claude 5 模型上下文工程的新规则

原创

Lance Lance

ThinkInAI社区

2026年7月25日 18:18 上海

在小说阅读器读本章

去阅读

原文:https://x.com/trq212/status/2080710971228918066

我之前写过,如何最好地为最新一代 Claude 5 模型编写提示词(https://x.com/trq212/status/2073100352921215386),以及如何通过迭代式协作发现你想构建什么。

但当你向 Claude 发送消息时,提示词只是它获得的上下文中的一小部分。你的大部分上下文来自系统提示词、Skills、CLAUDE.md 文件、记忆以及其他来源。我们称之为上下文工程(https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents),当你使用 Claude Code,或构建自己的智能体时,它会对生成结果产生很大影响。

与提示词不同,上下文会普遍用于许多请求,因此它不能那么具体。你该如何为 Claude 构建这些通用提示词和指引,尤其是在你并不知道用户的提示词可能是什么的情况下?

随着 Claude 自身能力的演进,这件事可能出乎意料地困难。最近,我们注意到,在为最新一代 Claude 模型编写提示词的方式上出现了一次巨大变化。对于 Claude Opus 5 和 Claude Fable 5 这样的模型,我们删去了 Claude Code 系统提示词中 80% 以上的内容,而在编码评测中没有可衡量的损失。

下面是我们在为这一类新模型编写提示词时学到的经验,以及你如何利用这些经验来更新自己的上下文工程。我们已经把这些最佳实践放进了 claude doctor,在 Claude Code 中使用 /doctor 命令来合理调整你的 skills 和 CLAUDE.md 文件。

⬆️关注 ThinkInAI 星科社区,最及时最干货的AI内容分享

给 Claude 松绑

总体而言,我们发现,无论是通过系统提示词,还是在 CLAUDE.md 文件和 skills 中,我们都对 Claude Code 施加了过多限制。

例如,当我们阅读自己内部使用 Claude Code 的记录时,会看到在同一个请求中出现多条相互冲突的信息,比如“酌情保留文档”,或“不要添加注释”,因为我们的系统提示词、skills 和用户请求彼此发生了冲突。

一般来说,Claude 能够理解用户的意图并找到正确答案,但在决定该怎么做之前,Claude 必须更仔细地思考这些相互重叠、相互冲突的信息。

虽然这些约束曾经是为了避免最坏情况所必需的,但后来我们发现,可以删除其中很多约束,让模型改为利用周围上下文和自身判断。

此外,Claude Code 现在拥有更多工具。过去,Claude 依赖 CLAUDE.md 作为记忆、信息和指导的来源。现在我们有了记忆、Artifacts 和 Skills,Claude 可以用它们创造新的方式,在不同会话之间加载和共享上下文。

过去与现在

此前有一些上下文工程最佳实践,后来已经变成了迷思。包括:

在代码中:默认不写注释。绝不要写多段文档字符串或多行注释块——最多只写一行简短注释。除非用户要求,否则不要创建规划、决策或分析文档——基于对话上下文开展工作,而不是依赖中间文件。

但对于某些特定类型的提示词,这条指导并不适用。比如在文档场景中,用户可能有自己的偏好;或者非常复杂的代码中的某些特定部分,可能确实需要多行注释块。

尽管如此,如果没有这些针对旧模型的护栏,Claude 写出的注释在很多情况下都会是不正确的,而我们不得不接受这种取舍。但新模型具备更好的判断力,即使没有明确规则,也能很好地处理这些决定。

在新的系统提示词中,我们会说:编写代码时,要让它读起来像周围的代码:匹配其注释密度、命名方式和惯用写法。

与其使用示例,不如更多地思考你的工具、脚本和文件的设计——Claude 有哪些参数,它们怎样才能更具表达力?

例如,在 Todo 工具示例中,只是把状态列为 pending、in_progress 和 completed 之间的枚举,就会提示 Claude 该如何使用它。关于保持一个事项为 in_progress 的指令,有助于定义我们期望的行为。

因为 Claude Code 专注于编码,我们的系统提示词中包含了关于如何进行代码审查和验证的详细信息。这些信息并不总是需要,但一旦需要,就至关重要。

从那以后,Claude Code 已经非常擅长使用渐进式披露——在合适的时间加载合适的上下文。例如,我们把验证和代码审查移到了各自独立的技能中,让 Claude Code 可以选择性调用。

但渐进式披露并不只适用于技能,我们也把它用于工具。我们的一些工具是「延迟加载」的,这意味着智能体在使用它们之前,必须先用 ToolSearch 搜索其完整定义。这让我们可以拥有更多工具(例如我们的 Task 工具),而这些工具在被需要之前不会占用上下文。

同样的方法也可以应用到你自己的 CLAUDE.md 和 Skill.md 文件中。一个常见误区是,你会想把这些文件做成一个中央仓库,收纳所有你可能遇到的已知实践,因为担心 Claude 否则找不到它们。相反,可以考虑建立一棵文件树,在合适的时间加载相应文件(https://claude.com/blog/a-harness-for-every-task-dynamic-workflows-in-claude-code)。

早期的 Claude 模型有时可能需要重复指令,或者更倾向于听从上下文窗口末尾而不是开头的指令。这意味着我们的系统提示词有时会在主系统提示词中引用工具,同时也在工具描述中写入指令。

我们发现,可以删除这些重复示例,把如何使用工具的指令放在工具描述中,而不是系统提示词里。

我们过去鼓励用户把内容保存到 Claude 的记忆中,方式是使用 # 热键自动写入他们的 CLAUDE.md(http://claude.md/)。现在,Claude 会自动保存与你的工作以及与你本人相关的记忆。

在计划模式中,Claude Code 一直高度依赖包含计划的 Markdown 文件。把这些文件作为计划存储起来,有助于 Claude 在需要时引用它们。另一个类似的最佳实践,是把规格说明存放在代码库中,供 Claude 在较长项目的工作过程中引用。

但我们发现,Claude 已经能处理越来越复杂的引用。Claude 不再只能引用简单的 Markdown 文件,也可以引用由我们新的 artifacts 功能创建的 HTML artifacts。

你也可以以代码的形式给 Claude 提供引用。规格说明也可以是一套详细的测试集,或者是另一个代码库中 Claude 可能需要移植的某个函数。

评分标准是另一种引用形式。评分标准让 Claude 能够通过使用动态工作流(https://claude.com/blog/a-harness-for-every-task-dynamic-workflows-in-claude-code),并启动带有这些评分标准的验证智能体,来尝试验证你在某个特定领域的品味(例如,好的 API 设计应该是什么样的)。

将这一点应用到你的上下文中

把这些内容整合起来,当你组装自己的上下文时,会是什么样子?

使用渐进式披露来呈现更多细节。比如,如果你有几条关于如何验证工作的独特指令,可以创建一个验证 skill,并在 CLAUDE.md 中引用它。

对于较长的 skill,尽量多使用渐进式披露——把它拆成多个文件并分离出来。

当 skill 编码的是你、你的团队或产品特有的观点、知识或最佳实践时,效果最好。

这些内容可能存在于规格文件、原型图,甚至整个代码库中。一般来说,应优先选择代码形式的文件,因为它能用 Claude 非常熟悉的语言,向 Claude 提供清晰且高保真的指令。例如,一个设计的 HTML 原型通常会比设计描述或截图产生更好的结果。

尝试简化

在你的系统提示词、skill 和 CLAUDE.md 文件中,你可能也需要像我们一样进行简化。我们推出了一个新命令 claude doctor,,也可以帮助你自动完成这件事。关于如何专门为更高级的模型编写提示词,更多细节请查看我们的 Fable 实战指南(https://claude.com/blog/a-field-guide-to-claude-fable-finding-your-unknowns)。


加入ThinkInAI社区

#

如果你也对AI充满兴趣,欢迎加入我们的ThinkInAI社区,在这里,你可以:

  • 获取最新AI工具资讯
  • 参与实战经验分享
  • 结识志同道合的伙伴
  • 共同探讨AI应用方向

扫描文末二维码,加入ThinkInAI社区,一起拥抱AI新时代!


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:ThinkInAI社区 Lance Lance《Claude 5 模型上下文工程的新规则》

评论:0   参与:  0