第三章:Prompt不是“咒语”

资料库2026-05-17创建Howard 6 次浏览

咒语已死

2023年初,网上流传着这样一个“万能提示词”:

“你是一位拥有20年经验的麦肯锡顾问。请用金字塔原理,以MBA案例分析的格式,为我撰写以下问题的解决方案……”

据说这样写,AI的答案质量会“飙升”。

但如果你今天再试这个模板,用同一个问题、不同的模型,结果可能差强人意。GPT5.5可能给出一个过于啰嗦的框架性回答,Claude可能先花三句话告诉你“我不需要你告诉我我是什么……

这不是哪个模型“不行”。

“万能提示词”这件事从根本上就不成立。

同一个提示词,换了模型就不灵。同一个模型,上下文窗口位置不同表现就不同。同一个位置,对话历史长短不同输出就不同。

如果你把Prompt当咒语,背一个模板,就期待它每次都灵,你会永远在“这次怎么不行“的困惑里打转。

但如果你把Prompt当成接口设计,理解它的工作原理,知道什么时候该给什么信息,你就不再需要“咒语”了。

这就是本章要做的事:忘掉你的模板,明确你的需求(包括你有的东西)和你的顾虑,也就是你要什么、不要什么。

Prompt到底在做什么

先回到最底层。

你已经知道了,当你输入一段Prompt,AI不是在“理解指令”。它做的是同一件事:给定上下文序列,预测下一个Token。

那为什么之前一段“好的提示词”确实能改善输出?

因为它改变了概率分布的形状。

一个模糊的Prompt:“分析一下这个市场”,给AI的概率分布几乎没有约束。它可以输出宏观经济分析、行业竞争分析、消费者画像、投资建议……任何跟“分析市场”在训练数据里共现过的文本模式,都有可能被采样。

一个明确的Prompt:“用A模型分析中国新能源汽车市场,列出每个力量的关键影响因素,控制在500字以内”,把概率分布大幅收窄。AI的训练数据里,“A+新能源汽车+关键因素+500字”这个组合,对应着非常具体的文本模式。它的输出几乎必然落在你预期的区域内。

所以,Prompt不是“咒语”,是“约束”。 你写的每一句话,本质上都是在说:

“在接下来你要生成的Token序列里,请把概率集中在这些方向上,远离那些方向。”

这个视角一旦建立,所有“提示词技巧”都变得透明了。

好Prompt只做四件事

把上面这句话拆开,一个好的Prompt其实就是做了四件事:

1. 定义任务——“要什么”

不说“帮我写点东西”,说“写一封200字的客户道歉邮件,原因是我们延迟了两天发货”。

不说“分析这份数据”,说“找出上季度销售额下降最明显的三个品类,分别说明可能原因”。

任务越具体,概率分布越窄,输出越可控

小tips:一个Prompt不要塞多件割裂的事。此外,区分分析型任务和创造型任务,最好不要让两种任务在一起执行。分析型任务需要“收窄逻辑路径”,创造型任务需要“收窄风格边界”,约束的方向不同。

2. 约束格式——“长什么样”

“用表格列出”比“列出来”更好。“每段不超过三句话”比“简洁一点”更好。“用JSON格式输出,包含name、price、stock三个字段”,这直接把输出空间从“所有可能的文本”压缩到了“符合JSON schema的文本”。

格式约束是性价比最高的Prompt技巧。因为格式本身就是强约束,不符合格式的输出,一眼就能识别,而且几乎不会和“正确内容”混淆。

3. 提供范例——“像这样”

范例是概率分布的“锚点”。

如果你让AI“写一个吸引人的产品标题”,它可以给出几百种不同风格的答案。但如果你先给它看三个你喜欢的标题范例,再让它写,AI的概率分布会大幅缩窄到范例的风格范围内。

这就是少样本提示(Few-shot Prompting)的原理:

你给的不是“指令”,是“概率分布的样本

这里的2和3可以用一句话代替:对于不确定的内容请联网搜索。这里又会涉及搜索接口的质量问题和信息筛选问题。

4. 划定边界——“不要什么”

“不要”和“要”同样重要。

“不要使用专业术语”“不要超过200字”“不要给出你无法确认的数据”“如果原文中没有明确答案,请直接说‘无法确认’”。

很多AI翻车不是因为不知道答案,而是因为它被训练成“总是给一个答案”,因为训练数据里,“我不知道”比“答案是这样的”少得多得多。

你明确告诉它“可以说不”,就是在修正这个训练偏差。

从Prompt到Context:关键的认知跃迁

上面四条,足够你在日常对话中大幅提升AI的可靠度。

