每一条 prompt 都是一条指令,而英语里指令只有一种语法:祈使句。这是动词的基本形式,没有主语——write、summarise、explain、list。你早就在食谱、路牌和各种指示语里见过它了。Prompt 只不过是把同一种形式用在了机器身上。
祈使句
主语永远是隐含的 you,所以它被省略了:
- Write a summary.(而不是
You write a summary.) - Translate this sentence.
- List three examples.
要把它变成否定句,在前面加上 don't(或 do not):
- Don't use jargon.
- Don't translate the technical terms.
正是祈使句让 prompt 成为一条指令,而不是一个问题或一段描述。对比一下:
- ❌ Can you make a list of the benefits?——这是一个请求,模型可能认为它不是必须完成的。
- ✅ List the benefits.——这是一条命令,模型会把它当成自己的任务。
对机器讲礼貌是白费口舌。 Could you please write a summary? 能用,但 Write a summary. 效果一样,而且更短。模型不需要你委婉,它需要的是一个清晰的任务。把 please 和 could you 留给人用吧。
说具体
光有祈使句往往不够。Summarise it.——总结什么?多长?给谁看?一条指令需要三个部分:
- 动词——要做什么。
- 对象——针对什么内容做。
- 限定条件——以什么方式、给谁、篇幅多大。
| 薄弱 | 有力 |
|---|---|
| Summarise it. | Summarise the article in three bullet points. |
| Explain AI. | Explain what a token is to a non-technical reader. |
| Write an email. | Write a polite email refusing the meeting and suggesting next week. |
每个「有力」版本都准确说出了对象,并加上了限定条件。大多数 prompt 恰恰是在限定条件这一步崩掉的——说出 write an email 很容易,说出 polite、refusing、suggesting next week 却难得多。但正是第二个版本,才能给你真正想要的那封邮件。
选对动词
动词决定了回答的形式。以下这四个动词覆盖了大多数日常任务,而且各自对应一种不同类型的结果:
| 动词 | 结果的形式 |
|---|---|
| write | 从零开始创作出的文字 |
| summarise | 给定内容的更短版本 |
| explain | 能把某件事讲清楚的文字 |
| rewrite | 给定内容的新版本 |
换一个动词,任务就变了。 Write a summary of this 和 Summarise this 都是在要一份摘要,但 write 暗示的是「创作」,summarise 暗示的是「压缩」。大多数「帮我弄短一点」的场景里,更准确的动词是 summarise。
数字和格式要精确
限定条件越可衡量,效果越好。模型没法准确理解「简短一点」这种说法,但它能照着 「under 100 words」「three bullet points」「in a table」「for a B1 reader」执行。
- List five risks.——一个模型可以数清楚的数字。
- Answer in one sentence.——一个模型可以遵守的长度。
- Give it as a table.——一个模型可以输出的格式。
这里用到的量词和指令,和祈使句与指路表达那篇文章里的是同一套语法——变的只是听指令的对象。
当模型答错的时候
如果回答不对,通常应该重新审视自己写的指令,而不是怪模型。问自己几个问题:
- 我说清楚对象了吗?(Summarise what?)
- 我给出限定条件了吗?(多长、给谁、什么格式?)
- 我用的是祈使句,还是一个含糊的请求?
把缺失的部分补上,重新写一遍 prompt,再试一次。这个循环——下达指令、看结果、修改指令——正是一条好 prompt构建出来的方式。
自测
下面的测验考查祈使句,以及构成清晰指令的三个部分。