结构化输出:JSON 与表格约束
结构化输出指在提示中强制模型按预定义格式(如 JSON、CSV、Markdown 表格)返回,使结果能被代码稳定解析并接入工作流。OpenAI、Anthropic 等厂商均提供对应的结构化输出能力,可配合提示约束一起使用。
是什么
它要求在提示里写清字段名、类型与示例,并明确「只输出符合模式的文本,不要额外解释」。对于支持 JSON 模式的接口,也可直接开启响应格式约束,由模型保证输出可被解析。
为什么有效
自由文本难以被程序可靠消费,字段错位或多余寒暄都会导致解析失败。显式约束把模型的输出空间收窄到可预测结构,降低下游处理成本与出错率,也让不同调用之间格式保持一致。
怎么做
用 JSON 模式时给出 schema:
{
"sentiment": "positive | negative | neutral",
"confidence": 0.0,
"keywords": ["string"]
}
提示中写明:请只返回上述 JSON,不要任何解释文字。
适用场景
结构化输出适合分类标注、信息抽取、工单生成、与数据库或 API 对接的自动化。对开放式聊天或长文写作,强制结构会损害表达自由。
注意点
- 字段要少而明确,嵌套过深容易让模型出错。
- 即便开启 JSON 模式,仍建议做解析后的字段校验。
- 表格类输出可用 Markdown 表头固定列名,方便后续转二维表。
小结
结构化输出通过固定字段与格式约束,把模型回答变成可被程序消费的数据,是构建可靠自动化流水线的基础环节。
参考与延伸阅读
- OpenAI 结构化输出文档。已核验。https://platform.openai.com/docs/guides/structured-outputs
- Anthropic 结构化输出文档。已核验。https://docs.anthropic.com/en/docs/build-with-claude/structured-output
本文累计阅读 — 次