搭 AI 对话工具到现在,我前前后后写了不下几百条 prompt,从最开始只会丢一句"帮我写个文案",到后来能稳定产出我要的东西,中间踩过的坑真的能写一本小册子。今天不聊那些花里胡哨的"万能公式",就聊最底层的一件事情:把任务、对象、依据、交付这四件事说清楚,你的 prompt 成功率起码提高一大半。
很多人觉得写 prompt 靠文采、靠运气,其实不是。它更像把心里那团模糊的想法,翻译成一张别人能照着执行的需求单。需求单上信息残缺,AI 就只能猜;信息完整,AI 才能给你交差。这篇就当聊家常,把我自己从"每次都要重写三遍"到"一次生成就能用"的经验摊开来说,适合所有刚接触提示词、或者写了不少但结果总是不稳定的朋友。
1. 别急着开写:先搞懂 Prompt 是什么
1.1 一句话定义:Prompt 就是一张"需求单"
Prompt 这个词,英文原意是"提示、促使",放到 AI 语境里,就是你提交给模型的那段输入文本。它可以是问题、指令、背景描述,也可以是半成品草稿。无论形式怎样,本质都是同一件事:把你脑中的意图,编码成模型能理解的文字信号。
拿点外卖类比最直观。你跟商家说"来份吃的",对方只能猜你想吃辣还是清淡、堂食还是带走、预算多少。但你要是说"一份不要香菜、微辣、送到小区门口,20 分钟内",商家执行起来几乎不用动脑。模型也一样,你给的上下文越具体,它需要"脑补"的空白就越少,输出自然就越贴你的心意。
所以别再纠结"Prompt 是不是越高级越好"。高级感是次要的,"信息完整度"才是第一位的。判断一条 prompt 好不好,标准很简单:把里面的名词和条件全部遮住,剩下的描述你还认得出自己在要什么吗?认不出,就是需求单没填完。
1.2 为什么你写的 prompt 总是不对味
我见过太多人反复在同一个地方翻车,总结下来无非三种病。
第一种叫"指令太泛"。只给动词,不给场景。"帮我写个方案""帮我分析一下""给我个思路",这种话放给真人同事,对方也得追问三连:什么方案?给谁看?要达到什么效果?模型倒是不会追问,它会默默替你选一个"最可能"的默认答案,于是你拿到手的永远是平庸的、泛泛而谈的东西。
第二种叫"上下文缺失"。你想推荐一款咖啡机,但没告诉模型目标用户是办公室白领还是居家新手,没说预算区间,没说竞品情况。模型只能按它训练数据里最常见的咖啡机文案风格来写,写出来自然又空又套,放朋友圈都没人点赞。
第三种是"交付标准模糊"。这是最隐蔽的问题。你不说字数、不说格式、不说到什么程度算过关,模型就会按它自己的默认偏好输出。结果你嫌它太长、嫌它没分点、嫌它语气太正式,改来改去,最后干脆自己上手重写——那要它干嘛?
把话说到这儿,结论其实已经浮出来了:与其到处找"神级 Prompt 模板",不如先把任务、对象、依据、交付这四根柱子立起来。下面逐根拆。
2. 四要素拆解:任务、对象、依据、交付
2.1 任务:把"要干什么"写成一个明确动词
任务是一句话里的核心动作,最好是一个具体动词:写、总结、翻译、改写、对比、打分、生成大纲、模拟面试……动词越精确,模型的发挥空间越可控。
"分析"和"对比"就不一样。前者可能给你洋洋洒洒三千字单点分析,后者会自然地列出维度表格。你要是心里想要的是对比表,却说成"分析",就成了需求单填错项。
我的习惯是,动词前面再强制加上"针对什么做"。比如"帮我写一篇产品介绍"可以改成"为这款便携咖啡机写一篇 800 字的产品介绍"。写清楚了,模型才知道围绕什么对象展开,而不是凭空给你一篇谁也不属于谁的文案。
顺便说个容易忽略的点:任务里还可以写"不要做什么"。不要用营销黑话、不要编数据、不要用第一人称。这类负向约束往往比正向描述更能拉低模型的翻车率,尤其是做事实型内容时,一句"不要虚构未经验证的数据"能省你不少校对时间。
2.2 对象:给内容找一个具体的"受众坐标"
对象不是指素材本身,而是指"内容最终给谁用、用在什么场景"。这是用户最容易漏掉的一项,也是影响风格最狠的一项。
同样一份活动方案,发给老板看和发给执行同事看,完全是两种写法。前者要结论先行、讲投入产出、给决策建议;后者要时间节点、负责人、物料清单、风险预案。你直接把受众坐标告诉模型,它大概率能自动切换语态和结构,根本不需要你手把手教它"要有数据、要加粗关键结论"。
除了受众,对象还包含"场景坐标"。这篇文案是发朋友圈、发小红书、还是印在海报上?是写给自己做备忘,还是发给客户做汇报?同一个主题,渠道和场景一变,篇幅、语气、信息密度全都要变。把这些写进 prompt,等于帮模型划了一条风格范围线,让它在里面自由发挥,而不是跑到外头乱来。
2.3 依据:把事实、边界和规则塞进上下文
依据是四要素里最容易让结果质量发生质变的一项。它包含三类内容:第一类是事实材料,比如产品参数、数据、原文摘录;第二类是限制条件,比如成本上限、合规要求、截止时间;第三类是偏好规则,比如"不要用被动句""术语保持中英对照"。
只要条件允许,我会把材料直接贴进 prompt,而不是让模型自己去"脑补"行业常识。因为模型的训练数据是有截止时间的,它不知道你公司那款新品的真实卖点,也不知道你们内部指定的措辞风格。与其让它猜,不如把关键信息原封不动丢给它,明确说"所有事实以我提供的材料为准,不要额外编造"。
有一回我需要把一份长文档转成周报,直接把文档正文粘贴进去,外加一句"只基于以下文本内容总结,不要补充外部信息"。输出出来几乎不用改。而之前不提这句的时候,模型总爱"锦上添花",硬塞一些原文里没有的推断,反而害得我逐条删。这就是依据的威力:它把模型的想象空间框住了,框得越紧,越不容易跑偏。
2.4 交付:说清楚你要的"成品长什么样"
交付本质上就是验收标准。大多数人不写这一项,不是不想写,是压根没想过模型输出还能自定义格式。其实模型在这件事上配合度极高,你只要把"成品长什么样"描述清楚,它真的能一比一执行。
交付描述通常包含四块:结构(分几部分、什么顺序、要不要表格)、篇幅(总字数、每段长度)、语气(正式还是口语、克制还是活泼)、以及验收点(包含哪些必须要素、排除哪些不要的东西)。我一般还会加最后一句话:"输出完成后,按以下标准自查一遍并指出不足。"这一句能逼着模型在交付前先做一轮质检,虽然偶尔有点啰嗦,但能堵住不少低级错误。
举个实际例子。我需要一份会议纪要,交付标准是"一条决策、三个待办、两个风险,每项不超过 50 字,待办须写明负责人和截止时间"。模型第一次跑出来就是表格形式,我直接复制粘贴进协作工具就完事。没有交付标准的版本呢?写得跟散文似的,还得我手工提炼。高下立判。
3. 手把手改一个 prompt:从"帮我写个文案"到能落地
3.1 先看第一版为什么废
我拿工作里最常遇到的需求来演示:写一条产品文案。第一版 prompt 长这样:
帮我写个文案。
这条 prompt 神仙来了也救不了。模型能干嘛?它只能从训练数据里随机挑一种"大众款"文案,大概率是那种"品质生活,从一杯好咖啡开始"的通用话术,放哪个品牌都行,也意味着哪个品牌都不出彩。
我把这条发给过十几个朋友,让他们猜对方会怎么写,结果十个人写出了十种完全不同的方向:有写成朋友圈的,有写成详情页的,有写成电梯海报的,语气有文艺的、有硬广的。问题不在模型,在我没做任何限定,同一个 prompt 每次生成的方差极大,这本身就是失败的信号——稳定的输出必须来自足够明确的输入。
3.2 四要素逐项补全的过程
下面这条,是我在实际项目中改过好几轮后的成品,可以当参照系看:
请为"便携咖啡机"写一条朋友圈带货文案, 面向 25-35 岁、常加班的职场白领(对象), 核心卖点只有三个:30 秒出咖啡、放得进背包、无需清洗(依据), 语气要轻松、真实、有生活感,避免"轻奢""尊享"等油腻词(依据-规则), 全文在 120 字以内,分两到三行,结尾带一个行动引导(交付), 不要虚构用户评价和数据(依据-禁止项)。
对比第一篇,能看到每一处改动都对应四要素里的某一项。对象限定了人群画像和年龄区间,语气规则把风格划进了安全区,依据堵住了编造数据的漏洞,交付标准锁死了篇幅和结构。
这条 prompt 我实际跑过几次,输出的版本虽然表述不同,但基本都落在"说得清卖点、语气不油腻、字数卡得住"这个范围内。有一次它还自己加了一句"办公室抽屉里囤一台,加班不慌",这在我看来完全合格,甚至比我自己写的还贴切。这就是把四要素填满后的实际收益:不是指望它一次完美,而是确保它次次不跑偏。
3.3 拿来即用的结构模板
如果你不想每次从零组织语言,可以直接套下面这个骨架,把括号里的内容换成你自己的场景就行:
请【动词:写/总结/翻译/改写/生成】一份【交付物类型】, 主题是【对象/目标主题】, 面向【受众:年龄/身份/使用场景】, 核心信息包括:【依据1;依据2;依据3】, 语气和风格:【风格描述】, 避免出现:【禁止项】, 篇幅要求:【字数/行数】, 输出格式:【结构要求,如分点/表格/摘要】, 完成后请自查是否覆盖以上核心信息,并标注遗漏。这个模板我自己用了很久,最大的好处是它强制你按四要素填空。一开始可能觉得啰嗦,但写熟了会形成条件反射,甚至不再依赖模板,张嘴就能把一条需求说全。到那个阶段,你才算真正脱离了"纯靠运气跑 prompt"的层次。
4. 实战中的暗坑:invalid prompt、token 超限、闪退
4.1 invalid prompt 是怎么冒出来的
用过在线 AI 工具的人,多少都见过这类报错:invalid prompt,或者是"your prompt was flagged as potentially violating our usage policy"。遇到这个先别急着骂工具,九成情况是触发了两类问题。
一类是内容安全审查。平台会对输入做风险扫描,某些词、某些主题会被标记为潜在违规,哪怕你本意完全正常,字面踩线就会被拦。解决办法不是去绕审查,而是换个建设性的、正向的表达方式。比如你想让模型规避某个负面案例,与其描述"不能出现 XX",不如改成"请只聚焦于正向做法"。目的达到了,字面也安全了。
另一类是格式层面的非法输入。比如某些工具不允许空 prompt、不允许纯特殊字符、不允许在特定端点塞进二进制内容。这种通常检查一下输入是否有乱码、粘贴时是否带了隐形格式,就能解决。我的习惯是:长文本先在记事本里过一遍,再贴进对话框,能排除不少莫名其妙的问题。
4.2 prompt token 与上下文窗口的关系
Token 是模型处理文本的最小单位,你可以粗略理解为"切成小块的字词"。中文场景下,一个汉字通常对应一到两个 token,英文一个单词通常一个 token。模型每次对话能处理的 token 总数是有限的,这段空间叫上下文窗口,prompt 输入、模型输出、中间的多轮历史,全都要挤在这个窗口里。
我在实际使用中遇到最多的情况是:prompt 写得太长,贴了一整份文档,再加上几轮修改历史,直接把窗口撑爆。结果要么是模型"忘掉"对话开头的内容,要么直接报错。遇到这种时候,我的处理顺序是:先删掉多余的历史轮次,再压缩 prompt 里的非关键背景,最后把最核心的指令提到最前面。这个顺序很重要,因为模型对开头和结尾的内容记忆最牢,把关键任务沉到中间是最亏的。
另外别迷信"越长越全"。上下文窗口是共享资源,prompt 吃掉的 token 越多,留给输出的就越少。我见过有人为了追求"完美 prompt"写了两千字的约束,结果模型输出被截断在三分之一处。与其面面俱到,不如只留那些真正影响质量的约束,这才是对 token 的健康态度。
4.3 人像 prompt 特别容易翻车的三个点
人像生成是另一个高频翻车区,简单说三个最常见的坑。
第一,过度堆砌外貌细节。头发颜色、眼睛形状、嘴角弧度全写完,反而容易互相冲突,生成出"四不像"的脸。我的经验是只锁定两三个关键特征,其余交给模型发挥,效果反而自然。第二,忽略了环境光与构图描述。只说"一个女孩"而不说场景,出来的图往往平淡;补一句"窗边自然光、浅景深、半身构图",画面质感立刻不一样。第三,盗用真人姓名或知名角色形象,轻则生成效果差,重则触发版权和平台审核。想生成特定气质的人像,用"发型+穿搭+气质词"去描述,比挂一个明星名字安全且可控得多。
还有一个通用技巧:人像生成不要忘记提供"不要什么"的负向描述,比如不要歪脸、不要多余手指、不要模糊背景。这类负向控制能显著降低废图率。如果你想要同一人物保持一致性,就把基础描述固定下来,每次都沿用同一段底文,只改场景和动作,这样一致性会高很多。
4.4 prompt optimizer 到底有没有用
这两年市面上冒出一堆 prompt optimizer,号称一键帮你优化提示词。我的真实体验分两面。正面说,它们确实能帮你做"查漏补缺",经常能补上你漏掉的角色设定、输出格式、限制条件,相当于给 prompt 做了一个结构化体检。对于刚上手、还不知道四要素为何物的新手,这类工具反而是一种很好的学习脚手架,看它给你改了什么,你也就学会了该写什么。
反面说,优化器生成的结果普遍存在严重"膨胀"问题。一句话的需求,它能给你扩成三段式、五要素、十条规则的论文级 prompt。看起来专业,实际很吃 token,而且约束过多会限制模型的发挥空间,生成内容容易变得死板、套路化。我实际测试下来,登录流转率这类风格类任务提示下,用它优化后的 prompt 和手写精简版相比,效果并没有显著提升,反而 token 成本翻了一倍多。
所以我现在的用法是:拿它当"检查器",不用它当"写手"。写完 prompt 先丢给它过一遍,看它在哪些位置补了内容,然后我手动判断哪些补得对、哪些是冗余,删掉不需要的再用。这个流程兼顾了效率和可控性,也算是我对这类工具最诚实的一个评价。
5. 我写 prompt 的几个土习惯
没有惊天动地的技巧,只有几条磨出来的土习惯,送给你当参考。
第一条,先写交付再写任务。大多数人习惯说"帮我写个报告",然后再补字数格式,我正好反过来:先在脑子里想好成品长什么样、多长、什么结构,再倒推出任务怎么表述。以终为始,prompt 的逻辑会清楚很多。
第二条,分隔符号用起来。我习惯用【任务】【对象】【依据】【交付】这种显眼标记把信息分段,一眼看过去就知道这条 prompt 结构是否完整。模型对结构化的输入理解也更稳定,算是一种零成本的双赢。
第三条,版本管理。同一个需求我会存一个 prompt 文档,每次改动存一版,标注哪版效果最好。时间长了,你就有了自己的一套"私有模板库",比网上任何通用模板都好用,因为它长在你的工作流上。
第四条,也是最重要的一条:把 prompt 当成对话,而不是命令行。一次跑不顺很正常,你只需要在下一轮里补充缺失的要素,而不是推倒重来。写 prompt 从来没多玄乎,就是把话说清楚——对模型是,对客户是,对同事也是。
这话听起来朴素,做起来才是真正的门槛。