Prompt 编写实践

Prompt 是给模型的任务说明。提示词越清晰,模型越容易稳定输出符合预期的结果。

推荐结构

  1. 角色:模型应该以什么身份回答。
  2. 目标:这次任务要完成什么。
  3. 背景:必要的业务信息、约束和上下文。
  4. 输入:需要处理的文本、数据或文件摘要。
  5. 输出格式:希望返回 Markdown、JSON、表格、代码还是分点说明。
  6. 质量要求:准确性、风格、长度、引用、禁止事项等。

好的 Prompt 示例

不推荐推荐
写点东西请写一篇 300 字左右的智能手表产品介绍,面向年轻用户,突出健康监测、运动记录和续航能力,语气自然、有购买引导。
总结一下请用 5 条要点总结以下会议纪要,每条不超过 30 字,并标出负责人和截止时间。
帮我改代码请审查以下 TypeScript 代码,重点关注类型安全、异常处理和可读性,输出问题列表与修改建议。

提升稳定性的技巧

  • 明确任务目标、背景信息、输出格式、风格和约束条件。
  • 明确“不要做什么”,例如不要编造事实、不要输出无关解释。
  • 对结构化输出给出字段说明和示例。
  • 长任务拆成多个步骤,先分析再生成最终结果。
  • 对重要业务场景建立固定模板,并用真实样例回归测试。
  • 对实时信息、专业结论或合规内容要求引用来源或人工复核。

Prompt 质量会直接影响模型输出质量。模糊指令容易导致回答发散,缺少上下文容易导致模型补全或猜测;生产模板应尽量固定结构,并将业务变量显式填入。

可复用模板

可以把 Prompt 拆成稳定模板和业务变量,方便版本管理和回归测试:

你是一个面向企业客户的技术支持助手。

任务:根据用户问题和已知资料,给出简洁、准确、可执行的回复。

背景:
- 产品:Modelink
- 受众:正在接入大模型服务的开发者
- 限制:不要编造未提供的信息;不确定时说明需要进一步确认

输入:
{{user_question}}

输出要求:
1. 先给结论
2. 再给排查步骤
3. 如需用户补充信息,列出最多 5 项
4. 不要输出内部推理过程

结构化输出示例

当结果需要进入程序处理时,应明确字段和取值范围,并在服务端校验:

{
  "summary": "一句话结论",
  "riskLevel": "low | medium | high",
  "actions": ["下一步动作 1", "下一步动作 2"],
  "needHumanReview": true
}

警告

JSON 示例是输出约束模板,不代表接口 schema。生产环境仍应在服务端校验字段、类型、枚举值和缺失情况。

常见问题

为什么回答不准确?

通常是因为任务目标不清、缺少背景、模型能力不匹配或需要实时数据。可以补充上下文、换用更强模型、启用工具能力,或将最新数据直接提供给模型。

为什么格式不稳定?

应明确输出格式,并尽量给出示例。对强约束格式,建议配合结构化输出校验和失败重试。