我调 Prompt 踩过的 7 个坑,第 3 个最要命

54 阅读9分钟

📚 本文是《AIGC 人话系列》第 6 篇
系列目录:01 内容理解|02 RAG|03 三招选型|04 工具清单|05 动手实战|06 踩坑(本篇)|07 行业观察

前五篇讲了原理、选型和代码,这篇讲点血泪。7 个坑全是我自己真踩过的,而且我发现它们其实是同一件事的 7 个侧面——所以先给你一个比喻,后面 7 条都挂在这个比喻上。

先把模型当成一个新来的实习生

假设你部门来了个实习生:名校毕业,知识量惊人,打字比你快十倍,但有个致命问题——他完全不了解你。

不知道你们公司的风格,不知道你说的「高质量」是什么标准,不知道老板最烦哪个词。

现在你把活儿交给他:「帮我写一篇爆款文章。」

他会怎么写?他会按「教科书里的爆款」写:开头「在当今这个信息爆炸的时代」,中间三点排比,结尾「让我们一起期待」。技术上没错,但你会想把他退回学校。

问题不在他,在你。你只交了任务,没交底。

调 Prompt 的 7 个坑,本质都是「带新人」时最常犯的错。

坑 1:把 Prompt 写成一句许愿

现象:帮我写一篇爆款文章 → 出来一堆正确但没用的废话。

实习生视角:他没听过你们复盘会,不知道你上个月那篇 8000 阅读的稿子长什么样。对他来说,「爆款」是个没有具体所指的词。

改法:把要求拆成可检查的条件——字数、读者、结构、必须包含什么、禁止出现什么。

「爆款」不能验收,「开头第一句必须是一个反常识判断,全文不超过 900 字,给转行的程序员看」可以验收。

坑 2:一次塞十个要求

现象:要求写了 800 字,AI 只做到了前三条,后面的全丢。

实习生视角:你早上给他派了十个活儿,他一定会挑最容易交差的三个先做。

原因:要求之间会互相竞争注意力。尤其当后面几条和前面几条冲突时(比如既要「严谨」又要「口语化」),模型会自己挑一个执行。

改法:一轮只解决一类问题。先定结构,结构对了再改语气,语气对了最后纠细节。改 Prompt 像修图,一次调一个参数。

坑 3:只给「要什么」,不给「不要什么」 ⚠️ 最要命

现象:输出永远带点你不想要的东西——「首先」、三段排比、「总而言之」、「作为 AI 语言模型」。

实习生视角:你没说不能穿拖鞋来上班,他第二天就穿拖鞋来了。不是他叛逆,是你没划红线。

原因:模型本质在做填空。你只规定了要填什么,没规定不能填什么,它就会用训练数据里最高频、最中庸的那套写法——也就是最像「AI 写的」的那套。

改法:负向约束往往比正向指令更有效。

不要用「首先/其次/最后」这类序号词
不要出现「总而言之」「综上所述」
不要用感叹号
不要写「让我们一起」

这四行加进去,输出立刻从「AI 味」变成「人味」。这条是我调 Prompt 半年里,单条提升最明显的一条。

写代码、写 SQL 也一样。不要解释过程只给结果,比「请简洁一点」有用十倍。

坑 4:指望它一次就对

现象:第一版不满意,直接下结论「这模型不行」,然后换模型。

实习生视角:新人第一版方案被否了,你不给反馈,直接把他换了。下一个新人犯的错一模一样。

原因:Prompt 是迭代出来的,不是写出来的。你不是在「命令」一个程序,你是在「对齐」一个理解。

改法:把 Prompt 当代码——改一版、看结果、再改。我的经验是三轮之内基本收敛:

  1. 第一轮看方向对不对(是不是我要的那类东西)
  2. 第二轮看结构对不对(段落顺序、信息密度)
  3. 第三轮看细节(措辞、格式、边界情况)

改到第五轮还在打转,说明问题不在措辞,在这活儿没法用一句话描述——该拆流程了(见坑 7)。

坑 5:用「更努力」这类情绪词

现象:请非常认真地、尽最大努力、仔细思考后回答我。

实习生视角:你跟他说「加油,好好干」,他只会点头,然后该怎么干还怎么干。

原因:这类词在模型的语义空间里几乎没有可执行的动作。它不改变输出的分布,只让你自己安心。

改法:换成具体动作。

别写改写成
请仔细思考先列出 3 个可能的方向,再选一个展开
尽最大努力检查每个结论是否有原文依据,没有就删掉
回答要专业用行业术语,但每个术语后面跟一句白话解释
不要瞎编资料里没有的信息,直接回「资料中未提及」

「仔细思考」是态度,「先列 3 个方向再选」是动作。模型只认动作。

坑 6:给的例子本身就不合格