但这里有一个关键限制:你只能控制“你输入的那段话”。 但AI看到的,远远不止你那句话。AI看到的是整个上下文,包括:

  • 系统提示词(System Prompt)
  • 对话历史(前面聊过的每一轮)
  • 工具描述(AI能调用哪些函数)
  • 知识片段(RAG检索到的文档)
  • 记忆缓存(之前对话中存储的偏好和事实)

注:RAG(Retrieval-Augmented Generation,检索增强生成)旨在从外部知识库中找出与用户问题最相关的信息片段,供后续生成模型参考。

你的那段Prompt,可能只占整个上下文的20%。

这意味着:你精心打磨了一段提示词,但如果系统提示词写得很烂、对话历史里堆了三轮无效信息、检索到的知识片段是错的。你的20%再精致,也救不了另外80%。

这就是从“Prompt Engineering”到“Context Engineering”的跃迁。

Prompt是你直接控制的部分,Context才是AI实际接收到的。

一个只会写Prompt的人,是在调方向盘。一个会设计Context的人,是在调整个系统。

第三章:Prompt不是“咒语”-BtoAI

图1: Prompt vs Context

Context Engineering 的核心问题

如果说Prompt回答的问题是“怎么说”,那Context回答的问题是“给什么”

具体来说,四个问题:

1. 给什么?

不是越多越好。上下文窗口里的每一段信息,都在竞争AI的注意力。

给AI一份50页的PDF + 三段参考资料 + 你写的300字需求描述时,你以为你给了“全面的信息”,实际上你稀释了每一条信息的注意力权重,AI可能反而在模糊的概率分布中迷失。

好的Context像好的简历:只放最相关的信息,用最有效的方式呈现。

2. 不给什么?

想清楚这个这比想清楚“给什么”更难。

对话历史里有“污染”(上一轮AI的幻觉输出,你还没纠正就进入了下一轮)、知识片段里有冲突(检索到的两段文档对同一问题给了相反答案)等等……这些都应该被清理,而不是一股脑塞进上下文。

3. 什么时候给?

信息的时机影响它的权重。

前面已经说过,AI更关注首尾,具体来说,约束条件放在末尾比放在开头更可能被遵循(因为末尾的内容在概率预测时“距离更近”、注意力更强,这也是为什么一般系统提示词会把用户提问放在末尾拼接)。范例放在任务描述之后、约束条件之前效果最好。系统提示词里的角色设定,放在最前面给出“全局语境”,放在最后反而干扰任务执行。

4. 以什么格式给?

结构化信息(列表、表格、JSON)比自由文本更可能被准确解析。因为结构化格式本身就是强约束,AI在训练数据里有非常固定的Token关联模式。

如果你想让AI“记住”三条规则,写成:

规则1:XXX
规则2:YYY
规则3:ZZZ

比写成“请遵守以下三条规则:第一,XXX;第二,YYY;第三,ZZZ”更可能被完整遵循。

当然这不是绝对的,就目前来说,预训练数据中格式化信息占大头。此外,一些AI产品可能在产品层面做了一些约束或者trick(小技巧),后者也许会更好。

大白话为什么更好

有一个反直觉的发现值得单列一节。

2026年,一项发表在ACL(顶级学术会议之一)的研究发现:大语言模型在处理任务时,对高频、口语化的表达有显著偏好。即使语义不变,将表达转换为更常见、更贴近日常用语的方式,也能有效提升模型在推理等多项任务中的表现。

换句话说:模型更爱听“大白话”。

你写的“请运用结构化思维框架对此议题进行维度化剖析”,不如写“请从三个角度分析这个问题,每个角度列出正反两面”。

不是因为AI“讨厌”高级词,是因为高级词在训练数据里出现的频率低,围绕它们的概率分布更模糊。高频词有更锐利的统计模式,模型对它们的处理更确定。

这个发现直接否定了很多“提示词专家”的核心主张:“用专业术语激活模型的高级能力”。

你不用激活任何东西。你只需要让概率分布尽可能锐利。而高频、口语化的词,天然有更锐利的分布。

角色设定为什么越来越不重要

本书不把“角色设定”独立成章,理由就在这里。

“你是一位专业的数据分析师”——这个开头在GPT-3.5时代确实有效。因为它把模型的概率分布从“日常对话”窄化到了“数据分析报告”。

但模型越来越强之后,这种窄化效果在递减。

GPT-4和Claude 3.5之后的模型,在“理解任务”这件事上已经足够好。你不需要先花一句话告诉它你是谁,它才能明白你要什么。你直接说“分析这份数据”和“你是一位数据分析师,请分析这份数据”,对于强模型来说,输出差异已经微乎其微。

