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

把提示词当接口来设计:输入输出契约

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

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

模板说「必须给引用」,校验就得查引用——两边不一致等于没有契约。

提示词其实是一个"接口"

提示词常被当成"一段文本" ✔,于是改起来随意、测起来困难 ✔。

把它当接口看 ✔:有输入契约、输出契约、版本与兼容性 ✔ —— 很多混乱自然消失 ✔。

一、输入契约(模板的"参数表")

```

变量名 | 类型 | 是否必填 | 约束 | 缺失时的行为

doc string 必填 ≤ 20000 字 截断并标注

lang enum 可选 zh/en 默认 zh

```

要点:

· 变量必须显式声明 ✗→✔(不要在模板里凭空引用 ✔);

· 缺失时有明确行为(报错 / 用默认值 ✔ —— 不要静默留空 ✗);

· 约束写在模板里(长度、枚举 ✔)并在代码里也校验 ✔(见约束变校验 ✔)。

二、输出契约(模板承诺产出什么)

· 格式(JSON schema / Markdown 结构 ✔);

· 必含字段(如"必须给出引用" ✔ —— 见结构化输出那篇 ✔);

· 不确定性表达(置信或状态字段 ✔ —— 见不确定性传递 ✔);

· 内容约束(不得出现某类表述 ✔ —— 见文案审校 ✔)。

输出契约要与"校验"一致 ✗→✔:模板说"必须给引用",校验就得查引用 ✔ —— 两边不一致等于没有契约 ✔。

三、版本与兼容性

· 变量增删 = 破坏性变更 ✔(调用方要同步改 ✔);

· 只加可选变量 = 向后兼容 ✔(推荐方式 ✔);

· 改语义(同名字段含义变了)= 破坏性 ✗(最难发现 ✔ → 要写进变更说明 ✔)。

四、接口化的三个好处

1. 可测(输入契约固定 → 可以构造用例 ✔ —— 见边界用例库 ✔);

2. 可复用(同一模板被多处调用 ✔ —— 见提示词库 ✔);

3. 可替换(换模型/换实现,只要契约不变,下游不受影响 ✔)。

五、一份最小契约文档

```

模板名 / 版本 / 负责人

输入:变量表(类型、必填、约束、缺失行为)

输出:格式、必含字段、内容约束

变更历史:日期 / 变更类型(兼容 / 破坏)/ 影响面

```

一条判据

> 一个新同事能否只读契约就正确调用这个模板 ✔(不问作者 ✔),并知道输出该怎么校验 ✔?

> 不能,说明提示词还只是一段文本,不是接口 ✗。

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

相关文章

顺序阅读

← 上一篇:把生成与校验分开部署:为什么不该互相影响
下一篇:把评测结论写进发布说明 →

第 138 / 171 篇

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

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