资讯动态

收藏!小白程序员必备: Harness 工程带你解锁大模型实际应用引擎

发布时间:2026/9/12 21:17:19 来源:尧图企业网站定制
Harness 工程是围绕模型构建系统将模型转化为可实际工作的引擎使模型智能变得可用。文章定义了 Harness 的概念并从模型出发推导出现阶段及未来 Agent 所需的核心组成。Harness 包括系统提示词、工具与技能、封装的基础设施、编排逻辑及保证执行稳定性的机制。文章还探讨了 Harness 的必要性以及如何通过文件系统、Bash 和代码执行、沙箱和工具、记忆与搜索等关键能力实现 Agent 的持久化存储、自主解决问题、安全执行、持续学习及长时间尺度上的自主执行。未来模型训练与 Harness 设计将逐渐耦合Harness 工程将持续发展构建更完善的系统及更强大的 Agent。1、有没有人能把 Harness 说清楚Agent Model Harness。如果你不是在训练模型那么你做的大多属于 Harness 的范畴。所谓 Harness是指“即所有不属于模型本身的代码、配置以及执行逻辑。”一个裸模型并不能算作 Agent只有当 Harness 为其提供状态管理、工具调用能力、反馈循环以及可执行约束时它才真正成为一个 Agent。更具体地说Harness 通常包括系统提示词、工具与技能以及 MCP及其说明、封装好的基础设施如文件系统、沙箱、浏览器、编排逻辑例如子 Agent 的生成与交接、模型路由以及用于保证执行稳定性的 Hook钩子机制或中间件如上下文压缩、续写机制、Lint 检查等。在实际系统中模型与 Harness 的边界可以有多种划分方式而且往往并不清晰。但从工程视角来看这样的定义最具区分性因为它迫使我们从“如何围绕模型智能设计系统”的角度来思考问题。接下来我们将从模型这一最基础的抽象出发逐步推导这些 Harness 组件为什么存在。2、为什么需要 Harness我们希望 Agent 能做到的许多事情模型本身其实并不具备这正是 Harness 存在的意义。在大多数情况下模型接收文本、图像、音频、视频等输入然后输出文本或结构化调用结果仅此而已。默认情况下它无法在多次交互之间维持持久状态执行代码获取实时信息搭建运行环境并安装依赖这些能力全部属于 Harness 层。LLM 的结构决定了必须有一层外部机制包裹它才能让它真正参与实际工作。举个简单的例子为了实现聊天这种产品体验我们通常会使用一个 while 循环来维护历史消息并不断追加新的用户输入。几乎所有人都已经用过这种形式的 Harness。本质上我们所做的就是将期望的 Agent 行为转化为 Harness 中的具体实现。3、从目标行为反推 Harness 设计Harness 工程的作用是帮助人类注入有效的先验从而引导 Agent 的行为。随着模型能力的提升Harness 也逐渐被用来以更精细的方式扩展或修正模型使其能够完成过去难以完成的任务。我们不尝试穷举所有可能的 Harness 功能。这里的目标是从“让模型能够完成实际工作”这一出发点推导出一组关键能力。基本思路是我们想要或需要修正的行为 → 对应的 Harness 设计。4、用文件系统实现持久存储与上下文管理我们希望 Agent 拥有持久化存储能力用来处理真实数据、转移无法容纳在上下文中的信息并在不同会话之间延续工作。但模型只能直接处理其上下文窗口中的信息。在引入文件系统之前用户只能通过复制粘贴的方式将内容提供给模型这既低效也不适用于自动化 Agent。现实世界本身就是通过文件系统来组织工作的而模型在训练中也学习了这种模式。因此一个自然的解决方案是由 Harness 提供文件系统抽象及相关操作工具。文件系统可以说是最基础的 Harness 原语之一它带来了多项关键能力Agent 拥有一个工作空间可以读取数据、代码和文档信息可以逐步写入或转移而不必全部堆积在上下文中中间结果可以被保存从而维持跨会话状态文件系统同时也是一个天然的协作界面多 Agent 或人与 Agent 可以通过共享文件进行协同例如 Agent Teams 这样的架构就依赖这一点。再结合 Git文件系统获得了版本控制能力Agent 可以跟踪进度、回滚错误并进行分支实验。后文还会再次提到文件系统因为它实际上是许多其他能力的基础。5、用 Bash 和代码执行作为通用工具我们希望 Agent 能够自主解决问题而不是在每一步都依赖预先定义好的工具。目前主流的 Agent 执行模式是 ReAct 循环模型先进行推理reasoning然后通过工具调用执行动作观察结果再进入下一轮循环。问题在于Harness 只能执行事先定义好的工具。与其为每一种可能的操作编写专用工具不如提供一个通用工具例如 Bash。因此Harness 通常会提供 Bash 能力让模型通过编写和执行代码来解决问题。Bash 加上代码执行相当于为模型提供了一台“通用计算机”。模型可以通过编写代码临时构建工具而不再受限于固定的一组预配置工具。当然Harness 仍然会提供其他专用工具但代码执行正在逐渐成为自主问题求解的默认策略。6、用沙箱和工具完成执行与验证Agent 需要一个合适的环境才能安全地执行操作、观察结果并持续推进任务。我们已经为模型提供了存储能力和代码执行能力但这些都必须在具体环境中发生。直接在本地运行模型生成的代码存在较高风险同时单一环境也难以支持大规模任务。沙箱提供了一种隔离且安全的执行环境。Harness 可以将执行过程放入沙箱中让 Agent 在其中运行代码、访问文件、安装依赖并完成任务。为了进一步提高安全性可以引入命令白名单机制并限制网络访问。与此同时沙箱也带来了良好的可扩展性环境可以按需创建、并行运行多个任务并在完成后销毁。一个完善的环境通常还需要预配置常用工具例如语言运行时、依赖包、Git、测试工具以及用于网页交互的浏览器。浏览器、日志、截图、测试运行器等能力使 Agent 能够观察并分析自身行为从而形成自验证循环编写代码 → 运行测试 → 分析结果 → 修复问题。需要注意的是模型本身并不会配置这些环境。Agent 在何处运行、拥有哪些工具、可以访问哪些资源、如何验证结果全部属于 Harness 层的设计决策。7、用记忆与搜索实现持续学习我们希望 Agent 能记住其经历并获取训练之后才出现的信息。模型本身只有权重和当前上下文并不具备额外记忆。在不修改权重的前提下增加知识的主要方式是通过上下文注入。在记忆方面文件系统再次成为核心。Harness 可以支持类似 AGENTS.md 的记忆文件并在 Agent 启动时加载到上下文中。随着 Agent 持续更新这些文件系统会不断注入最新内容从而形成一种“持续学习”机制。另一方面模型存在知识截止问题无法直接获取训练之后的数据例如更新的库版本。因此需要借助 Web 搜索以及 MCP 工具如 Context7让 Agent 获取超出训练范围的信息。因此Web 搜索以及动态获取最新上下文的能力也是 Harness 中非常关键的一类基础能力。8、对抗 Context Rot上下文退化我们不希望 Agent 在执行过程中性能逐渐下降。所谓 Context Rot上下文退化是指随着上下文窗口不断被填满模型在推理和任务完成上的表现逐渐变差。上下文是一种有限且宝贵的资源因此 Harness 必须对其进行有效管理。从某种意义上说当前大量 Harness 工作本质上是在进行“上下文工程”。当上下文接近上限时需要进行压缩compaction。如果不处理一旦超过上下文限制API 可能直接报错这在工程上是不可接受的。因此 Harness 通常会通过总结与转移机制让 Agent 能够持续运行。对于工具调用产生的大量输出如果全部放入上下文会引入大量噪声。常见做法是仅保留开头和结尾的一部分内容其余写入文件系统必要时再读取。此外如果在启动阶段加载过多工具或 MCP 服务也会在一开始拖慢模型表现。Skills按需加载的能力模块通过渐进式加载来缓解这一问题。模型本身不会主动选择加载哪些能力但 Harness 可以通过这种方式保护上下文避免过早退化。9、长时间尺度上的自主执行我们希望 Agent 能够在较长时间内自动且稳定地完成复杂任务。自动化软件开发可以视为编码类 Agent 的重要目标。但当前模型仍存在一些限制例如容易提前停止、难以拆解复杂任务以及在跨多个上下文窗口时表现不稳定。因此一个良好的 Harness 必须围绕这些问题进行设计。在这里前面提到的能力开始协同发挥作用。长时任务需要持久状态、规划能力以及观察与验证机制才能跨多个上下文持续推进。文件系统和 Git 用于跨会话跟踪工作。长期任务可能产生数百万 token文件系统可以稳定记录这些过程而 Git 则让新的 Agent 能快速理解当前状态与历史。对于多 Agent 协作而言文件系统也是一个共享“账本”。Ralph Loop 用于让任务持续执行。这是一种 Harness 模式通过 Hook 拦截模型的“结束”行为并在新的上下文窗口中重新注入原始目标从而强制任务继续推进。文件系统在其中起到关键作用因为每一轮都可以在新的上下文中读取之前的状态。规划与自验证用于保持方向。规划是指将目标拆解为多个步骤Harness 可以通过提示词与文件机制支持这一过程。每完成一步后通过测试或自评进行验证如果失败则通过 Hook 将错误反馈给模型进入下一轮迭代。验证不仅提升结果可靠性也为模型提供持续改进的信号。10、Harness 的未来模型训练与 Harness 设计正在逐渐耦合一些 Agent 产品如 Claude Code、Codex已经在训练阶段将 Harness 纳入闭环使模型在文件系统操作、Bash 执行、规划以及多 Agent 协作方面表现更优。这形成了一个反馈循环先在 Harness 中发现有效模式再将其纳入训练从而进一步增强模型能力。但这种共同演化也带来问题例如泛化能力下降。当工具逻辑发生变化时模型性能可能显著下降这表明模型在一定程度上“过拟合”了训练时的 Harness。不过这并不意味着某个模型对应的 Harness 就是最佳选择。实际上在不同 Harness 下同一模型的表现可能差异很大。例如在 Terminal Bench 2.0 上我们观察到显著性能波动甚至仅通过调整 Harness就可以将一个编码 Agent 从 Top 30 提升到 Top 5。这说明 Harness 仍然具有巨大的优化空间。Harness 工程会走向哪里随着模型能力不断增强一些当前属于 Harness 的能力可能会逐渐被模型吸收例如规划、自验证以及长程一致性从而减少对上下文注入的依赖。这看起来似乎意味着 Harness 会变得不那么重要。但正如 Prompt 工程至今仍然重要一样Harness 工程很可能也会长期存在。因为它不仅是在弥补模型的不足更是在围绕模型智能构建完整系统。良好的环境配置、合适的工具、持久状态以及验证机制都能让模型在任何智能水平下更加高效。目前Harness 工程仍然是一个非常活跃的研究方向。例如在 LangChain 的 deepagents 项目中人们正在探索如何让上百个 Agent 在同一代码库上并行协作如何让 Agent 分析自身执行轨迹从而发现并修复 Harness 层问题如何根据具体任务动态组装工具与上下文而不是预先配置一切本文本质上是在回答两个问题什么是 Harness以及它如何被我们对模型能力的期待所塑造。模型提供智能而 Harness 让这种智能真正发挥作用。愿我们构建出更好的 Harness、更完善的系统以及更强大的 Agent。如果你已经看到这里其实你已经在门槛内了。剩下的就是把这些“理解”变成“能做出来”。推荐这个好评如潮的 Agent 实战营带你一点点上手智能体。如何学习大模型 AI 由于新岗位的生产效率要优于被取代岗位的生产效率所以实际上整个社会的生产效率是提升的。但是具体到个人只能说是“最先掌握AI的人将会比较晚掌握AI的人有竞争优势”。这句话放在计算机、互联网、移动互联网的开局时期都是一样的道理。我在一线互联网企业工作十余年里指导过不少同行后辈。帮助很多人得到了学习和成长。我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限很多互联网行业朋友无法获得正确的资料得到学习提升故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】为什么要学习大模型我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年人才缺口已超百万凸显培养不足。随着AI技术飞速发展预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。大模型入门到实战全套学习大礼包1、大模型系统化学习路线作为学习AI大模型技术的新手方向至关重要。 正确的学习路线可以为你节省时间少走弯路方向不对努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划带你从零基础入门到精通2、大模型学习书籍文档学习AI大模型离不开书籍文档我精选了一系列大模型技术的书籍和学习文档电子版它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。3、AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。4、大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。5、大模型大厂面试真题面试不仅是技术的较量更需要充分的准备。在你已经掌握了大模型技术之后就需要开始准备面试我精心整理了一份大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。适用人群第一阶段10天初阶应用该阶段让大家对大模型 AI有一个最前沿的认识对大模型 AI 的理解超过 95% 的人可以在相关讨论时发表高级、不跟风、又接地气的见解别人只会和 AI 聊天而你能调教 AI并能用代码将大模型和业务衔接。大模型 AI 能干什么大模型是怎样获得「智能」的用好 AI 的核心心法大模型应用业务架构大模型应用技术架构代码示例向 GPT-3.5 灌入新知识提示工程的意义和核心思想Prompt 典型构成指令调优方法论思维链和思维树Prompt 攻击和防范…第二阶段30天高阶应用该阶段我们正式进入大模型 AI 进阶实战学习学会构造私有知识库扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架抓住最新的技术进展适合 Python 和 JavaScript 程序员。为什么要做 RAG搭建一个简单的 ChatPDF检索的基础概念什么是向量表示Embeddings向量数据库与向量检索基于向量检索的 RAG搭建 RAG 系统的扩展知识混合检索与 RAG-Fusion 简介向量模型本地部署…第三阶段30天模型训练恭喜你如果学到这里你基本可以找到一份大模型 AI相关的工作自己也能训练 GPT 了通过微调训练自己的垂直大模型能独立训练开源多模态大模型掌握更多技术方案。到此为止大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗为什么要做 RAG什么是模型什么是模型训练求解器 损失函数简介小实验2手写一个简单的神经网络并训练它什么是训练/预训练/微调/轻量化微调Transformer结构简介轻量化微调实验数据集的构建…第四阶段20天商业闭环对全球大模型从性能、吞吐量、成本等方面有一定的认知可以在云端和本地等多种环境下部署大模型找到适合自己的项目/创业方向做一名被 AI 武装的产品经理。硬件选型带你了解全球大模型使用国产大模型服务搭建 OpenAI 代理热身基于阿里云 PAI 部署 Stable Diffusion在本地计算机运行大模型大模型的私有化部署基于 vLLM 部署大模型案例如何优雅地在阿里云私有部署开源大模型部署一套开源 LLM 项目内容安全互联网信息服务算法备案…学习是一个过程只要学习就会有挑战。天道酬勤你越努力就会成为越优秀的自己。如果你能在15天内完成所有的任务那你堪称天才。然而如果你能完成 60-70% 的内容你就已经开始具备成为一名大模型 AI 的正确特征了。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价