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

把提示词里的约束变成程序里的校验

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

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

把提示词里所有「必须/只能/不超过」列出来,逐条看有没有程序校验。

提示词里的"约束"不是约束

提示词里常写"金额必须为正""日期格式必须是 YYYY-MM-DD""只能从这三个选项里选" ✔。

但模型只是"倾向"遵守 ✗ —— 它偶尔会不遵守 ✔,而下游如果直接信了,就出事 ✔。

能写成程序校验的约束,就不要只写在提示词里 ✔。

一、约束的三种去处(按可靠性排序)

| 位置 | 可靠性 | 适合 |

|---|---|---|

| 程序校验(拒绝/修正 ✔) | 最高 ✔ | 类型、范围、枚举、外键、业务规则 ✔ |

| schema/结构化输出 | 高 ✔ | 字段与结构的强约束 ✔ |

| 提示词说明 | 最低 ✗ | 风格、语气、偏好、难以形式化的要求 ✔ |

结论:提示词负责"倾向",程序负责"底线" ✔。

二、把提示词约束翻译成程序校验(对照表)

```

提示词里写:「金额必须为正数,不超过 10000」

程序里加:type=number, min=0.01, max=10000, 必填 ✔

提示词里写:「日期格式 YYYY-MM-DD」

程序里加:正则 + 真实日期校验(含闰年/月末 ✔)

提示词里写:「category 只能是 A/B/C」

程序里加:enum 校验 + 归一化(大小写/空格 ✔)

提示词里写:「不要编造」

程序里加:证据表 + 引用校验 + 该拒答却作答率监控(见证据表那篇 ✔)

```

关键:程序校验不仅"检查",还要给出可读的拒绝理由 ✔(回给模型让它只修那一处 ✔,见结构化输出那篇 ✔)。

三、校验失败后的三种处置

1. 回喂重试(带错误原文 ✔,最多 1~2 次 ✔);

2. 降级(换成更保守的输出:只给原文、不给结论 ✔);

3. 拒绝并转人工(高风险场景 ✔,见转人工那篇 ✔)。

不要:静默修正 ✗(用户不知道被改了 ✔)或忽略错误继续 ✗(脏数据进库 ✔)。

四、三个常见坑

· 只校验最外层 ✗ → 嵌套对象里的字段类型必须逐层校验 ✔;

· 校验与提示词不一致 ✗(提示词说"最多 5 条",程序允许 20 条 ✔)→ 两边要同源 ✔(从同一份配置生成 ✔);

· 校验太严 ✗ → 正常输入被拒 ✔(要监控拒绝率,见长尾那篇 ✔)。

一条判据

> 把提示词里所有含"必须/只能/不超过"的句子列出来 ✔,

> 每一条是否都有对应的程序校验(而不是只有提示词) ✔?

> 有落空的,就是潜在的脏数据入口 ✗。

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

相关文章

顺序阅读

← 上一篇:AI 功能的文档怎么写:能力、限制与示例
下一篇:容量演练:主动断一次上游,验证降级链 →

第 79 / 171 篇

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

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