首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >一次对话的内部骨架:拆开 Harness 的主循环与事件总线

一次对话的内部骨架:拆开 Harness 的主循环与事件总线

作者头像
顺势而为
发布于 2026-10-26 18:29:04
发布于 2026-10-26 18:29:04
1720
举报
概述
几乎所有 Agent 框架最后都会长成同一个样子:模型说要调工具 → 执行 → 把结果喂回去 → 再问模型。真正拉开差距的,是这套循环怎么抽象。Harness 给了两个答案:
文章被收录于专栏:技术专栏Herness技术专栏Herness

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 01 把一次对话拆成两层
  • 02 turn():回合打开与步循环
  • 03 preStep():模型看到什么,由它决定
  • 04 step():模型请求 + 工具执行
  • 05 buildRequest():发不发得出去,由它决定
  • 06 先把事件总线本身看清楚
  • 07 五种派发模式,一次讲清
    • 模式 1 emit() —— 同步广播,只通知不等待
    • 模式 2 parallel() —— 并发执行并等待,失败聚合
    • 模式 3 serial() —— 串行 await,可短路
    • 模式 4 bail() —— serial 的同步版
    • 模式 5 waterfall() —— 瀑布链,可双向改写
  • 08 实战:跟着 agent/pre-step 走一遍瀑布链
    • 第 0 步 先记住「接力棒」模型
    • 第 1 步 preStep() 从哪里发起
    • 第 2 步 dispatch.waterfall() 到底做了什么
    • 第 3 步 Cordis 怎么把监听器串成链
    • 第 4 步 agent-instructions:工作区上下文怎么插进去
    • 第 5 步 time-context:当前时间怎么追加到末尾
    • 第 6 步 收口:preStep() 拿到结果之后
  • 09 收尾:三条心法与三个练习
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档