Agent 里的模型与 Harness 各负责什么
经典公式:Agent = 模型 + Harness
官方把这句话放在最显眼的位置。拆开看:
| 角色 | 承担什么 | 不承担什么 |
|---|---|---|
| 模型 | 理解任务、推理决策、生成代码与指令 | 直接接触你的文件系统、执行命令、记住历史 |
| Harness | 把决策落成真实动作:执行工具、管理会话、控制权限、记录轨迹 | 替模型思考 |
模型是智能体的「灵魂」,Harness 是让智能体在真实环境里持续工作的「躯体」:感知环境、使用工具、在多轮交互中保持状态。没有 Harness,模型只能输出一段文字告诉你「你可以这样做」;有了 Harness,它会直接做完,并且每一步都有据可查。
这套分工为什么重要
- 责任边界清晰:出问题时能区分是模型决策错了,还是运行环境把事办砸了——因为 Harness 记录了模型看到的一切(见会话日志记录哪些内容)。
- 模型可换:Harness 层不绑死某一家模型。默认配置面向 DeepSeek 系列,也可以在模型配置里接入其他 OpenAI 兼容端点。
- 骨架可换:反过来说,工具集、沙箱、循环这些「身体部件」全是插件,替换它们不影响模型——这正是把 Agent 跑在手机上的社区插件能存在的原因:它不改主程序源码,只是挂载到旁边。
对使用者的实际含义
- 想测不同模型在同任务下的表现:换模型配置即可,工具与会话环境不变。
- 想约束智能体能做什么:动的是 Harness 侧的权限策略与插件组合,不用重新训练或微调任何东西。
- 想在移动场景复用同一份会话:手机端只是换了个「屏幕」,躯体仍在电脑上跑。