AI认知篇8:详解Harness技术

前言

这是我的agent系列文章的第8篇,该系列分为三部分:

  • AI认知篇:详细讲解相关基础概念
  • AI实践篇:分享诸如skills怎么写、怎么ai coding、怎么写好prompt等的最佳实践
  • AI八股篇:分享我自己整理的应付大模型应用开发岗位必备的八股笔记后端与agent2手抓学习专栏

想象一下,你拥有一匹日行千里的神骏,它力量无穷,速度惊人。但如果直接骑上它去送货,结果很可能是:它跑得飞快,却跑错了方向,或者在半路被路边的野花吸引,完全忘了任务。这匹“神骏”就像今天强大的大语言模型(LLM),而Harness,就是为它量身定制的“缰绳”、“马具”和“导航系统”。

简单来说,Harness(驾驭层)是一套包裹在AI模型外部的工程化系统,它的职责是把模型强大的“思考能力”,转化为稳定、可靠、可重复的实际“行动能力”。

🤔 为什么我们需要Harness?

AI模型本身很强大,但直接用它来完成复杂任务,经常会遇到以下问题:

  • 容易“跑偏”(幻觉): 模型可能会一本正经地胡说八道,编造不存在的信息。
  • 状态“失忆”: 模型本身是无状态的,它记不住上一轮对话或操作的上下文,无法完成需要多步协作的长任务。
  • 行为“失控”: 模型可能会尝试执行危险操作,比如删除重要文件、访问不该访问的数据。
  • 结果“随机”: 同样的指令,模型可能每次给出的结果都不一样,无法保证稳定性。

这些问题的根源不在于模型不够聪明,而在于缺少一个能约束、引导和管理它的系统。Harness就是为了解决这些问题而生的。

🧩 Harness的核心组件:一套完整的“控制系统”

一个成熟的Harness系统,通常包含以下几个核心部分,它们共同协作,确保AI智能体(Agent)能够可靠地工作。

上下文工程:智能的“信息投喂”

它负责决定AI在每一步能看到什么信息。不是把所有资料一股脑塞给它,而是动态地、按需地提供当前任务最相关的信息,比如项目文档、历史对话记录、工具使用手册等。这就像给驾驶员提供精准的导航地图,而不是整个世界的百科全书。

工具与技能:赋予AI“手脚”

Harness为AI模型连接各种工具,让它能与外部世界交互。这些工具可以是:

  • 文件操作: 读取、写入、修改文件。
  • 代码执行: 运行代码、调用API。
  • 网络搜索: 获取实时信息。
  • 专业软件: 操作数据库、调用设计工具等。

护栏与约束:不可逾越的“交通规则”

这是Harness最关键的“安全”部分。它设定了一系列硬性规则,AI的任何行为都必须遵守。例如:

  • 权限控制: 禁止AI访问敏感数据或执行高危命令。
  • 格式规范: 要求AI输出的代码必须通过语法检查(如ESLint),否则直接驳回重写。
  • 流程限制: 强制AI按照预设的步骤执行,不能跳步或乱序。

规划与执行循环:任务拆解的“大脑”

面对一个复杂任务(如“帮我写一份行业分析报告”),Harness不会让AI一步到位,而是引导它进行“规划-执行-验证”的循环:

  1. 规划: AI先将大任务拆解成多个可执行的小步骤(如:1.搜索竞品信息;2.分析市场份额;3.撰写报告初稿)。
  2. 执行: AI调用相应工具,一步步完成小任务。
  3. 验证: Harness检查每一步的输出是否符合要求。如果出错,就反馈给AI进行修正。

记忆与状态管理:可靠的“记事本”

它负责记录任务的全过程,包括AI的思考、执行的动作、工具返回的结果等。这让AI能够“记住”任务的进度,即使中途出错,也能恢复到之前的状态,而不是从头再来。

🛠️ 具体示例:Harness如何让AI写代码

让我们通过一个具体的例子,看看Harness是如何工作的。假设你的指令是:“为我的网站添加一个用户登录功能”。

没有Harness的情况

你向AI提问,AI生成了一段代码。你需要手动:

  1. 把代码复制到你的项目里。
  2. 运行代码,发现报错了。
  3. 把错误信息复制回给AI。
  4. AI给出新的代码,你再重复上述步骤……

这个过程繁琐、低效,且完全依赖你的人工判断。

有Harness的情况

Harness会自动接管整个流程,形成一个自动化闭环:

  1. 接收指令: Harness接收到“添加登录功能”的指令。
  2. 规划任务: AI在Harness的引导下,规划出步骤:a.创建登录页面HTML;b.编写后端验证逻辑;c.添加数据库连接。
  3. 执行代码: AI生成创建HTML文件的代码,Harness调用“文件写入”工具,自动将文件创建好。
  4. 自动验证: Harness自动触发代码检查工具(如ESLint),发现代码格式不符合项目规范。
  5. 反馈修正: Harness将具体的错误信息(如“第5行缺少分号”)直接反馈给AI。
  6. 自我修复: AI根据错误信息,生成修正后的代码。Harness再次执行并验证,直到通过。
  7. 继续下一步: 登录页面完成后,Harness引导AI进入下一步“编写后端逻辑”,并重复上述过程。

