Agent Harness 系列 · 第 2篇|同一个问题三种回答

👨 作者简介:大家好,我是唐璜Taro,全栈 领域创作者

✒️ 个人主页 :唐璜Taro

🚀 支持我:点赞👍+📝 评论 + ⭐️收藏


同一个问题,三种回答

上一篇讲了公式:Agent = Model + Harness。这一篇只做一件事------用同一个问题,看壳加上去之后,回答怎么变。

问题固定为:

看看 workspace 里有什么,并总结 README。

目录里真实只有两份文件:README.md 和 notes.txt。README 开头写着 "Workspace Sample"。


第一种:只有模型

脚本只发一轮聊天,不给任何工具。系统提示甚至写明:你看不到本地文件。

这时模型往往会「自信地」列出一串文件名。那些名字和真实目录对不上。它不是在撒谎,它是在用语言能力补全一个它根本没有观测到的世界。

这就是基线。后面每加一层壳,都要能打赢这个基线,否则壳是装饰。


第二种:模型 + 一次工具往返

给它三个工具:列目录、读文件、写文件。流程只有两拍:

复制代码
用户问题
  → 模型决定调用 list_dir / read_file
  → 程序在本地执行,把结果以 role=tool 塞回去
  → 模型根据真实结果作答

终端里应该能看到类似:

复制代码
tool_call: list_dir
file    README.md
file    notes.txt

tool_call: read_file README.md
# Workspace Sample
...

最终总结会提到 Workspace Sample,而不是凭空文件名。

这里有一个容易忽略的工程细节:工具失败要变成一段文字还给模型 ,不要让异常把整个循环打死。模型下一轮需要读到 error: path not found,而不是进程已经退出。

工具说明书(schema)也要写给人看、更要写给模型看:路径是相对目录,不要传绝对路径。description 写清楚,比事后在提示词里吼「不许乱调」更有效。


第三种:规则 + 多步循环

一次往返够用来讲清消息形状,不够用来干活。真实任务常常是:先列目录,再读两份文件,再写一份摘要。

多步循环长这样:

复制代码
while 步数 < 上限:
    问模型
    如果没有工具调用 → 这就是最终回答,结束
    否则执行工具,把结果追加进上下文,继续

规则不再写死在代码字符串里,而是放进按文件名排序的 Markdown:身份、安全、何时用哪个工具、输出格式。启动时合并成系统提示。关掉规则开关,就退回一句最短提示------方便做对照,而不是改代码。


对照时看什么

版本 你应该在终端里看到
只有模型 文件名对不上真目录
一次工具往返 tool_call 和真实文件内容
多步 + 规则 多步工具后给出总结;越权请求被拒绝或工具报错

三档用的可以是同一个模型。差别不在「更聪明」,在于有没有手、有没有循环、有没有规矩。


下一篇

下一篇把「规矩」和「循环」拆开讲:为什么系统提示要拆成规则文件,以及步数上限为什么是第一道保险丝。

相关推荐
weixin_468466856 分钟前
从“看懂”到“做到”:视觉-语言-动作模型如何让机器人真正执行指令
人工智能·ai·机器人·大语言模型·前沿科技
朋友圈自动点赞工具8 分钟前
科学AI插件化:从蛋白质结构到古籍修复
人工智能
龙粤GEO1 小时前
实体Entity在GEO中代表什么含义
人工智能
前端精髓1 小时前
结构化输出with_structured_output(抽卡)
python·langchain
尹人入圣2 小时前
目前热门的IP驱动产业新场景新工具
网络·python·网络协议·tcp/ip
剑雨巍巍2 小时前
AI Agent面试之基础概念
人工智能
微帧Visionular2 小时前
AI视频单帧清晰,播放时却闪烁,原因是什么?
人工智能·深度学习·音视频
武子康2 小时前
MultiNet6 空闲崩溃:`EXCVADDR=0x8` 后又出现 `CORRUPT HEAP`
人工智能·后端·agent
云智慧AIOps社区2 小时前
智能巡检机器人应用场景解析:机房巡检、园区安防、管廊巡视与展厅导览
人工智能·机器人·具身智能·智能巡检机器人·企业级智能巡检机器人·机房巡检机器人·导览机器人
EnCi Zheng2 小时前
Agent 如何进行工具调用:从一次 Function Calling 到生产级工具编排的完整链路
大数据·人工智能·agent·ai编程·工具调用