AI 简明手册
Agent 与 Harness 基础 · Prompt 工程输出格式取舍

输出格式取舍

定义

输出格式要由消费者决定:人读优先纯文本或 Markdown,程序消费优先带 schema 的 JSON,配置文件是否用 YAML 取决于生态;XML 适合已有标签协议或混合文本场景。没有一种格式同时最省 Token、最易流式、最可靠。

说明

纯文本和 Markdown 适合界面逐步显示,但字段边界较松,不宜直接驱动高风险操作。Markdown 应限制允许的语法并在渲染端转义不可信内容。

JSON 生态和 schema 工具成熟,适合程序消费。普通解析器通常需要完整对象,但可以用 JSON Lines、事件协议或增量解析器实现流式;“JSON 不能流式”不是格式本身的绝对限制。

YAML 对人可读,但缩进、隐式类型和解析器差异会增加机器生成风险;它也不保证比 JSON 更省 Token,必须用目标 tokenizer 和真实样本测量。

XML 或自定义标签可把长文本与字段边界结合,但标签开销、转义和 schema 仍需处理。选择时同时评估生成稳定性、解析失败方式、流式协议和安全边界。

边界与误区

  • 既要流式显示又要解析字段时怎样选: 可用事件协议、JSON Lines、增量 JSON 解析或带结束标签的格式;选择取决于客户端和运行时支持,XML 不是唯一答案。

  • 什么时候用 YAML: 项目生态以 YAML 为配置事实源、且有人审查时可以使用;模型直接生成后仍应做 schema 校验,不能假定它更省 Token。

  • 为什么 Markdown 不适合直接驱动程序: 它主要描述排版,字段类型和失败语义不严格;高风险动作应先转成受 schema 约束的数据并由执行端校验。