AI 学习资料 · 提示词互动指南·办公场景篇
常见陷阱
即使是经验丰富的提示词工程师,也会掉进一些常见的陷阱。好消息是:一旦认出这些模式,就很容易避开。本章逐一介绍最常见的陷阱,解释它们为什么会出现,并给出具体的规避办法。
编者注:原页面的提示词可以在页面上直接填写。本库改为纯文本:方括号 [ ] 标出要换成你自己内容的地方,括号里是说明,或原书给的示例值。
为什么了解陷阱很重要
掉进一个陷阱,强大的 AI 就可能变成让人头疼的工具。是否了解这些模式,往往决定了你会说“AI 对我没用”,还是“AI 改变了我的工作方式”。
模糊陷阱
表现:你心里清楚想要什么,就以为 AI 也明白。可是模糊的提示词只会得到模糊的结果。
改前(模糊的提示词):
写一些关于营销的内容。
改后(具体的提示词):
写一篇 300 字的 LinkedIn 帖子,讲品牌一致性对 B2B SaaS 公司为什么重要,目标读者是营销经理。语气专业而亲切。举一个具体的例子。
原因:我们觉得某些细节“显而易见”,就会自然地略过。但对你显而易见的事,对一个不了解你的处境、受众和目标的模型来说并不明显。
具体性改进器:把一个模糊的提示词改具体,看看补充细节后结果质量有什么变化。
我有一个写得太模糊的提示词,需要改进。
原提示词:“[你的模糊提示词]”
请补充以下内容,让它变得具体:
1. **受众**:谁会阅读/使用这个?
2. **格式**:应该有什么结构?
3. **长度**:应该多长?
4. **语气**:用什么口吻或风格?
5. **背景**:情况或目的是什么?
6. **约束**:有什么必须包含或必须避免的?
把这些细节都写进去,重写这个提示词。
过载陷阱
表现:你想在一个提示词里要到所有东西:全面、有趣、专业、适合初学者、又要有深度、要做 SEO 优化,还要简短。结果呢?AI 漏掉一半要求,或者写出一团乱麻。
改前(过载的提示词):
写一篇关于 AI 的博客文章,要 SEO 优化,包含代码示例,要有趣但专业,面向初学者但也有高级技巧,应该是500字但要全面,提到我们的产品,还要有行动号召...
改后(专注的提示词):
写一篇500字的博客文章,向初学者介绍 AI。
要求:
1. 清楚地解释一个核心概念
2. 包含一个简单的代码示例
3. 以行动号召结尾
语气:专业但平易近人
原因:怕来回沟通好几轮,或者想一次“把话全说完”。但信息过载对 AI 的影响和对人一样:互相打架的要求太多,就会顾此失彼。
- 限制要求数量:每个提示词只保留 3-5 个关键要求。例如:“专注于:受众、格式、长度、一个关键约束”
- 使用编号列表:有了结构,优先级一目了然。例如:1. 必须有 X,2. 应该有 Y,3. 最好有 Z
- 用提示词链:把复杂任务拆成几个步骤。例如:“首先:大纲。然后:起草第 1 节。然后:起草第 2 节。”
- 狠心排出优先级:哪些是必需的,哪些只是锦上添花?例如:如果我只能做好一件事,那会是什么?
学习提示词链
单个提示词装不下时,提示词链(原书第 11 章,本库未收录)往往就是解决办法:把复杂任务拆成一串目标单一的提示词,每一步都建立在上一步的结果之上。
假设陷阱
表现:你提到“之前”的内容,或者以为 AI 了解你的项目、公司或以前的对话。其实它并不知道。
改前(假设有上下文):
给我之前发给你的那个函数加上错误处理。
改后(提供上下文):
给这个函数加上错误处理:
```python
def calculate_total(items):
return sum(item.price for item in items)
```
用 try/except 处理空列表和无效条目。
原因:和 AI 对话感觉像在跟同事聊天。但和同事不同,多数 AI 模型在不同会话之间没有长期记忆,每次对话都从零开始。
上下文完整性检查:发送前用它检查一下,提示词是否带齐了必要的背景信息。
检查这个提示词是否缺少上下文:
“[要检查的提示词]”
检查以下内容:
1. **提到了却没附上**:是否提到“这段代码”“那份文档”“之前”或“上面”,却没有附上实际内容?
2. **默认对方知道**:是否默认 AI 了解某个具体的项目、公司或情况?
3. **没写明的要求**:对格式、长度或风格是否有期望,却没有写出来?
4. **缺失背景**:一个聪明但不了解情况的人,能看懂这是在问什么吗?
列出缺了什么,并建议怎样补上。
引导性问题陷阱
表现:你提问的方式本身就带着预设,于是得到的只是附和,而不是真知灼见。
改前(引导性问题):
为什么 Python 是数据科学最好的编程语言?
改后(中立问题):
比较 Python、R 和 Julia 用于数据科学工作的情况。各自有哪些优缺点?什么情况下该选其中一种,而不是另外两种?
原因:我们往往想听到认同,而不是信息。措辞会不自觉地把答案引向我们期待的方向。
偏见检测器:检查你的提示词是否有隐藏的偏见和引导性语言。
分析这个提示词中的偏见和引导性语言:
“[要分析的提示词]”
检查以下内容:
1. **预设前提**:问题是否预先认定某件事为真?
2. **引导性措辞**:问“X 为什么好?”是否已经默认 X 是好的?
3. **忽略其他可能**:是否没有考虑其他可能性?
4. **只求认同**:是在求对方认同,而不是请对方分析吗?
把提示词改写得中立、开放。
盲目信任陷阱
表现:AI 的回复听起来自信且权威,所以你不加验证就接受了。但自信并不等于准确。
- 未审核的内容:发布 AI 生成的文本而不进行事实核查。例如:带有虚构统计数据或假引用的博客文章
- 未测试的代码:在生产环境中使用未经测试的 AI 代码。例如:安全漏洞、边界情况出错、不易察觉的 bug
- 盲目决策:仅基于 AI 分析做出重要决定。例如:依据 AI 凭空编造(幻觉)的市场数据制定商业策略
原因:AI 就算错得离谱,听起来也很有把握。我们还容易产生“自动化偏见”,也就是过分相信计算机给出的结果。
验证提示词:用它让 AI 主动标出自己没把握的地方和可能的错误。
请提供关于以下主题的信息:[主题]
重要:回答完之后,加一节“验证说明”,包括:
1. **置信度**:你对这些信息有多确定?(高/中/低)
2. **可能的错误**:这个回答里哪些部分最可能有错或已经过时?
3. **需要验证的内容**:哪些具体论断需要用户自行核实?
4. **可查阅的来源**:用户可以去哪里验证这些信息?
如实说明局限。标出不确定之处,好过对错误的内容表现得很有把握。
一次性陷阱
表现:你发了一个提示词,得到一个平平的结果,就断定 AI“不适合”你的场景。其实好结果几乎都要经过多轮迭代。
改前(一次性思维):
平庸的输出 → “AI 做不了这个” → 放弃
改后(迭代思维):
平庸的输出 → 分析问题所在 → 改进提示词 → 更好的输出 → 再次改进 → 优秀的输出
原因:我们指望 AI 第一次就能读懂我们的心思。用 Google 搜索时,我们并不觉得多换几次关键词有什么奇怪,对 AI 却要求一次完美。
迭代助手:第一次结果不理想时,用它有条理地改进。
我原来的提示词是:
“[原来的提示词]”
我得到的输出是:
“[得到的输出]”
问题在于:
“[哪里不对]”
帮我迭代改进:
1. **诊断**:原来的提示词为什么会得到这样的结果?
2. **遗漏的内容**:哪些地方我本该说清楚却没有说?
3. **修改后的提示词**:针对这些问题重写我的提示词。
4. **检查要点**:拿到新输出后,我该检查什么?
忽视格式陷阱
表现:你只顾着让 AI 说什么,却忘了规定格式。结果需要 JSON 时拿到一段散文,需要要点列表时拿到一大段密密麻麻的文字。
改前(未指定格式):
从这段文本中提取关键数据。
改后(指定格式):
从这段文本中提取关键数据,以 JSON 格式输出:
{
"name": string,
"date": "YYYY-MM-DD",
"amount": number,
"category": string
}
只返回 JSON,不要解释。
原因:我们关注内容,忽略结构。可如果你要用程序解析输出,或者要把它粘到特定的地方,格式和内容一样重要。
格式规范生成器:为你需要的任何输出类型生成清晰的格式规范。
我需要 AI 按特定格式输出。
**我要它做的事**:[任务描述]
**我会怎样使用输出**:[输出的用途]
**首选格式**:[首选格式](JSON、Markdown、CSV、要点列表等)
生成一段可以加进提示词的格式规范,包括:
1. **确切结构**:写明字段名和类型
2. **输出示例**:展示这种格式
3. **约束条件**(例如“只返回 JSON,不要解释”)
4. **边界情况**(数据缺失时输出什么)
上下文窗口陷阱
表现:你贴进一份超长文档,指望得到全面的分析。但模型有上限:输入太长时,它可能截断内容、抓不住重点,或者漏掉重要细节。
- 了解模型的上限:不同的模型有不同的上下文窗口。例如:GPT-4 为 128K token,Claude 为 200K token,Gemini 为 1M token
- 分块处理大输入:把文档拆成大小合适的几部分。例如:分别分析各章节,然后综合
- 重要信息放前面:将关键上下文放在提示词的开头。例如:关键要求在前,背景细节在后
- 去除冗余:删除不必要的上下文。例如:你真的需要整个文档,还是只需要相关部分?
编者注:上面的上下文窗口数字是原书给的示例,不同模型、不同版本差别很大,请以所用模型提供方公布的说明为准。
文档分块策略:文档超出上下文上限时,用它来制定处理策略。
我有一份很长的文档要分析:
**文档类型**:[文档类型]
**大约长度**:[大约长度]
**我需要提取/分析的内容**:[要提取或分析的内容]
**我使用的模型**:[模型名称]
请制定分块策略:
1. **如何切分**:这类文档在哪些地方断开比较合理
2. **每块带上什么**:单独分析一块时需要的上下文
3. **如何汇总**:把各块的结果合在一起
4. **注意事项**:可能被切到两块里的信息
拟人化陷阱
表现:你把 AI 当成人类同事,指望它“喜欢”这项任务、记得你、在乎结果。它不会。
改前(拟人化):
我相信你会喜欢这个创意项目!我知道你喜欢帮助别人,这对我个人来说真的很重要。
改后(清晰直接):
按以下要求写一篇创意短篇故事:
- 类型:科幻
- 长度:500字
- 语气:充满希望
- 必须包含:一个反转结局
原因:AI 的回复太像人了,我们自然会用上与人相处的那一套。但打感情牌不会让 AI 更卖力,清楚的指令才会。
什么才真正有帮助
与其打感情牌,不如把功夫花在清楚的要求、好的示例、具体的约束和明确的成功标准上。这些能改善输出,“请你一定尽力”则不能。
忽视安全陷阱
表现:急着把事情跑通,你把敏感信息写进了提示词:API 密钥、密码、个人数据或公司内部信息。
- 提示词中的密钥:把 API 密钥、密码、token 粘贴进提示词。例如:"使用这个 API 密钥:sk-abc123..."
- 个人数据:把个人身份信息发到第三方服务器。例如:提示词中的客户姓名、电子邮件、地址
- 未经处理的用户输入:把用户输入原样拼进提示词。例如:提示词注入漏洞
- 专有信息:商业机密或机密数据。例如:内部策略、未发布的产品细节
原因:只顾功能,忽视了安全。请记住:提示词通常会发到外部服务器,可能被记录,也可能被用于训练。
安全审查:在发送前检查你的提示词是否存在安全问题。
审查这个提示词有没有安全问题:
“[要审查的提示词]”
检查以下内容:
1. **暴露的密钥**:API 密钥、密码、token、凭证
2. **个人数据**:姓名、电子邮件、地址、电话号码、身份证号
3. **专有信息**:商业机密、内部策略、机密数据
4. **注入风险**:可能操纵提示词的用户输入
对发现的每个问题:
- 解释风险
- 建议如何脱敏或保护这些信息
- 推荐更安全的做法
无视幻觉陷阱
表现:你向 AI 要引文、统计数据或具体事实,见它说得笃定,就以为是真的。但 AI 经常编造听起来可信的信息。
改前(盲目信任):
给我 5 个关于远程办公效率的统计数据,并附上来源。
改后(承认局限性):
关于远程办公的效率,目前已知哪些情况?你提到的每个统计数据,都请说明它是已有定论的发现,还是不太确定的。具体数字我会自己去核实。
原因:AI 生成的文字听起来很权威。它并不“知道”自己什么时候在编造:它是在预测最可能出现的文字,而不是检索经过核实的事实。
抗幻觉查询:这样组织提示词,可以尽量降低幻觉风险,并让 AI 标出不确定之处。
请提供关于以下主题的信息:[主题]
为尽量减少错误,请遵守以下几点:
1. **只讲公认的事实**。不要给出冷僻、难以核实的论断。
2. **标出不确定之处**。没有把握时,请说“我认为……”或“这一点可能需要核实……”。
3. **不要编造来源**。除非确定存在,否则不要引用具体的论文、书籍或网址,而是说明可以去哪里找这类信息。
4. **说明知识的局限**。如果我的问题涉及你训练数据截止之后的事,请直接说明。
5. **区分事实和推断**。分清“X 是真的”和“根据 Y,X 很可能是真的”。
请在遵守以上要求的前提下回答:[你的实际问题]
发送前检查清单
发送重要的提示词之前,先对照这份清单快速过一遍:
提示词质量检查
- 是否足够具体?(不模糊)
- 是否专注?(没有过载要求)
- 是否包含所有必要的上下文?
- 问题是否中立?(不具引导性)
- 是否指定了输出格式?
- 输入是否在上下文限制内?
- 是否有安全顾虑?
- 我是否准备好验证输出?
- 如果需要,我是否准备好迭代?
小测验:在使用 AI 做重要决策时,最危险的陷阱是什么?
- A. 使用模糊的提示词
- B. 不加验证地信任 AI 输出
- C. 不指定输出格式
- D. 在提示词中过载要求
答案:B。 虽然所有陷阱都会造成问题,但不加验证地信任 AI 输出是最危险的,因为它可能导致发布虚假信息、部署有漏洞的代码,或基于幻觉数据做出决策。AI 就算完全错了,听起来也很自信,所以只要用在重要场合,就一定要核实。
编者注:原页面此处为互动演示,本库未收录。