PROMPT 提示词

提示词迭代:一次只改一处,记一张三列表

跟调代码一个道理:一次改五处,成了不知道为什么成,败了也翻不出原因,一周就白费。

提示词迭代:一次只改一处,记一张三列表
题图 / Unsplash

整段重写的代价

第一版效果不好,你把整段推翻重写。第二版好一点,你继续重写。改到第五版,已经忘了第一版差在哪。

更麻烦的是,你没法复用。下次遇到同类任务,还是从零开始,因为你不记得是哪句话起了作用。

钢笔在纸上书写
场景配图 / Unsplash

一次改一处,虽然慢,但每改一次你就多知道一条规律。攒够十条,你就有自己的方法了。

三列记录法

开一个表格,三列:改了什么、结果怎么变、留不留。

改了什么要具体到句子,别写“优化了约束”。结果怎么变要写可观察的,比如“字数从六百降到三百八,例子没了”。

留不留这一列最重要。一周后回看,你会发现自己反复在同一个地方试错,那一处就是你的盲区。

改了什么结果怎么变留不留
加“不超过三百字”字数守住了,例子被删留,另加一条保例子
换示例语气对了,格式散了留,格式单独约束
删角色没变化删,省 token
双手在笔记本电脑上打字记录
场景配图 / Unsplash

三次不对就换思路

同一个思路改三次还不行,说明方向错了,继续微调是浪费。

换法一:拆任务。一次做两件事的,拆成两次,中间你来判断。

换法二:换模型。有些任务就是某个模型更擅长,尤其是格式稳定性和长文召回。

黄黑配色的检查式机器人
场景配图 / Unsplash

换法三:改材料。材料本身乱、缺、矛盾,提示词再好也救不回来。先清洗材料,再谈提问。

三种换法按顺序试,成本从低到高。

拆任务是最容易被忽略的一种。很多人宁愿调二十遍提示词,也不肯把一件事拆成两件,因为拆了要自己接中间结果。

什么时候该停

输出到了八十分就停。剩下的二十分,往往要靠人工修改,比继续调提示词便宜。

另一个停止信号:你开始为了一个偶发问题加约束。加了三条例外规则去堵一个一年遇不到一次的情况,提示词会变得又长又脆。

停下来的标志还有一个:你能用一句说清这段提示词为什么有效。说不清,说明你只是碰对了,换个任务就失效。

还有一个停止信号:改动开始互相抵消。加一条约束另一条就破,说明这版结构有问题,回到五段重排,比继续打补丁快。

补充一句把最终版存成模板时,把失败的版本也留一份,注明为什么弃用。下次遇到类似问题,能省半小时。

常见问题

每次都要跑很多样本吗?

五条就够。同一条提示词在五条不同输入上的表现,比在一条输入上跑十次更能说明问题。

要不要用工具管理提示词?

个人用一个文本文件加日期就够了。多人协作才需要平台,否则工具本身会成为负担。

为什么昨天好用今天不行?

可能是模型版本更新,也可能是你的输入变了。先固定一批测试样本,再判断是哪一种。