选型指南 架构设计 含可复制代码

工具返回值要按「给人看」设计:结构化、摘要与溯源

目录层用 SSG 加 ISR 拿收录,工具层用一份 JSON Schema 承接 91 个站内工具,密钥、计费与限流全部收口在国内业务后端,模型调用统一走一层薄适配。这篇把我们真实的目录结构、Schema 字段定义、路由闸门、预扣结算伪代码和合规清单完整摊开。

陈
陈默架构组
2026-09-28 · 14 分钟阅读 · 8,432 次浏览

空对象无法区分「没有数据」与「调用失败」。

工具返回的东西,模型往往"读不懂"

工具调用常见问题是:接口返回一大坨 JSON ✗,模型抓不到重点 ✔,

于是要么漏用结果 ✗、要么把无关字段当结论 ✗。

工具返回值要按"给人看"的标准设计 ✔:结构化 + 摘要 + 溯源 ✔。

一、结构化:字段名与类型要稳定

· 稳定字段(status / data / error / trace_id ✔)比"每次不一样的结构"好得多 ✔;

· 状态要显式(成功/部分成功/失败 ✔),不要用"有没有字段"暗示结果 ✗;

· 数值带单位({"amount": 1280, "currency": "CNY"} ✔ 而不是 "1280元" ✗);

· 时间用 ISO 8601 ✔(见多语言坑那篇 ✔)。

二、摘要:让模型一次就抓重点

除了原始数据,额外给一段人类可读摘要 ✔:

```

{ "status": "ok",

"summary": "查到 3 条订单:最近一单 2024-05-12,金额 1280 CNY,状态已发货",

"data": [ ... ],

"trace_id": "..." }

```

摘要要包含"决策需要的最小信息" ✔(数量、最相关的一条、异常 ✔),

但不能替代 data ✗(模型需要细节时还能查 ✔)。

⚠️ 摘要也要可核对 ✔:摘要里的数字必须能在 data 里找到(程序做子串/数值校验 ✔)。

否则摘要会变成第二处编造源 ✗。

三、溯源:出问题时能查

· trace_id(把这次工具调用与上游请求串起来 ✔);

· 数据版本/时间("截至 2024-05-12 的数据" ✔ —— 让模型能说实话 ✔);

· 来源(哪个系统、哪张表/接口 ✔)。

四、给模型的"使用说明"要写在工具描述里

· 这个工具适合什么、不适合什么 ✔;

· 关键字段的含义与常见陷阱(例如"金额已含税" ✔);

· 失败时返回什么(含错误码含义 ✔),便于模型决定是否重试 ✔。

五、三个反模式

· 返回整表(几百行 ✗)→ 模型读不完,也容易误用 ✔;

· 返回空对象({} ✔)→ 无法区分"没有数据"与"调用失败" ✗;

· 字段名用缩写(amt/st ✔)→ 模型猜错 ✗(见工具设计那篇:命名要直白 ✔)。

一条判据

> 把工具返回值单独贴给一个不熟悉该系统的人 ✔,他能否在 30 秒内说出"发生了什么、关键数字是多少" ✔?

> 不能,说明返回值还没按"给人看"设计 ✗。

本文由云枢 AI导航整理,内容以官方来源为准。

相关文章

顺序阅读

← 上一篇:灰度期间盯什么:四组指标与写死的回滚阈值
下一篇:把提示词改动接进流水线:四道关与各自判据 →

第 72 / 171 篇

术语速查 · 本页出现的 12 个词展开看中文名与一句话解释,点术语看完整条目
  • token词元:模型处理文本的最小单位,中文约 1–2 个汉字;计费与上下文长度都按它算。
  • 转写 / 字幕Transcription:把音视频人声逐句变成带时间戳的文字稿,便于做字幕与章节切分。
  • SSE服务器发送事件:服务器通过长连接持续推送增量文本,是对白逐字出现的常见实现。
  • API应用编程接口:程序之间约定的调用方式;站内工具由服务端调用,浏览器里不出现密钥。
  • CDN内容分发网络:把静态资源缓存到离用户更近的节点,缩短加载时间。
  • 缓存Cache:把结果暂存复用,复用得越多平均耗时越低;需要约定过期与刷新策略。
  • 限流Rate Limit:限制单位时间内的请求次数,防止单用户或异常流量打满服务端。
  • SSG静态站点生成:构建阶段就生成 HTML,访问时直接返回,不必每次请求都渲染。
  • ISR增量静态再生:先返回静态页,再在后台按需重新生成,兼顾速度与更新时效。
  • 灰度发布Canary Release:先让一小部分用户用新版本,确认无误再放量,出问题的爆炸半径最小。
  • 提示词Prompt:交给模型的指令文本;写清角色、任务、输入与输出格式比反复试更省。
  • 积分Credits:站内计费单位:按工具单价预扣,调用失败自动退还;单价以定价页为准。

完整解释与站内出现处见 AI 术语表(40 条)。