在整个过程中,你只需要给出最初的指令,剩下的都由Harness和AI协同完成。它不仅生成了代码,还自动完成了测试、修复和集成,确保了代码的质量和可用性。

📌 总结

Harness的出现,标志着AI应用从“玩具”走向“工具”的关键一步。如果说大模型是提供智能的“发动机”,那么Harness就是让它安全、稳定、高效运行的“整车系统”。

  • 模型(Model) 决定了AI能力的上限——它能有多聪明。
  • Harness 决定了AI应用的下限——它能有多可靠。

在未来,决定一个AI产品成败的,可能不再是模型参数的大小,而是其背后Harness工程的优劣。Harness,正是让AI从“能干活”到“干好活”的关键所在。

其他

考研失利想速成冲春招或找实习的可以看看我发过的这篇帖子:论考研失利如何冲春招

想要学习Java冲实习或冲春招的,我能助你一臂之力,我之前整理了高质量可速成的魔改外卖项目话术和7000字轮子项目话术,还有超全超精品八股大全专栏怎么写简历,怎么包装实习经历,怎么0基础速成冲春招和实习等等精品帖子,大家可以去看看我的精品文章汇总帖子:往期精品秋招帖子汇总

我的java和大模型应用开发全专栏(20w人学习,超千人订阅,牛客最受欢迎最高质量java八股专栏,内容包含: 1.八股大全:多一句没有少一句不行的最精简八股整理,完全可以应付校招社招的八股拷打! 2.速成项目话术:目前有魔改苍穹外卖项目话术(额外扩展了很多技术亮点),能速成拿去面试,后面会更新魔改黑马点评、商城项目等等热门高质量项目话术 3.智力题超详细题解汇总; 4.面试时非技术问题话术整理,绝对震惊面试官一年; 5.算法lc hot100全题系列题解:绝对通俗易懂;6、场景题汇总快速冲刺秋招专栏

#牛客AI配图神器#

#校招##聊聊我眼中的AI##AI求职记录##想从事Agent应该学习哪些技术?##简历上如何体现你的“AI”能力?#
全部评论

相关推荐

04-23 20:36
门头沟学院 Java
1. 自我介绍。2. 实习的系统大概是一个什么样的系统?3. 实习中主要负责了哪些内容?4. 你觉得这个系统的技术难点在哪里?5. 这个系统里需求开发和迭代的整体流程是怎样的?6. 拿到需求之后,你们是怎么做技术方案评估和评审的?7. 开发完成之后,code review 是怎么做的?8. 测试是怎么配合的?你自己会不会写单测?一般测到什么程度?9. 你参与的这套系统整体架构是怎样的?10. 从入口层、业务层到存储层分别是什么形态?涉及哪些中间件和组件?11. 服务是怎么部署的?是容器化部署还是其他方式?12. 这个 AI agent 项目主要是解决什么问题?为什么要做这样一套东西?13. 这个项目想解决的痛点是什么?为什么普通大模型方案不够?14. 这个项目是真实被使用的系统,还是偏学习性质的项目?15. 系统设计题:如果有一个告警系统,里面有 10 万条告警规则,要定时扫描并判断是否触发告警,这个任务怎么设计?16. 规则很多、扫描频率固定时,怎么优化读取和扫描性能?17. 多实例下怎么协同完成规则扫描任务?18. 怎么决定某一条规则该由哪个实例来扫描,且保证不重复、不遗漏?19. 如果实例数会扩缩容,这种规则分配方案要怎么设计?20. 一致性哈希在这种分布式任务分配场景里怎么落地?21. 这个规则扫描任务能不能借助 MQ 来做?如果可以,整体方案怎么设计?22. 如果用 MQ,谁来生产待扫描任务?定时任务、数据库、MQ 三者怎么配合?23. HashMap 底层是怎么实现的?24. JDK 1.7 和 1.8 的 HashMap 有什么区别?25. 数组、链表、红黑树在 HashMap 里是怎么配合工作的?26. HashMap 为什么读写平均复杂度能比较低?27. Hash 冲突是怎么解决的?HashMap 主要采用了什么方式?28. 概率题:有一枚正反面概率不均匀的硬币,怎么公平地决定两个人谁去做一件事?29. 如果只能抛两次硬币,能不能设计一个公平方案?30. 从浏览器输入一个 URL 到页面最终展示,中间经历了哪些过程?31. Redis 为什么快?32. 如果 Redis 内存满了会怎么办?33. 算法题:无重复字符的最长子串。34. 你之前项目里提到过 MCP,你怎么理解 MCP?35. MCP 和 skill 这类能力分别解决什么问题?36. MCP 这种协议的优点和缺点分别是什么?37. MCP 在工具很多的时候,会不会也带来上下文膨胀或者性能问题?38. skill 是什么?为什么会有 skill 这种设计?39. skill 越来越多时,会遇到什么问题?怎么理解上下文过长、成本升高这些问题?40. 你平时是怎么学习 AI 相关内容的?41. 反问
我的求职进度条
点赞 评论 收藏
分享
评论
4
8
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务