现象:辛辛苦苦找了 few-shot 示例,效果反而变差。

实习生视角:你给他一份「标准范文」让他照着写,而那份范文其实是你随手从旧文档里翻出来的、格式早就过期的那份。

原因:示例是模型模仿的模板,权重比你的文字描述高得多。示例里有毛病,输出就有毛病——而且会以你意想不到的方式放大。

改法:示例必须是你最想要的那种输出,一字不差。

给示例前先问一句:模型完全照这个写,我会满意吗?答案是「大概吧」,就别给。宁可零示例,也别给一个凑合的示例。

坑 7:把所有事都塞进一个 Prompt

现象:写了一个 1200 字的巨型 Prompt,想一次搞定「读需求 → 定大纲 → 写全文 → 改语气 → 出摘要」。

实习生视角:让一个刚来三天的新人独立负责整个项目,从对接客户到交付验收。他不是不能干,是没有任何一个环节能被检查。

原因:任务越复杂,单次 Prompt 越容易在某一步悄悄走偏,而你不知道是哪一步。

改法:拆成多步——上一步的输出,就是下一步的输入。

day6-拆流程.png

拆开之后还有个额外好处:可以只重跑坏的那一步。全文 3000 字里只有第二段语气不对,你只需要重跑「统一语气」,不用把大纲也重新生成一遍——这在成本和稳定性上都是数量级的差别。

把 7 条压成一个模板

说了 7 个坑,落地其实就一张表:任何一条 Prompt,至少要交代 5 个零件。

day6-五零件.png

对应的模板,可以直接抄走:

【角色】你是一个做了 8 年公众号的编辑,读者是转行学编程的人。
【任务】写一篇 800 字左右的短文,主题:为什么我不建议一上来就学框架。
【输入】只用我下面给的 3 条素材,不要补充外部事实:
  1. …
  2. …
  3. …
【禁区】不要用「首先/其次/最后」;不要写「让我们一起」;不要感叹号;
        不要下结论式金句,每个观点后面必须跟一个具体例子。
【验收】开头第一句必须是一个反常识判断;全文分 4 段;每段不超过 200 字。

我自己现在写任何 Prompt,都是先把这个骨架敲出来,再往里填内容。填不出来的那一栏,就是你还没想清楚的地方——那时候先别问模型,先问自己。

落地场景:三个我每天都在用的

场景最容易漏的零件补上之后的变化
客服回复生成禁区(不许承诺时效、不许道歉超过一次)从「看起来很客气」变成「可以直接发」
会议纪要整理验收(必须保留决议 + 责任人 + 截止时间)从一篇流水账变成能派活的清单
从简历里抽字段输入(只依据简历原文,缺失就留空)从「编了个漂亮经历」变成可信

你会发现,补的都是禁区和验收——图上最后两个零件,也是大多数人从来不写的。

泼点冷水:Prompt 治不了什么

这部分很重要,因为市面上把 Prompt 吹得太神了。

第一,Prompt 治不了「缺知识」。 你要问的是公司内部的制度、某个新版本的 API,模型不知道就是不知道,措辞再怎么调也调不出来。这时候该上 RAG,不是继续改提示词——这就是第 2 篇和第 5 篇讲的事。

第二,Prompt 治不了「必须固化的习惯」。 如果你要求的是稳定的输出格式、特定的说话风格,而且要在成千上万次调用里保持一致,那 Prompt 的边际收益会很快见顶。这种时候该考虑微调——但它贵,而且换需求就得重来,所以永远排在 Prompt 和 RAG 后面。

第三,Prompt 会过期。 模型换代、系统提示词改版,你辛苦调好的那套约束可能一夜之间失效。所以别把 Prompt 写在代码里当常量,单独存、能热更新、每次换模型都回归测一遍。

第四,别靠「感觉」验收。 我早期每次改完 Prompt,都凭印象判断「好像好一点」。后来攒了 20 条固定测试输入,每改一次跑一遍,才知道有几条是真提升、有几条是幻觉。没有测试集的 Prompt 优化,等于闭眼改代码。

最后

调 Prompt 的本质,不是「哄」模型,而是「把需求说清楚」。

这个能力换个场景照样值钱——给下属派活、给外包写需求、给朋友解释一件事,用的是同一套东西。看着像玄学,其实全是表达的基本功。

一个具体的问题留给你:你最近一次对 AI 输出不满意,是因为它不懂你的标准,还是因为它压根没这个知识?

这两件事的解法完全不同——前者改 Prompt,后者上 RAG。想清楚这个,你的调试效率会立刻翻倍。

下一篇写行业观察:2026 年,AI 应用到底落地到哪一步了。


上一篇:20 行代码,用大模型做一个「文档问答」
下一篇:2026 年,AI 应用落地到哪一步了?(Day 7)