但是,角色设定并不是完全“没用”。它在某些场景下依然有价值:比如你需要AI模仿某个特定人物(“用海明威的风格写一段话”),比如你在构建一个面向客户的AI产品(公司客服Agent需要一致的品牌语调)。还有在一些特定的场景中使用Agent,约束角色,会让使用者的体验更好。

但它不再是“必须”。从“咒语“到“接口”的进化路径中,角色设定是第一个被弱化的环节。未来,更强的模型会进一步弱化它。

一个小tips:近期一些网友表示在 prompt 中加入“Michael Polanyi”,AI 的表现会显著提升。这揭示了一个关于“提示”本身的有趣事实:即我们作为人类,虽然有千言万语想向AI表达,但真正重要的知识往往是“只可意会,不可言传”(Michael Polanyi的理论)的。这个技巧并非指加入某人名,而是借用“Michael Polanyi”这个人物来暗示AI,要去挖掘和理解我们那些无法用语言清晰表达的深层“默会知识” 。通过在提示词中加入“Michael Polanyi”,我们实际上是在告诉AI:“人类知道的,远比他能说出来的要多。请优先专注于那些我说不出来、但真正重要的东西。”

一个实用的Context构造框架

我们不讲模板,我们梳理思路。当你准备让AI做一件事时,不要先想“怎么写Prompt”。

先想这四个问题:

  1. 任务锚点 AI最终要输出什么? 这个输出“对”的标准是什么?(我一眼就能判断对错的那个标准)

  2. 信息来源 AI应该基于什么来回答?(我给的文档?我给的示例?它的训练知识?) 什么信息不该给?(会干扰判断的、过时的、冲突的)

  3. 约束清单 格式约束:用什么格式输出? 边界约束:不能输出什么?什么情况下应该说“不知道“? 质量约束:多长?什么风格?什么语气?

  4. 验证方式 我怎么快速判断输出是否合格? 有没有“一眼假”的检查项?

看下面这张图加深一下理解。

第三章:Prompt不是“咒语”-BtoAI

图2:实用的Context构造框架

然后才开始写,或者你先让通用型的AI自己写。

这不是“提示词模板”。这是一个上下文设计的checklist(清单)。它不依赖任何特定模型,不绑定任何产品。

本章小结

Prompt Engineering正在被Context Engineering取代。这不是一个术语游戏,是认知层次的不同。

  • Prompt思维:“我怎么说,AI才能懂?”
  • Context思维:“我给AI什么样的信息和约束,才能让它的输出天然接近我需要的样子?”

后者不再把AI当“对话对象”,而是当一个“信息处理系统”。你输入的不是“话”,你输入的是一组结构化的约束条件。AI的输出不再是“回答”,而是这套约束条件下的概率采样结果。

这个思维转换,是全书从“会用AI”到“会设计AI系统”的第一个关键台阶。

下一章,我们给这个“概率引擎”装上手脚:让它不只是“说”,还能“做”。

自查清单

  • 我能解释为什么“万能提示词模板”不可靠
  • 我理解好Prompt的四个要素:任务、格式、范例、边界
  • 我知道Prompt和Context的区别
  • 我理解为什么“大白话”往往比“高级词”更有效
  • 我知道角色设定有用,但不是必须
  • 我能说出Context Engineering的四个核心问题
  • 我在写Prompt之前,会先想“任务锚点、信息来源、约束清单、验证方式”

参考链接

  1. Hongyuan Lu et al., "Adam's Law: Textual Frequency Law on Large Language Models", ACL 2026. https://arxiv.org/abs/2604.02176
  2. Andrew Ng, "Agentic AI", DeepLearning.AI, 2025. https://www.deeplearning.ai/courses/agentic-ai/ ;中文翻译版 https://github.com/datawhalechina/agentic-ai
  3. Anthropic, "A Guide to Prompt Engineering". https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/overview
  4. OpenAI, "Prompt Engineering Guide". https://platform.openai.com/docs/guides/prompt-engineering

一个只会说话的AI,上限是“答得好”。给它工具,它才开始“做得到、做得好”。我们要讲Agent的第一性原理。

下一章:没有工具,AI只是答题机器

更多文章

第四章:没有工具,AI只是答题机器

一个悖论 前两章我们建立了一个认知:LLM是概率预测引擎,没有“事实”概念,输出天然不可靠。 现在我们要面对一个悖论: 如果AI的输出天然不可靠,为什么还要让它去做事? 答案藏在“做事”这个词里。 当AI只能“说话”时,它的错误是不可验证的:一段文字里有没有编造的数据,你只能靠自己的知识来判断。但当AI能“做事”时,很多错误会立刻暴露:调用的API返回了错误码,执行代码抛出了异常,生成的SQL语法…

资料库 2026-05-17
第三章:Prompt不是“咒语”
回到顶部