首页/AI/提示词工程速查/输出预填(Prefill / Priming)
模式与框架50 条

输出预填(Prefill / Priming)

在对话里预先给出回应的开头(如 JSON 起始符、章节标题),引导模型从该处继续书写;对锚定格式与跳开客套开头有效。

提示词工程速查AI更新于 2026-10-13

输出预填怎么用

输出预填(prefill / priming)在对话里预先给出回应开头,引导模型从该处继续写:JSON 场景预填左花括号,长文场景预填章节标题,还能顺带跳过「好的,我来帮你……」。支持助手预填的平台直接在消息数组里加一条 assistant 消息;不支持的平台可以在提示末尾要求「以 { 开头」。要注意预填内容本身也算输出,会占用输出长度预算。

基本信息

作用锚定格式、跳过寒暄、控制结构
平台差异支持助手预填的 API 直接传 assistant 首段
替代写法在提示末尾要求「以 { 开头,不要任何说明」
注意预填内容计入输出长度与计费

典型使用场景

  • 结构化抽取:预填左花括号,直接进入键名书写
  • 长文生成:预填一级标题,跳过开场白
  • 代码输出:预填代码块起始标记,避免解释性前言
  • 多语言输出:预填目标语言的开头,减少语言漂移
  • 流式展示:预填让用户第一屏就看到内容而非寒暄

预填示例(消息数组)

预填示例(消息数组)
[
  {"role": "user", "content": "提取姓名、金额、日期,输出 JSON。"},
  {"role": "assistant", "content": "{"}   # 预填左花括号,模型直接从键名续写
]
# 预填末尾不要是完整句子,否则模型可能直接收尾
# 模板里的引号与转义要测过再用,写错会直接产出非法 JSON
# 不支持预填的平台,改成提示末尾要求“以 { 开头,不要任何说明”

预填方式与适用

方式写法适用
助手消息预填把开头作为 assistant 消息内容支持预填的 API
提示内约定要求以指定符号开头不支持预填的平台
章节标题预填给出首个标题文本长文与报告生成
标记预填预填代码块或标签起始符代码与 XML 输出
预填的末尾若已是完整句子,模型可能直接补个句号收尾;预填应停在「话没说完」的位置。
预填中的引号与转义符写错会直接产出非法 JSON;模板要经过测试再用于批量任务。

易错点

  • 预填内容写成一个完整句子,模型直接补句号结束,输出没有正文
  • 预填模板里的引号或转义写错,批量任务全部产出非法 JSON
  • 预填内容较长(如整段模板),占用输出长度预算并可能约束后续展开
  • 在不支持预填的平台上照搬预填写法,被静默忽略,模型仍输出寒暄开头

数据来源与参考

  • Anthropic 文档:Prefill Claude's response(助手回复预填)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