Harness 核心 · 模型周围的 Harness

一次对话背后的 5 条消息

拆解 Function Calling 真实链路:用户看到 1 条回复,背后是 5 条 API 消息

本页解决的问题

先给结论

「一次对话背后的 5 条消息」要解决的关键问题是什么?

拆解 Function Calling 真实链路:用户看到 1 条回复,背后是 5 条 API 消息

判断标准

让这个结论先证明自己值得留下。 把这一页当成决策工具,而不是需要背下来的定义。把概念连到一个真实任务、一个可观察结果,以及一个能改变你判断的失败上。

下一步

写下一个问题:试完这个方法后,你能用什么证据回答它?

常见误区

结论听起来很完整,却没有检查最关键的假设。

实际运行过程
消息 0
Token 0
API 0
共 7 步 · 看一次查天气背后发生了什么
JSON 格式参考
messages 数组的完整格式
{ "messages": [ { "role": "system", "content": "指令" }, { "role": "user", "content": "用户的话" }, { "role": "assistant", "content": null, "tool_calls": [{ "name": "…", "arguments": {…} }] }, { "role": "tool", "tool_call_id": "…", "content": "结果" }, { "role": "assistant", "content": "最终回答" } ] } // 共 5 条消息 // 2 次模型调用 // 1 次工具调用
Takeaway
Takeaway 用户看到的是一句回答,API 里跑了 5 条消息、2 次模型调用、1 次外部 API。产品设计的本质就是:决定这些环节中,哪些让用户感知、哪些静默处理。

「JSON 格式参考」为什么要看操作

「拆解 Function Calling 真实链路:用户看到 1 条回复,背后是 5 条 API 消息」把结构落到了一个具体动作。这里真正要比较的不是名词谁更高级,而是数据如何被放置,以及最常发生的操作需要走多远。

读懂结构,要同时看访问方式和变化方式

「拆解 Function Calling 真实链路:用户看到 1 条回复,背后是 5 条 API 消息」揭示了一个容易被忽略的取舍:按位置读取、按键查找、从两端进出、插入新元素和遍历关系,适合的组织方式并不相同。一个结构在某个操作上很快,不代表它在所有操作上都快。

把规模和更新频率一起算进去

实践时可以把「拆解 Function Calling 真实链路:用户看到 1 条回复,背后是 5 条 API 消息」当作边界提醒:先写下数据量、最常用的操作和允许的延迟,再看 AI 给出的结构是否真的匹配。

从这个例子继续往下看

页面先提出「▼ messages 数组的完整格式 { "messages" : [ { "role" : "system" , "content" : "指令" }, { "role" : "user" , "content" : "用户的话" }, { "role" : "assistant" , "content" : null , "tool_calls" : [{ "name" : "…" , "arguments"…」。接下来不要只记住这句话,可以把它变成一个小练习:写下输入、预期结果,以及什么现象会让你重新检查这个判断。

把这条判断带到下一个场景

遇到一个新的数据结构时,不要从定义开始背。先写出最频繁的操作,再估计数据量和更新方式,最后检查结构是否让这三个条件同时成立。

  • 「JSON 格式参考」:▼ messages 数组的完整格式 { "messages" : [ { "role" : "system" , "content" : "指令" }, { "role" : "user" , "content" : "用户的话" }, { "role" : "assistant" , "content" : null , "tool_calls" : [{ "name" : "…" , "arguments"…

最后做一次小而可逆的练习:把页面里的判断放进一个真实输入,写下预期结果和会让你停下来复核的信号。

标记为已学完 阅读进度会自动记录
← 上一篇下一篇 →

继续阅读

同一条线上的下一篇。

文章讨论

读到这里,留下一个判断。

把刚想明白的地方、还没想通的问题,留给下一位一起学习的人。

正在讨论 一次对话背后的 5 条消息 模型周围的 Harness
3条讨论文章讨论 · 与共学社区同步
在共学社区查看
AM
Asha Morgan内容编辑
观点实践记录

我把这篇文章里的一个判断改写成了今天可以验证的小实验。比记住结论更有用的是,知道下一步要观察什么。

文章讨论7 有帮助
LH
Lin Harper独立开发者
观点观点

读完以后我先回头找它成立的条件,而不是直接把方法搬进项目。这个顺序让后面的取舍清楚很多。

文章讨论5 有帮助
KM
Kiki Moore产品运营
问题问题

如果把这个判断放到真实工作里,最先需要补的约束是什么?我想知道从阅读到第一次实践之间,哪一步最值得先做。

文章讨论4 有帮助