YouTube2Text

Agent Harness十二大模块完全解析 | Harness工程 | 影响模型性能 | Anthropic | OpenAI | LangGraph | 七大架构抉择 — Transcript

by 最佳拍档 · 614 words · 562 segments · language en · Watch on YouTube

Full transcript

  1. 0:00大家好,这里是最佳拍档,我是大飞
  2. 0:03今天这期视频,我们再来聊 Harness
  3. 0:05最近
  4. 0:06Anthropic、OpenAI、LangChain、Perplexity这些全球顶流团队
  5. 0:10全都在疯狂加码这个赛道
  6. 0:13甚至有人断言,未来AI的竞争
  7. 0:15不再是模型参数的内卷
  8. 0:17而是Harness架构的博弈
  9. 0:19为什么需要Agent Harness呢?
  10. 0:21这就必须提到行业里目前普遍存在的一个痛点
  11. 0:24很多开发的智能体,演示时流畅无比
  12. 0:27可一旦放到生产环境,立马原形毕露
  13. 0:30任务成功率断崖式下跌
  14. 0:32绝大多数开发者的第一反应是
  15. 0:35模型不行
  16. 0:36要换更强的模型
  17. 0:37但真相是,问题从来不在模型本身
  18. 0:40而在模型周围的那套基础设施
  19. 0:43LangChain用一个实验狠狠打醒了整个行业
  20. 0:46他们完全没改动模型权重和底层算法
  21. 0:49只优化了包裹大语言模型的Harness架构
  22. 0:52就让智能体在TerminalBench 2.0评测中
  23. 0:55从30名开外直接飙升至第5名
  24. 0:58还有研究团队让LLM自主优化Harness架构
  25. 1:01任务通过率直接冲到76.4%
  26. 1:04吊打所有人工设计的系统
  27. 1:06这就是Agent Harness的威力
  28. 1:082026年初
  29. 1:09这个术语被全球AI社区正式定义
  30. 1:12但是它的理念
  31. 1:13其实早就已经渗透在每一个生产级AI应用里
  32. 1:16简单来说
  33. 1:17Agent Harness就是包裹大语言模型的一整套操作系统级软件基础设施
  34. 1:22它把一个只会输出文本、无状态、容易出错的裸大语言模型
  35. 1:27变成有目标、会用工具、能纠错、可持久运行的、靠谱的智能体
  36. 1:32LangChain的维韦克·特里维迪(Vivek Trivedy)说过一句被行业奉为经典的话
  37. 1:36如果你不是模型
  38. 1:37你就是Harness
  39. 1:38这句话其实道破了核心的本质
  40. 1:41我们日常说的搭建一个智能体
  41. 1:43本质上从来不是创造一个会思考的AI
  42. 1:46而是要搭建一套Harness
  43. 1:47再把它对接给模型
  44. 1:49为了让大家方便理解
  45. 1:51我们用计算机架构做一个精准类比
  46. 1:53这也是AI领域公认最贴切的解释
  47. 1:56裸的大语言模型就像一台没有内存、没有硬盘、没有外设驱动的CPU
  48. 2:01只有核心计算能力
  49. 2:03无法独立完成任何实际任务
  50. 2:05上下文窗口充当临时内存
  51. 2:07速度快但容量有限
  52. 2:09向量数据库与长期存储充当硬盘
  53. 2:12容量大但响应较慢
  54. 2:14工具集成就是设备驱动
  55. 2:16让模型能调用外部能力
  56. 2:18而Agent Harness
  57. 2:19就是让这一切协同工作的操作系统
  58. 2:22贝伦·米利奇(Beren Millidge)在2023年的《AI的脚手架》一文中更是直言
  59. 2:27我们通过Agent Harness
  60. 2:28重新发明了冯·诺依曼架构
  61. 2:31应该说,这不是所谓简单的技术封装
  62. 2:33而是计算系统发展的一种必然抽象
  63. 2:36是任何AI智能体在走向实用过程中
  64. 2:39都绕不开的底层逻辑
  65. 2:41在详细拆解Harness之前
  66. 2:43我们先要理清三个容易混淆的工程层级
  67. 2:46这也是理解Harness的基础
  68. 2:48第一层是提示工程
  69. 2:50专注于打磨模型接收的指令
  70. 2:52让模型更精准理解需求
  71. 2:54第二层是上下文工程
  72. 2:56核心是管理模型在不同阶段能看到哪些信息
  73. 2:59避免信息过载
  74. 3:01第三层则是Harness工程
  75. 3:03它涵盖了前两者
  76. 3:04更囊括了工具编排、状态持久化、错误恢复、验证循环、安全管控、生命周期管理等全套的应用基础设施
  77. 3:13很多人误以为Harness只是给提示词套个壳
  78. 3:17这其实是完全错误的认知
  79. 3:18Harness不是简单的包装
  80. 3:20而是一套让自主智能体实现自主思考、自主行动、自主修复的完整系统
  81. 3:26也是所谓玩具级的Demo与生产级的智能体之间的本质区别
  82. 3:31综合Anthropic、OpenAI、LangChain以及全球AI工程社区的最佳实践
  83. 3:36我们可以得出一个结论
  84. 3:38一个真正能落地的生产级Agent Harness
  85. 3:40需要由十二个完全独立、环环相扣的核心模块组成
  86. 3:45少了任何一个
  87. 3:46都无法支撑稳定的智能体运行
  88. 3:48这也正是我们今天这期视频要重点拆解的部分
  89. 3:52第一个模块
  90. 3:53编排循环(Orchestration Loop)
  91. 3:54它是整个智能体的心跳
  92. 3:55是所有行为的核心引擎
  93. 3:58我们常说的ReAct循环
  94. 3:59以及思考-行动-观察(TAO)循环
  95. 4:03本质上都是编排循环的具体实现
  96. 4:06它的运行逻辑非常清晰
  97. 4:08先组装完整提示词
  98. 4:09将系统指令、工具信息、记忆内容、对话历史整合后
  99. 4:14发送给大模型
  100. 4:15等待模型输出后解析内容
  101. 4:17判断是否需要调用工具
  102. 4:19执行工具调用后将结果返回给模型
  103. 4:22重复这个流程
  104. 4:23直到任务完成或触发终止条件
  105. 4:26从代码结构来看
  106. 4:27编排循环往往只是一个简单的while循环
  107. 4:30看似毫无技术含量
  108. 4:32但真正的复杂度全藏在循环管理的细节里
  109. 4:35而非循环本身
  110. 4:37Anthropic对自家编排循环的定位就很有意思
  111. 4:40他们称之为笨循环(dumb loop)
  112. 4:42也就是所有的智能决策、逻辑思考都由模型完成
  113. 4:46Harness的运行时只负责按流程转场、调度任务
  114. 4:49不参与核心推理
  115. 4:51这种设计的优势在于
  116. 4:52让模型专注于智能输出
  117. 4:54Harness专注于稳定执行
  118. 4:56分工明确,大幅降低系统复杂度
  119. 4:59但是,无论是简单的问答任务
  120. 5:01还是复杂的代码重构、数据分析
  121. 5:04所有智能体的行为,都始于编排循环
  122. 5:07也终于编排循环
  123. 5:08它是整个Harness架构的动力核心
  124. 5:11第二个模块,工具(Tools)
  125. 5:12如果说编排循环是智能体的心跳
  126. 5:15那工具就是智能体的手
  127. 5:17是它与现实世界交互的唯一途径
  128. 5:19工具不是随意的函数调用
  129. 5:21而是以标准化Schema形式定义的能力集合
  130. 5:24包含工具名称、功能描述、参数类型、返回格式
  131. 5:28通过注入模型上下文
  132. 5:30让模型明确自己具备哪些操作能力
  133. 5:33工具层的职责远不止是调用这么简单
  134. 5:36它还要完成工具注册、Schema校验、参数提取、沙箱执行、结果捕获
  135. 5:42最后把执行结果格式化成模型能读懂的观察信息
  136. 5:46再回传给编排循环
  137. 5:48如果没有完善的工具层
  138. 5:50模型就算有再强的推理能力
  139. 5:52也只能停留在文本输出
  140. 5:54无法落地任何实际操作
  141. 5:56目前行业的头部厂商都已经构建了完善的工具体系
  142. 6:01比如Anthropic的Claude Code提供六大类核心工具
  143. 6:04覆盖文件操作、搜索、命令执行、网页访问、代码智能、子智能体孵化
  144. 6:10OpenAI的Agents SDK支持三类工具
  145. 6:13分别是函数调用工具、官方托管工具
  146. 6:16包括联网搜索、代码解释器、文件检索等等
  147. 6:19以及MCP服务器工具
  148. 6:21满足不同场景的能力需求
  149. 6:23简单来说,工具层的设计
  150. 6:25直接决定了智能体的能力边界
  151. 6:28第三个模块,记忆(Memory)
  152. 6:29它是智能体跨越时间尺度、保持任务连续性的关键
  153. 6:33让智能体不再像鱼的记忆一样
  154. 6:36Harness的记忆体系不是单一存储
  155. 6:38而是在多个时间维度同时运作
  156. 6:40分为短期记忆与长期记忆
  157. 6:43短期记忆就是单次会话内的对话历史
  158. 6:46记录当前任务的所有交互信息
  159. 6:48确保模型在多轮对话中不脱节
  160. 6:50长期记忆则实现跨会话持久化
  161. 6:53即便智能体重启、服务中断
  162. 6:55也能保留之前的任务进度、决策记录
  163. 6:58不同框架的长期记忆实现方式各有特色
  164. 7:02Anthropic通过claude
  165. 7:03md项目文件和自动生成的MEMORY.md实现持久化
  166. 7:08LangGraph采用按命名空间组织的JSON存储
  167. 7:11OpenAI则支持基于SQLite或Redis的会话存储
  168. 7:15兼顾性能与稳定性
  169. 7:16Claude Code的三级记忆层级设计
  170. 7:19堪称行业标杆
  171. 7:20第一层是轻量级索引,单条约150字符
  172. 7:24常驻内存,快速响应
  173. 7:25第二层是详细主题文件,按需加载
  174. 7:28平衡容量与速度
  175. 7:30第三层是原始交互记录
  176. 7:32仅通过搜索访问
  177. 7:33保证数据完整性
  178. 7:35这里有一个核心设计原则
  179. 7:37智能体不会完全依赖记忆
  180. 7:39而是将记忆作为一种提示
  181. 7:41行动前会与实际状态核对验证
  182. 7:43避免因记忆错误导致任务失败
  183. 7:46第四个模块
  184. 7:47上下文管理(Context Management)
  185. 7:48这是生产级智能体最容易默默翻车的重灾区
  186. 7:52也是所有AI工程师必须攻克的难题
  187. 7:55核心痛点只有一个
  188. 7:56上下文腐烂(Context Rot)
  189. 7:57斯坦福大学的《Lost in the Middle 》研究与Chroma团队的实验相互印证了一个结论
  190. 8:03当关键信息落在上下文窗口中间位置时
  191. 8:06模型的性能会暴跌30%以上
  192. 8:09即便如今主流模型已经支持百万级的Token上下文了
  193. 8:13随着内容的不断膨胀
  194. 8:14模型的指令遵循能力、推理准确率仍然会持续下降
  195. 8:19为了解决这个问题
  196. 8:20生产环境已经形成了一套成熟的应对策略
  197. 8:23第一种是压缩(Compaction)
  198. 8:25当上下文接近上限时
  199. 8:26对对话历史做摘要处理
  200. 8:29保留核心决策和未解决的问题
  201. 8:31丢弃冗余的工具输出
  202. 8:33第二种是观察屏蔽(Observation Masking)
  203. 8:35隐藏旧的工具输出细节
  204. 8:37但是保留工具调用记录
  205. 8:38这样既能减少Token消耗
  206. 8:40又不丢失关键逻辑
  207. 8:42第三种是即时检索(Just-in-time Retrieval)
  208. 8:44维护轻量级索引
  209. 8:45动态加载所需数据
  210. 8:47比如Claude Code用grep、glob、head、tail命令精准提取内容
  211. 8:52而非加载完整文件
  212. 8:54第四种是子智能体委派(Sub-agent Delegation)
  213. 8:56将复杂任务拆分给子智能体探索
  214. 8:58最终只返回1000-2000个Token的精简摘要
  215. 9:02大幅降低主智能体的上下文压力
  216. 9:05Anthropic的上下文工程指南中
  217. 9:06明确了这一步的终极目标
  218. 9:08那就是找到最小的高信噪比Token集合
  219. 9:12用最少的关键信息
  220. 9:13最大化实现预期任务效果
  221. 9:16这是上下文管理的核心准则
  222. 9:18第五个模块
  223. 9:19提示词组装(Prompt Assembly)
  224. 9:20它定义了模型在每一轮推理中看到的世界
  225. 9:23是连接上下文、记忆、工具、用户需求的最后一环
  226. 9:27提示词组装不是简单的拼接
  227. 9:29而是分层堆叠的结构化过程
  228. 9:32优先级明确、逻辑清晰
  229. 9:34标准的组装顺序通常是
  230. 9:36先通过系统提示词定义智能体的身份和核心规则
  231. 9:40再通过工具定义告知可用的能力
  232. 9:43然后通过记忆文件总结历史经验
  233. 9:45进而根据对话历史获取当前的任务进度
  234. 9:48最后再根据当前用户的消息得到最新需求
  235. 9:52OpenAI的Codex则采用了严格的优先级栈
  236. 9:55服务器控制的系统消息优先级最高
  237. 9:57随后依次是工具定义、开发者指令和用户指令
  238. 10:01最后才是对话历史
  239. 10:03这种设计确保核心规则不会被冗余信息覆盖
  240. 10:07保证智能体行为不偏离预期
  241. 10:09在实际应用过程中
  242. 10:11提示词组装的质量
  243. 10:12直接会影响模型的输出准确率
  244. 10:15这也是Harness工程中最考验工程师细节把控能力的环节
  245. 10:19第六个模块
  246. 10:20工具调用与结构化输出(Tool Calling & Structured Output)
  247. 10:22它是模型与Harness之间的通用语言
  248. 10:25解决了传统自由文本输出难以解析、容易出错的问题
  249. 10:29现代生产级Harness完全依赖原生工具调用
  250. 10:32模型不再输出模糊的自然语言指令
  251. 10:35而是直接返回标准化的tool_calls结构化对象
  252. 10:38包含工具名称、参数值等明确信息
  253. 10:42这样一来
  254. 10:42Harness的判断逻辑就变得极为简单
  255. 10:45只需要解析模型输出
  256. 10:47如果存在工具调用
  257. 10:48就执行对应工具并继续循环
  258. 10:51如果没有工具调用
  259. 10:52直接将模型输出作为最终答案
  260. 10:55终止循环
  261. 10:56对于结构化输出
  262. 10:57OpenAI和LangChain都支持通过Pydantic框架进行Schema约束
  263. 11:01确保输出的格式符合预期
  264. 11:03降低解析失败率
  265. 11:05当然
  266. 11:06一些遗留方案在边缘场景仍然有用
  267. 11:08比如RetryWithErrorOutputParser
  268. 11:11会将原始的提示词、失败输出和解析错误一并返回给模型
  269. 11:16让模型自主修正
  270. 11:17但是这种方式效率较低
  271. 11:19只建议作为补充方案使用
  272. 11:21第七个模块
  273. 11:22状态与检查点(State & Checkpointing)
  274. 11:23它是智能体实现断点续跑、可回溯和可调试的核心
  275. 11:27解决了长周期任务中断后无法恢复的痛点
  276. 11:31长流程任务
  277. 11:32比如大型项目代码重构、多步骤数据分析
  278. 11:35可能持续几个小时甚至几天
  279. 11:38一旦中途崩溃
  280. 11:39若没有状态保存,所有进度都会归零
  281. 11:42不同框架的状态管理方案差异明显
  282. 11:45LangGraph将状态建模为类型化字典
  283. 11:48通过归约器合并状态更新
  284. 11:50检查点在超级步骤边界触发
  285. 11:52支持中断后无缝恢复
  286. 11:54甚至能实现时光倒流式的调试
  287. 11:57OpenAI提供了四种互斥的状态策略
  288. 12:00分别是应用内存、SDK会话、服务器端对话API
  289. 12:04以及轻量级的previous_response_id链式调用
  290. 12:08从而适配不同的部署场景
  291. 12:10Claude Code的设计则极具特色
  292. 12:12用Git提交作为检查点
  293. 12:14用进度文件作为结构化草稿本
  294. 12:17借助Git的版本控制能力
  295. 12:19实现任务进度的精准回溯与管理
  296. 12:22第八个模块
  297. 12:23错误处理(Error Handling)
  298. 12:24它是智能体在复杂环境中稳定运行的安全网
  299. 12:27很多人忽视了一个残酷的数学事实
  300. 12:30一个10步的任务流程
  301. 12:31即便每一步成功率高达99%
  302. 12:34端到端的总成功率也只有约90.4%
  303. 12:38错误会像滚雪球一样不断放大
  304. 12:40最终导致任务彻底失败
  305. 12:42因此
  306. 12:43生产级的Harness必须建立完善的错误分类与处理机制
  307. 12:47LangGraph的设计堪称行业典范
  308. 12:49它将错误分为四类
  309. 12:51第一类是瞬时错误
  310. 12:52比如网络波动、API限流
  311. 12:55采用带退避策略的重试机制
  312. 12:57第二类是模型可恢复错误
  313. 12:59比如参数错误、逻辑失误
  314. 13:02将错误包装成工具消息返回给模型
  315. 13:04让模型自主调整
  316. 13:06第三类是用户可修复的错误
  317. 13:08比如权限不足或者配置错误
  318. 13:11通过中断流程等待人工输入
  319. 13:13第四类是意外错误
  320. 13:14比如系统崩溃或者底层异常
  321. 13:17这种呢会直接抛出错误
  322. 13:19便于调试
  323. 13:20Anthropic的策略更侧重流程稳定性
  324. 13:23在工具处理器内部捕获所有失败
  325. 13:25将错误结果返回给模型
  326. 13:27确保主编排循环不中断
  327. 13:30Stripe的生产级Harness则更为保守
  328. 13:32将重试次数严格限制在两次以内
  329. 13:35避免无限重试引发的资源耗尽
  330. 13:38第九个模块,护栏(Guardrails)
  331. 13:40它是智能体的安全红线
  332. 13:41防止智能体做出越权、有害、违规操作
  333. 13:45是企业级应用的核心保障
  334. 13:47OpenAI的SDK实现了三层防护体系
  335. 13:50第一层是输入护栏
  336. 13:52在智能体接收用户请求时运行
  337. 13:54过滤恶意和违规输入;
  338. 13:56第二层是输出护栏
  339. 13:58在最终输出前运行
  340. 14:00确保输出内容合规安全;
  341. 14:02第三层是工具护栏
  342. 14:04每次调用工具时都运行
  343. 14:06管控工具调用权限,防止高风险操作
  344. 14:09一旦触发护栏的绊线机制
  345. 14:11智能体会立即终止当前操作
  346. 14:14实现紧急制动
  347. 14:15Anthropic的护栏设计则更加彻底
  348. 14:18在架构上将权限执行与模型推理完全解耦
  349. 14:22模型只负责思考想做什么
  350. 14:24工具系统负责判断能做什么
  351. 14:26两者互不干扰
  352. 14:27Claude Code可以独立管控大约40种离散的工具能力
  353. 14:31分三个阶段严格把关
  354. 14:33包括在项目加载时建立信任体系
  355. 14:36每次调用工具前检查权限
  356. 14:39以及高风险操作
  357. 14:40必须获得用户的明确确认
  358. 14:42从根源上杜绝安全风险
  359. 14:45第十个模块
  360. 14:46验证与反馈(Verification & Feedback)
  361. 14:47这是玩具级智能体和生产级智能体的分水岭
  362. 14:51没有验证的智能体
  363. 14:52输出结果永远不可信
  364. 14:54Anthropic推荐了三种行业通用的验证方式
  365. 14:57第一种是基于规则的反馈
  366. 14:59通过测试用例、Linter代码检查
  367. 15:01以及类型检查器等确定性工具
  368. 15:04验证输出结果的准确性
  369. 15:06第二种是视觉反馈
  370. 15:08借助Playwright等工具截图
  371. 15:10检查UI任务或可视化操作的完成效果;
  372. 15:13第三种是让模型当裁判
  373. 15:15用独立的子智能体评估主智能体的输出
  374. 15:19从语义、逻辑和效果等维度给出反馈
  375. 15:22Claude Code的创始人鲍里斯·切尔尼(Boris Cherny)明确指出
  376. 15:26给智能体加入验证自身工作的机制
  377. 15:28能让输出质量提升2到3倍
  378. 15:31所以说,验证循环不是额外开销
  379. 15:34而是保证智能体产出价值的必要投入
  380. 15:37第十一个模块
  381. 15:38子Agent编排(Subagent Orchestration)
  382. 15:40它可以让单个智能体升级为智能体集群
  383. 15:43从而解决复杂、大规模、多领域的任务需求
  384. 15:46当任务涉及多个专业领域、工具数量过多、流程过于复杂时
  385. 15:51单个智能体的性能会大幅下降
  386. 15:53子Agent编排就是最优解
  387. 15:55目前的主流框架都有成熟的子Agent实现方案
  388. 15:59比如Claude Code支持三种执行模式
  389. 16:01Fork模式创建父上下文的精确副本
  390. 16:05Teammate模式通过独立终端面板通信
  391. 16:08Worktree模式为每个Agent分配独立Git工作树
  392. 16:11OpenAI的SDK支持两种模式
  393. 16:14Agents-as-tools让专家Agent处理细分任务
  394. 16:18Handoffs模式实现任务全面交接
  395. 16:21LangGraph则将子Agent实现为嵌套状态图
  396. 16:24通过图结构管理任务流转
  397. 16:27第十二个模块
  398. 16:27初始化与环境搭建(Initialization & Environment Setup)
  399. 16:30它是所有模块协同工作的起点
  400. 16:32定义了智能体从启动到运行的完整生命周期
  401. 16:35我们可以通过一个标准执行周期
  402. 16:38来理清所有模块是如何联动的
  403. 16:40第一步,提示词组装
  404. 16:42Harness整合系统提示、工具Schema、记忆文件、对话历史、用户消息
  405. 16:47构建一个完整的输入
  406. 16:49第二步,模型推理
  407. 16:50将组装好的提示词发送给模型
  408. 16:53生成文本或工具调用输出
  409. 16:55第三步,输出分类
  410. 16:57判断是否需要工具调用、任务交接或直接输出答案
  411. 17:01第四步,工具执行
  412. 17:02校验参数、检查权限、沙箱运行
  413. 17:05只读操作并发、写操作串行
  414. 17:08第五步,结果打包
  415. 17:09将工具执行结果和错误信息
  416. 17:12格式化为模型的可读消息
  417. 17:14第六步,上下文更新
  418. 17:16将结果追加到对话历史
  419. 17:17触发上下文压缩
  420. 17:19第七步,循环执行
  421. 17:21回到第一步重复流程
  422. 17:22直到满足终止条件
  423. 17:24终止条件是多层级的
  424. 17:26包括模型输出无工具调用、达到最大轮次、Token预算耗尽、护栏触发、用户中断、安全拒绝等等
  425. 17:34简单的任务1-2轮即可完成
  426. 17:36复杂的重构任务可能需要几十轮循环、串联几十次工具调用
  427. 17:40全靠初始化与环境搭建保证流程有序推进
  428. 17:44拆解完十二大核心模块
  429. 17:46我们再来看看全球主流智能体框架
  430. 17:49是如何落地Agent Harness的
  431. 17:51它们的设计哲学、技术路径、适用场景有何差异
  432. 17:54这对我们选择、搭建自己的智能体至关重要
  433. 17:58首先是Anthropic Claude Agent SDK
  434. 18:01它是薄Harness哲学的极致代表
  435. 18:03核心是信任模型和简化框架
  436. 18:06通过query()函数创建智能体循环
  437. 18:08运行时是极简的笨循环
  438. 18:11遵循从收集到执行
  439. 18:12再到验证(Gather-Act-Verify)的流程
  440. 18:14状态管理用Git提交
  441. 18:15多智能体支持Fork、Teammate、Worktree三种模式
  442. 18:19核心优势是轻量、高效、与模型深度耦合
  443. 18:23其次是OpenAI Agents SDK
  444. 18:25采用代码优先设计理念
  445. 18:27通过Runner类实现Harness
  446. 18:29支持异步、同步、流式三种运行模式
  447. 18:32工作流用原生Python编写
  448. 18:34无需学习专用图DSL
  449. 18:36状态管理提供四种策略
  450. 18:38多智能体支持Agents-as-tools与交接
  451. 18:41侧重开发者友好、快速落地
  452. 18:44适合快速开发生产级应用
  453. 18:46然后是LangGraph
  454. 18:48从LangChain进化而来
  455. 18:49采用图结构设计
  456. 18:50将Harness建模为显式状态图
  457. 18:53通过llm_call和tool_node两个节点和条件边来实现流程控制
  458. 18:58支持嵌套状态图
  459. 19:00侧重显式流程控制、可调试性
  460. 19:02适合复杂、多分支的长流程任务
  461. 19:05还有CrewAI
  462. 19:06主打基于角色的多智能体架构
  463. 19:09将智能体、任务、团队解耦
  464. 19:11通过Flows层实现路由与验证
  465. 19:14侧重多智能体协作、角色分工
  466. 19:16适合团队式、多角色的复杂任务场景
  467. 19:19最后是AutoGen
  468. 19:20现在已经演进为了微软智能体框架
  469. 19:23开创了对话驱动编排的先河
  470. 19:25支持顺序、并发、群组聊天、交接、magentic五种编排模式
  471. 19:30核心是将对话作为协作协议
  472. 19:33适合开放式、多智能体交互的场景
  473. 19:36这五大框架,核心模式高度趋同
  474. 19:38都围绕编排循环、工具、记忆、上下文等核心模块构建
  475. 19:43但是设计哲学截然不同
  476. 19:45没有绝对的优劣,只有场景的适配
  477. 19:48理解了Harness的模块与框架
  478. 19:50我们再通过脚手架隐喻
  479. 19:52来看看Harness与模型的共同进化规律
  480. 19:55这也是未来AI架构的核心趋势
  481. 19:57我们常见的建筑上的脚手架
  482. 19:59是临时基础设施
  483. 20:01帮助工人完成施工
  484. 20:03大楼建成后就会拆除
  485. 20:05Agent Harness也是如此
  486. 20:07它是让模型落地为智能体的临时支撑
  487. 20:09模型能力越强
  488. 20:11Harness的复杂度就应该越低
  489. 20:13行业实践已经验证了这一点
  490. 20:15Manus项目在半年内重构五次
  491. 20:17每次都做减法
  492. 20:18将复杂的工具定义简化为通用Shell执行
  493. 20:22将管理智能体简化为结构化交接
  494. 20:24性能反而持续提升
  495. 20:26这背后正是共同进化原则
  496. 20:28现代大模型在后训练阶段
  497. 20:30会将特定Harness纳入训练循环
  498. 20:33模型与框架深度耦合
  499. 20:35模型内化的能力越多
  500. 20:37Harness需要的封装就越少
  501. 20:39一个优秀的Harness设计
  502. 20:41必须通过面向未来的测试
  503. 20:43指的是模型升级后
  504. 20:44智能体性能自然提升
  505. 20:46无需增加Harness复杂度
  506. 20:48未来的行业趋势
  507. 20:49一定是更薄的Harness、更强的模型、更模块化的架构
  508. 20:54最后
  509. 20:55我们来总结搭建Agent Harness必须面对的七大架构抉择
  510. 20:59这是所有AI工程师的核心考题
  511. 21:02第一,选择单智能体还是多智能体
  512. 21:05行业共识是先榨干单智能体性能
  513. 21:07多智能体有额外开销
  514. 21:09只有工具重叠超10个或者任务域明显分离的时候
  515. 21:13才考虑拆分
  516. 21:14第二
  517. 21:15选择ReAct循环还是计划-执行循环
  518. 21:18ReAct灵活但是每步成本高
  519. 21:21而计划执行会分离规划与执行
  520. 21:23LLMCompiler数据显示比顺序ReAct快3.6倍
  521. 21:28第三,上下文管理策略,有五种方法
  522. 21:31包括基于时间清理、对话摘要、观察掩码、结构化笔记、子智能体委派
  523. 21:37核心是保留推理痕迹,减少Token消耗
  524. 21:41第四,验证循环设计
  525. 21:43通过计算式验证
  526. 21:44比如测试、Linter来提供确定性
  527. 21:47以及用推理验证
  528. 21:48比如让模型做裁判来解决语义问题
  529. 21:51两者结合最优
  530. 21:53第五,权限与安全
  531. 21:55宽松模式高效但是有风险
  532. 21:57严格模式安全但是低效
  533. 21:59需要根据部署场景来平衡
  534. 22:01第六,工具范围
  535. 22:03简单来说,工具越多性能越差
  536. 22:05Vercel砍掉80%的工具后性能反而提升
  537. 22:08原则是只暴露当前步骤所需要的最小工具集
  538. 22:12第七,Harness的厚度
  539. 22:14薄Harness需要信任模型
  540. 22:16厚Harness需要编码来控制逻辑
  541. 22:18模型越强,越应该偏向薄Harness
  542. 22:21回到我们最开始的问题
  543. 22:22为什么有的智能体演示的时候十分流畅
  544. 22:25生产环境却非常翻车呢?
  545. 22:27答案从来不是模型不行
  546. 22:29而是Harness的架构可能不够完善
  547. 22:32两个一模一样的模型
  548. 22:33只因为Harness设计不同
  549. 22:35性能可能就会天差地别
  550. 22:372026年的AI竞争
  551. 22:38也早已不是单纯模型参数的内卷了
  552. 22:41还是Harness工程的较量
  553. 22:43如何把上下文当稀缺资源管理
  554. 22:46如何设计拦截错误的验证循环
  555. 22:48如何构建无幻觉的记忆系统
  556. 22:50如何平衡脚手架与模型的能力
  557. 22:53这才是AI工程化的核心硬骨头
  558. 22:56下一次当你的智能体掉链子时
  559. 22:58先别着急责怪模型
  560. 23:00低头看看它的Harness
  561. 23:01也许问题大概率就出在这里
  562. 23:03感谢收看本期视频,我们下期再见

About this transcript

This page contains the full transcript of Agent Harness十二大模块完全解析 | Harness工程 | 影响模型性能 | Anthropic | OpenAI | LangGraph | 七大架构抉择 by 最佳拍档, generated from the public captions YouTube serves with the video. The transcript has 614 words across 562 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.