AI Harness 到底是个啥?6 张图给你讲明白
最近AI 圈有个很火的词叫 Harness原意是马的“挽具”或“缰绳”。我之前曾写文章简单介绍过这个概念。OpenClaw 火了你准备好和它一起工作了吗但今天看到 Sebastian Raschka 博士的一篇文章它对 Harness 的解释堪称全面且透彻。我之所以想和大家分享这篇文章的核心观点是因为作者没有纸上谈兵。他亲手编写了一个极简版的 Harness 框架 Coding Agent并在实践中提炼出了 Harness 的 6 大核心组件。文章图文并茂地解释了 Harness 究竟是什么以及它为何如此重要。原文链接https://magazine.sebastianraschka.com/p/components-of-a-coding-agentLLM、Agent、Harness 啥关系在深入探究之前我们得先理清几个容易混淆的概念。千万别把大语言模型LLM和智能体Agent画等号。我们可以用“造汽车”来打个通俗的比方大模型LLM它是汽车的“发动机”。早期的 GPT-3、GPT-4核心能力是“文字接龙”。推理模型Reasoning Model它是一款“带涡轮增压的超级发动机”。在开口说话前它会在脑子里先打草稿、自我验证即 Thinking 过程。Agent智能体它是这辆车的“自动驾驶系统”。Agent 是一个循环Loop。当你下达“帮我修个 Bug”的指令时Agent 会自己做决策第一步看哪段代码第二步用什么工具报错了怎么纠正什么时候完成任务并交差。Harness框架这是围绕着发动机和司机打造的“汽车底盘、方向盘和仪表盘”。没有它Agent 就无法与真实世界交互。它负责帮模型读取本地文件、运行终端命令、管理各种工具。LLM / Agent / Harness 关系图大模型再聪明如果被关在网页聊天框里它也看不见你本地电脑里的项目结构。LLM Agent Harness 这套系统的出现彻底改变了游戏规则。模型提供“引擎”算力Agent 循环驱动问题被迭代解决而 Harness 提供的运行时支持则像“水电管道”一样构成了底层基础设施。Coding Harness 编程 Harness解剖 Harness 的六大核心组件当我们谈论 Harness框架时通常是指包裹在模型外围的那层软件系统。这套系统就像个“大管家”负责组装提示词、提供可用工具、追踪文件状态、应用代码修改、运行终端命令、管理权限、缓存提示词前缀、存储记忆等一系列脏活累活。在如今的大模型时代相比于在网页端干聊正是这层框架决定了我们绝大部分的 AI 体验。接下来我们就以 Raschka 博士的“迷你编程智能体”为例盘点 Coding Harness 的 6 大核心组件。Mini Coding Agent: https://github.com/rasbt/mini-coding-agent1. 实时上下文如果你直接在聊天框里对 AI 喊一句“帮我修一下测试代码的报错”。这就好比拉来一个对业务一无所知的程序员帮你看代码。结果肯定是满头大汗这是什么项目用的什么框架在哪报的错大模型也是如此。如果不知道你的代码仓库长什么样它就只能“瞎蒙”。但在 Harness 系统里情况完全不同。当你下达指令的瞬间Harness 会在后台迅速扫描代码库收集“情报”项目类型、文件目录排布、最新的代码提交记录等。随后它会自动生成一份简明的工作区摘要连同你的指令一起打包递给大模型。这样一来AI 每次接到新指令时就拥有了全局视野不再是大脑一片空白。2. 提示词缓存赋予 AI 全局视野后随之而来的是一个致命的体验问题如果每次对话AI 都要把项目从头到尾重新读一遍结果必然是又慢、又卡、还极其烧钱。为了解决这个问题Harness 引入了提示词的结构化设计与缓存复用。它会对信息进行“干湿分离”稳定前缀Stable Prefix包含不常变动的信息如 Agent 的人设、系统指令、可用工具列表、项目基础概况等。这部分会被系统缓存起来。动态状态Session State包含最新的聊天记录、AI 的短期记忆以及你刚刚下达的指令。每次对话大模型真正需要重新计算和处理的只有那一点点“动态状态”从而大幅提升了响应速度并降低了 API 成本。3. 工具用大模型写过代码的人都经历过这种痛点AI 甩出一段代码和几行终端命令你得自己复制粘贴、自己运行一旦报错还得把鲜红的报错信息再复制回网页问它。当跨入 Harness 领域时最大的质变发生了AI 长出了“手和脚”能亲自在你电脑里搜文件、改代码、跑测试。Harness 会提前给 AI 准备一个预设好的“工具箱”例如查看文件、读取文件、执行终端命令、修改代码。你可能会担心“让 AI 直接在我的电脑上运行命令万一它操作失控把数据库删了怎么办”别慌Harness 不仅给了 AI 手脚还给它戴上了“紧箍咒”。当 AI 提交行动申请后指令并不会立刻执行Harness 会在后台进行严密的拦截检查“这是已知的合法工具吗” “提供的参数格式正确吗” “这个高危操作需要用户点击授权吗” “它要访问的文件路径是否超出了当前工作区 (Workspace) 的限制”这种看似限制 AI 自由的机制反而换来了极高的系统安全性和可用性。4. 上下文管理在多轮编程对话中Agent 会不断读取长文件、接收冗长的工具输出和报错日志。AI 的“临时记事本”很容易被塞满这在专业上称为 Context Bloat上下文膨胀。如果不加节制不管多大的窗口分分钟都会被撑爆。Harness 主要是通过两套动作给 AI 的记忆“做瘦身”动作一暴力裁剪 (Truncation)Harness 会像无情的剪刀手将过长的日志或文档强制截断。它绝不允许单篇长篇大论霸占 AI 宝贵的脑容量。动作二去重与摘要 (Deduplication Summarization)如果在解决一个 Bug 的过程中AI 反复查看了同一个核心代码文件好几次Harness 会合并这些多余的读取记录。它还会将完整的历史记录浓缩成更适合放入提示词的摘要。真正的高手设计往往就藏在这些控制上下文长度的枯燥细节里。5. 会话记忆 (Session Memory)既然历史记录被精简了万一以后要查“旧账”怎么办这就引出了 Harness 核心的底层机制存储维度的双轨记忆结构。成熟的 Harness 系统会极其聪明地将记忆拆分成两本截然不同的“账本”完整对话记录 (Full Log)你输入的指令、系统吐出的每一行长日志、AI 的每一句回复都会被一字不落地记录在本地硬盘。这本账本是为了“留底”也是为了重建提示词 提供近期历史的准确快照。工作记忆 (Working Memory)这本账本极其精简没有啰嗦的运行日志只记录当前任务的关键情报。它会随着工程的推进不断擦除和更新侧重于保持任务的连贯性 防止 AI 在漫长的 debug 中“迷失自我”。6. 子智能体 (Subagents)顶级 Harness 还祭出了最后一件大杀器子智能体Subagents。简单来说就是让主模型学会“当老板”。当主 Agent 推进主线任务时突然遇到一个棘手的边缘问题比如某个冷门的测试跑不通。过去它只能停下核心工作去翻遍几十个文件找答案。但在 Harness 框架下主 Agent 会动态召唤出一个“子智能体”“你去把那个测试跑不通的原因查清楚只向我汇报结果。” 主 Agent 继续思考核心逻辑小弟在后台吭哧吭哧翻日志。关键在于Harness 必须对子智能体实施严格的权限控制Bounded。如果小弟没有被限制权力它可能会为了修一个边缘 Bug一顿乱改毁了你的核心代码或者它自己又去召唤一堆“孙子 Agent”导致系统无限套娃。因此Harness 在召唤小弟时会给它戴上极其严格的“镣铐”。小弟继承了老大的一部分上下文但权限被死死锁住通常处于“只读”模式或受限沙箱中。老大负责运筹帷幄把控主线小弟负责跑腿死磕支线细节。总结到这里我们一口气拆解了 Harness 的 6 大核心部件。当然在真正的系统源码中这六个组件是互相穿插、紧密咬合的。为什么我们要费这么大劲去搞懂这些底层逻辑因为一旦你在脑海中建立起这套高维度的“心智模型”。你会深刻地明白真正能让大模型从“聊天玩具”蜕变成“生产力工具”的正是外面这层看不见、摸不着的 Harness 系统。它补足了大模型的短板赋予了 AI 视野、记忆、手脚以及团队协作的能力。最近文章列表[1] Claude Code 竟然暗藏了 187 种“思考”状态[2] 手搓了一个 Skill让 AI 画出我心目中的流程图[3] 智能体 Skill 入门教程附下载地址[4] 两年踩坑换来这条 AI 学习路径[5] 难怪 Skill 不好用来看看 Google 总结的 5 种 Skill 设计模式[6] AI 是怎么学会唠嗑的系统提示词又是什么[7] Claude 控诉中国 AI 组团“偷家”到底什么是“大模型蒸馏”[8] 价值 3000 元的 AI 内部培训课今天我把它“开源”了[9] 拆解 AI 的大脑看懂谷歌“弱智”提示词[10] 日均30万亿拆解 AI 时代的“计量单位” Token[11] 2 分钟讲透为什么 AI 会胡说八道附避坑指南[12] AI 的回复怎么完美转 Word只要看懂这个格式 Markdown效率翻倍[13] 学习 AI 的最大障碍不懂大模型背后的灵魂[14] Vibe Coding 提示词指南内附编程提示词速查表[15] 为什么你的 AI 用得没别人好AI 真正的核心不是提示词而是逆向工程
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2509891.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!