技术知识库 · 提示词工程 · · 国科智飞 Gavin
提示词设计的核心技巧
两个高频杠杆:插槽式设计控制输入,输出格式设计控制输出。附格式陷阱与条件分支写法。
提示词工程有两类高频技巧,见效最快:用插槽式设计控制输入,用输出格式设计控制输出。一篇讲体系,这篇讲清单——每条都可以直接拿去改自己的提示词。
一、插槽式提示词:用变量逼出必要信息
核心理念一句话:提示词不是让模型凭空创造,而是通过变量强制用户补齐必要上下文。它的价值有三点:
- 防止幻觉:模型基于实际数据而不是臆测生成
- 提高相关性:结果直接对应你提供的具体场景
- 标准化工作流:团队用同一套格式,产出可比较
插槽语法很简单,用方括号占位:
[variable]— 需要填写的变量[paste here]— 需要粘贴内容的位置[insert...]— 需要插入特定类型信息的位置
必要插槽与可选插槽
设计时把插槽分两类。必要插槽强制填写,通常包括三类:核心身份信息(客户、产品、公司)、数据输入(表格、日志、文档)、上下文背景(行业、场景、目标)。可选插槽则给默认值,例如:
背景:[填写产品价值点;若未知,则聚焦效率与成本节约]
这里有一个实践中的平衡:必要插槽太多,用户填两次就放弃了;太少,模型又开始猜。经验法则是每个模板控制在 3–5 个必要插槽,其余都给默认值或设计成可选。另外,默认值应该写清"未知时聚焦什么",而不是简单留空——留空等于把猜测权交还给模型。
条件插槽
同一个模板面对不同情况时,用条件插槽分支。例如竞品分析:
为 [竞品名称] 生成 battlecard。
如果它是直接竞品,聚焦功能对比。
如果它是新进入者,聚焦市场份额与增长势头。
一个完整例子
把必要、可选、条件三类插槽放在一起,模板会长这样:
你是一位资深 [B端/SaaS] 销售顾问。
为 [客户公司] 的 [职位] 写一封跟进邮件。
背景:[粘贴最近一次沟通记录;若无记录,基于产品通用价值点]。
如果客户处于评估期,重点回应价格与安全顾虑;
如果客户已进入决策期,重点给出下一步行动与时间表。
模板本身不复杂,价值在于每个空都对应一个"如果没填、模型就会编"的信息点。
验收插槽设计有一个简单办法:把模板交给一位不了解任务的同事填一遍——如果他能填出所有必要信息、且不会多填无用内容,模板就合格;如果他反复问"这个空填什么",说明变量说明还不够清楚,需要改的是模板,不是他的理解能力。
二、输出格式设计:控制行为的杠杆
插槽控制输入,输出格式就是控制模型行为的杠杆。明确写出返回结构,比事后反复返工省力得多。五种常见格式及适用场景:
| 格式 | 适用场景 | 写法示例 |
|---|---|---|
| 纯文本 | 邮件、文档草稿 | Output as email-ready text. |
| 结构化列表 | 清单、步骤、摘要 | Output as 3-5 bullet key takeaways. |
| 表格 | 对比、数据分析 | Output as table with columns: A, B, C. |
| JSON | 程序化处理、API 集成 | Output as valid JSON with keys: title, summary. |
| Markdown | 文档、知识库、网页 | Use H2 for sections, bold for emphasis. |
选格式有一条简单判断:看下游消费者是谁——给人读长篇用纯文本或 Markdown,给人快速扫用列表或表格,给程序处理必须是 JSON。选错格式的返工成本,通常比重新生成一遍还高。
四个指定技巧
- 用明确动词:
Output as table format with columns: A, B, C - 指定结构细节:
Organize by region, then by quarter, with totals at bottom - 设置约束条件:限字数、语言难度、必须包含统计数字、只用主动语态
- 模板化输出:直接给出骨架,让模型按格式填空
约束条件的写法可以参考这组示例:
- 最多 200 字
- 使用简单语言,面向非专业读者
- 至少包含一个统计数据
- 只用主动语态
四条各自约束一个维度:长度、受众、内容要求、语气。写约束时按维度列,比混在一句话里更容易检查是否互相冲突。
模板化尤其有效。给一个固定骨架,模型只负责填内容:
**摘要:** [1-2 句总结]
**要点:**
- [要点 1]
- [要点 2]
**下一步:**
1. [步骤 1]
2. [步骤 2]
**置信度:** [低/中/高],附数据完整度说明
骨架里"置信度"这一行值得单独说:让模型显式声明数据完整度,等于给输出加了一个自检环节——数据不足时它会倾向于标低,而不是硬着头皮编完。这是低成本提高输出可信度的一种做法。
三个格式陷阱
- 过于严格:写死"每句恰好 10 个词"会牺牲质量。改成"约 3 句话,力求简洁"。
- 格式与内容冲突:既要 JSON 又要口语化。把结构和语气分开指定,而不是让一个要求同时承担两件事。
- 未考虑边缘情况:写死"输出 5 行表格",数据不足时就只能编。改成"最多 5 行,有多少展示多少"。
三个陷阱的共同点:把模板当成了牢笼,而不是容器。格式的目的是让内容可读、可消费,当格式要求与内容真实情况冲突时,应该让格式让步。
条件格式
格式也可以按结果分支。例如分析转化率:
若转化率高于 50%,输出:
✅ 健康:[分析]
若转化率低于 30%,输出:
⚠️ 风险:[分析] + [行动项]
其他情况输出:
ℹ️ 观察:[分析]
同一个模板,根据数据落在哪个区间自动切换重点,比统一格式更接近真实决策的需要。边界也要注意:条件分支不是越多越好。如果某个分支在实际使用中从未触发,就删掉它——每多一个分支,模板就多一分维护成本。
三、三个技巧如何配合
把三件事放在一起看:
- 插槽式设计,强制提供输入信息(对应上下文的领域知识与具体数据)
- 输出格式设计,强制指定输出结构(控制行为的关键杠杆)
- 上下文三层架构,提供完整上下文(元信息、领域知识、具体数据)
插槽 + 格式 + 上下文架构,构成一套完整的提示词工程方法。技巧本身不难,难的是每次都执行到位——大部分低质量输出,追根到底都是某一步被省略了。
另外两点提醒:技巧要和任务匹配,简单任务不必硬套复杂模板,清晰比完整更重要;插槽和约束也不是越严越好,写死的限制越多,模型腾挪的空间越小,遇到边缘情况越容易出错。约束的目的是收窄歧义,不是绑住手脚。
模板做完之后还需要一轮验收:把同一模板分别喂给三个差异较大的真实案例,检查输出结构是否稳定、缺失信息时是否会声明而不是编造、边缘情况是否退化得体。三条都通过,模板才算可用;跑不过,先改插槽和格式,再谈优化措辞。模板是活文档,业务变化后回看一次,比多做三个新模板更有价值。
如果要给这套方法排一个执行顺序:先写输出格式骨架(想清楚结果长什么样),再倒推输入插槽(生成这个结果需要什么信息),最后补上下文架构(这些信息里哪些每次都变、哪些可以固定)。从输出倒推输入,比从头堆要求更容易发现漏掉的信息;把这一步固化成习惯,模板质量会稳定得多——这也是本文所有技巧背后唯一的方法论。