先说几个核心判断:Prompt 不是写作文,也不该被当作玄学对待。真正串联起整个工作流的,是一套系统方法论——从理解模型运行底层逻辑,到批量验证输出效果,再到系统化持续迭代。这篇文章的目的,就是要在不堆砌专业术语的前提下,把这个过程拆解清楚、揉碎讲透。

一、先建立一个认知:Prompt 不是命令,而是分布激活器
大语言模型并非传统程序。千万别用写代码的思维去写提示词。
语言模型的工作逻辑,更像是这样:
给定一段上下文 → 激活某个语义或行为上的概率分布 → 从分布里采样出一个可能的输出结果。
因此,提示词的作用从来不是“强制模型执行某条指令”。它真正的角色,是通过语言、场景、角色、格式、示例以及评价标准,把模型温和地引导至一个特定的输出区间。
感受一下这两种写法的区别:
“请自然一点,不要啰嗦,不要像 AI,不要说教,不要过度解释。”
和
“像一个有经验的产品顾问那样回答:直接、具体、重视取舍,先指出核心问题,再给出可执行的建议。”
后者显然更聪明——它不是在禁止什么,而是在积极引导什么。
二、好 Prompt 的定义:稳定提高目标输出概率
明确了原理之后,“好提示词”的定义也会变得清晰。简单来说:一个有效的提示词,能够稳定地提升目标输出的出现概率。
这句话里有几个关键的落脚点需要展开。
1. 不是单次效果,而是稳定分布
一次回答让人惊艳,并不代表提示词好——有时候只是采样运气不错。一个真正靠得住的提示词,需要在多组输入、多轮次、不同温度、甚至不同模型测试后,依然稳定地产出目标风格,才算真正有效。
2. 不是越完整越好,而是越有效越好
市面上很多提示词写得极长,但里面塞满了相互矛盾的约束条件:
“要简洁,但要全面。要自由发挥,但必须严格遵守格式。要自然,但每次必须包含三个部分。要有创造力,但不能偏离任何细节。”
这类提示词会让模型强行切换到“执行规则”的模式,而不是自然地进入目标状态。尤其是现在的强 Agentic 模型,过度规则化只会让模型开始“表演”遵守规则,而非真正完成任务。
3. 心智对齐
不妨问问自己:你理解什么是 Agent?什么是 Harness?什么是 Prompt 吗?
不同人对这些概念的理解差异,会直接导致截然不同的提示词设计思路。模型可能需要理解你口中的“我们”到底指谁——是 AI,是开发者,还是用户?这种看似细微的认知偏差,往往是提示词失效的根本原因。
三、不同模型,需要不同 Prompt 策略
提示词并非通用。同一段文字在不同模型上的表现,可能天差地别。
1. 弱模型:需要脚手架支撑
能力较弱的模型,通常更需要明确的步骤、格式和约束条件。例如:
“请按以下结构回答:1. 先总结用户问题;2. 再列出三个原因;3. 最后给一个建议。每部分不超过三句话。”
弱模型需要被“扶着走”。
2. 强模型:更适合状态激活
强模型本身已经具备不错的语义理解和任务规划能力。如果你过度限制它,反而容易抹杀其自然性和创造力。更好的方式,是设定一个清晰的行为状态:
“你是一个严谨但不啰嗦的技术顾问。回答时优先指出关键判断、隐藏风险以及可执行的下一步。不要写成百科解释,也不要为了追求完整而展开无关背景。”
这类提示词虽然没有规定具体步骤,但它成功激活了一个清晰的行为状态。
3. 推理型模型:目标与验证标准更重要
推理模型通常不需要你规定太多中间步骤。你更需要清楚定义的是:目标是什么,什么算成功,有哪些约束条件,哪些错误必须规避,最终答案如何验收。例如:
“请解决这个问题。优先保证结论正确。如果信息不足,请明确指出缺失信息。不要为了给出答案而猜测关键事实。最后用一小段说明你的置信度和主要不确定性。”
四、Prompt 编写本身也是需求发现
很多时候,我们以为自己知道想要什么,其实不过知道一个模糊的方向。
比如:“我想要一个更好的总结提示词。”
但“更好”究竟是哪种好?可能是:更短;更有洞察力;更适合发给老板;更像咨询顾问;更保留细节;更适合行动决策;更适合会议纪要;更适合知识沉淀;更适合二次传播;更少废话;更有观点……
这些差异,一开始很难想清楚。只有当你看到大量候选输出后,才会恍然大悟:原来我不是想要“全面”,我是想要“能帮我决策”;原来我不是想要“正式”,而是想要“有判断”;原来我不是想要“详细”,而是想要“抓重点”。
所以提示词采样这件事,不仅是测试效果,它本身就在帮你挖掘真正的需求。
五、一个有效方法:意图展开 + 响应映射
六、用模型生成候选 Prompt
一种非常值得推荐的做法,是“意图展开 + 响应映射”。
核心提示词可以这样设计:
“使用‘意图展开 + 响应映射’。不要直接回答原问题。请先枚举10个‘用户可能想继续问什么’,然后针对每个问题,给出一个示例回答。”
它的价值在于:不是让模型直接给你一个答案,而是让模型帮你展开“需求空间”。
当需求空间被打开之后,下一步就是让模型生成多个候选提示词。一个好的候选集合,应该覆盖不同方向:
专家诊断型、反方质疑型、新手教学型、决策建议型、风险审计型、执行清单型、高管摘要型、苏格拉底追问型、案例驱动型、评分裁判型。
真正有价值的任务是探索不同方向,而不是在同一条道上反复替换词汇。
七、不要选“最好的一次回答”,要选“更稳定的 Prompt”
有了候选提示词之后,不能只让每个提示词跑一次就做决定。单次输出的随机性太大了。
你应该让每个提示词在多个测试用例上多次采样。基本流程应该是:
候选提示词 A
├── 测试用例1 → 采样5次
├── 测试用例2 → 采样5次
├── 测试用例3 → 采样5次
候选提示词 B
├── ……………
然后,你比较的不是某一个“神回复”的上限,而是整体的输出分布。一个提示词偶尔惊艳但经常跑偏,未必是好事。另一个提示词上限可能没那么高,但稳定可靠,反而更值得推向生产环境。
八、建立 Prompt A/B Test
提示词 A/B 测试的核心在于:在相同输入、相同模型、相同采样参数下,比较不同提示词的输出效果。
一个最小的 A/B 测试结构,至少需要包含这些字段:
| 字段 | 含义 |
|---|---|
| prompt_id | 当前提示词的版本 |
| model | 使用的模型 |
| temperature | 采样温度 |
| test_case_id | 测试用例编号 |
| input | 用户输入 |
| output | 模型输出 |
| judge_score | AI 评分 |
| human_preference | 人工偏好 |
| failure_tags | 失败标签 |
| notes | 人工备注 |
A/B 测试最重要的原则是公平对比:同一批测试用例、同一个模型、相同的采样参数和上下文长度、多次采样、尽可能盲评,而且人工偏好要与 AI 评分分开记录。
九、自动化评测脚手架
有了 A/B 测试之后,下一步就是搭建自动化评测体系。
一个 Prompt Evaluation Harness 至少需要四层:
1. Prompt Registry:统一管理提示词版本
2. Test Dataset:统一管理测试用例
3. Runner:批量运行 Prompt × Test Cases × Samples
4. Evaluator:AI 评分 + 规则检查 + 人工标注
十、多轮测试稳定性
如果提示词是用在多轮对话或 Agent 场景里的,单轮测试远远不够。真正的“压力测试”看的是:模型能否始终维持任务目标?会不会逐渐漂移?是否在重复同一种话术?是否忘记了前文约束?在用户追问时能否修正?面对冲突信息能否妥善处理?是否敢于承认不确定性?是否主动澄清?
一个多轮测试用例的设计思路:
“帮我总结这段项目会议。”
“再短一点,给老板看。”
“哪些是需要他拍板的?”
“如果只能保留三条呢?”
“有没有你不确定但需要补充的信息?”
多轮测试特别容易暴露提示词的真实稳定性——有些提示词单轮表现很强,但第二轮就开始失焦;有些提示词初始平平,但在多轮对话中反而表现得极为稳健。
十一、一个最小 Prompt Evaluation Harness
落地的时候不需要大而全,先从最小版本开始。目录结构可以这样设计:
prompt-eval/
├── prompts/
│ ├── summarizer_v1.yaml
│ ├── summarizer_v2.yaml
│ └── summarizer_v3.yaml
├── datasets/
│ └── summarization_cases.yaml
├── outputs/
│ └── runs/
├── evaluators/
│ └── judge_decision_summary.yaml
├── scripts/
├── run_eval.py
└── aggregate_results.py
十二、Prompt 迭代像进化算法
整个流程,本质上就是一个提示词的进化循环:
定义目标 → 意图展开 → 生成候选提示词 → 批量采样输出 → AI Judge 初筛 → 人工 A/B 校准 → 分析失败模式 → 融合 Top 提示词 → 局部变异 → 重新评测。
其中有三个关键操作需要格外关注:
1. 变异
对已有提示词做局部调整:更简洁、更严格、更少解释、更强判断、更强澄清、更偏专家、更偏教学、更偏执行、更偏审计、更偏结构化。
2. 交叉
把多个优秀提示词的优点融合在一起:保留 A 的判断力、B 的简洁格式、C 的风险意识。
3. 压缩
把长提示词压缩为最小有效版本。例如:“请将这个提示词压缩到 50%,保留核心行为激活点,删除重复规则和弱约束。”
最终目标从来不是为了得到一个最长的提示词,而是为了找到那个在最短、最干净的文本里,激活最强、最稳定行为分布的最优解。
十三、总结
提示词编写不应停留在“我感觉这个更好”的阶段。它应该有一套更系统的方法。
从理解底层原理,到采样候选,再到 A/B 测试,最后到自动化评测——这才是真正有效的迭代路径。
