[智能体设计 #1] 什么是 Harness Engineering?Prompt 之后的下一步
Harness 是包裹模型的执行循环。本文整理了工具、权限、上下文管理和反馈这几个组成部分,说明智能体性能为何由模型智能与 Harness 质量的乘积决定,以及优秀 Harness 的条件。
阅读文章精选主题 · 14 篇文章
从基础原理到实践取舍,系统浏览 AI 智能体 文章。
最新文章
Harness 是包裹模型的执行循环。本文整理了工具、权限、上下文管理和反馈这几个组成部分,说明智能体性能为何由模型智能与 Harness 质量的乘积决定,以及优秀 Harness 的条件。
阅读文章上下文窗口并非越大越好,相关性越高才越好。本文总结了将有限窗口当作预算使用的四种策略:选择性加载、摘要、隔离和外部化,并整理了 CLAUDE.md 等始终加载文件的设计标准。
阅读文章前 7 篇介绍的 AI,说到底都是“提问与回答”的工具。从完善问题、提供资料,到验证答案,整个对话始终由人来驱动。但 AI 行业过去两年一直追求的下一阶段,性质完全不同。不是对话,而是把工作本身交给 AI,也就是智能体。…
阅读文章使用 AI 编程工具时,我们经常会重复相同的指令,比如“提交信息使用这种格式”或“部署前按这份检查清单执行”。
阅读文章前几篇介绍了节省上下文的方法:在任务边界清空历史记录(第3篇),并将固定成本设计得简短(第4篇)。但仍有一些任务难以承受,例如“搞清楚这个代码库中的支付逻辑如何流转”。勤勉的代理会读取几十个文件,把所有内容都堆进上下文。调查完成时,反而没有上下文用来利用这些知识修改代码。
阅读文章如果你一直读到这里,应该已经看出一个共同模式:尽量减少放在上下文窗口中的内容。第 3 篇的“在 /clear 前将状态写入文件”、第 4 篇的“只放指针,不放正文”,以及第 5 篇的“把过程交给子智能体,只将结论交给主智能体”,全都指向同一个方向。不过,这些文件,也就是移到上下文之外的信息,究竟要放在哪里,我们还没有认真讨论。
阅读文章第 3 篇介绍了如何使用 /clear 清除对话历史。但在 /clear 后立即查看剩余上下文,会发现它并不是 100%。在 Claude Code 中执行 /context,原因就很清楚了:系统提示、工具定义、CLAUDE.md,以及 MCP 服务器注册的工具,早已占用数万个令牌…
阅读文章使用 Claude Code 这类编程智能体时,屏幕底部会出现“Context left until auto-compact: 8%”之类的警告。这是聊天型 AI 中不会出现的提示。不过,能解释这个数字为什么减少、归零后会发生什么的人,意外地并不多。
阅读文章第 1 篇我们了解了上下文窗口为何有限。但看到如今的模型规格,难免会想:既然已经有 100 万 token 的模型,直接把整个代码库或文档全部放进去不就行了吗?还有必要节省着用吗?
阅读文章前两篇已经完成诊断。上下文窗口是有限的(第 1 篇),填满并不意味着所有内容都会被使用,而且越长性能反而越差(第 2 篇)。因此解决方案很明确:必须管理上下文。包括 Claude Code 在内的编码代理,为此提供的最基本工具就是 /clear 和 /compact…
阅读文章使用 ChatGPT 或 Claude 时,总会有些不尽如人意的时刻。模型很聪明,却看不到我的数据库,也读不了公司内部 Wiki。
阅读文章