产品二姐
读完需要
9分钟速读仅需 3 分钟
1
引言
我对 Prompt 认知经历了 2 个阶段:
第一阶段:去年 3 月-11 月,我认为 Prompt 最终会灭亡。
第二阶段:去年 12 月至今,我有两个理解:
在主流 LLM 工具(比如 ChatGPT,文心一言等大模型厂商的对话产品,以下统称 LLM 工具)中,Prompt 能力未来会像我们现在使用 word,ppt,excel 的能力一样,人人必备。
在垂直领域的 AI 应用中,prompt 对用户会消亡,因为好的 AI 应用会把 Prompt 完美地嵌入到 AI 应用中。也正因如此,Prompt 工程是 AI 应用开发者一项必不可少的能力。在这种场景下,我把 prompt 定义为 AI 应用的最后一公里,是一项系统实验工程。
而公众的认知,基于我从 explodingtopics.com(基于爬虫技术帮助用户发现、预测爆点的网站)上的数据来看:
第一阶段:2022 年 12 月,ChatGPT 第一次发布后,Prompt engineering 一路飙升到今年 7 月到达最高峰。
第二阶段:2023 年 7 月至今,开始迅速回落。
我们套用被历史多次验证的 Gartner 技术曲线,Prompt engineering 的发展正趋于稳定,但无论如何不会超过 2023 年的最高峰(橙色部分为我认为的未来关注度,仅供参考)。
所以不要过高估计 prompt engineering 的未来发展,也不建议大家把它作为职业生涯的长期规划。类比来说,20 年前有个工种叫办公自动化,主要就是操作 office 套件,现在人人都能用 office。
也正是这样一个趋于稳定的时间点,加上最近的一些实践,会让我自己更理性的看待 Prompt engineering,今天就和大家一起聊聊 prompt engineering 的话题,按照我目前的认知分为两个话题:
话题 1:日常工作中我是如何做好 prompt 来使用 LLM 工具的,目的主要是“教会大家如何使用 office”,也解答周围人经常问我的问题。这一部分会以原则和实例来说明,不会有特别专业的词汇(prompt 工程在传播过程中有点故弄玄虚了)。
话题 2:如何在构建产品时合理发挥 prompt 的作用,这一部分会单独在下一篇文章中聊一下(不然太长了)。目前讲这块的文章确实不多,甚至很多产品都把 prompt 是作为自己的核心的、不可泄露的内容,我就抛砖引玉。
2
日常工作中我是如何使用 prompt 的
直至今日,我身边的大多数人对 LLM 工具的使用是跟着舆论热点走的,比如最近 claude 3 出来了,大家可能就赶紧再去使用一下,过了几天就凉了。我自己的使用频率稍有不同,是“隔三差五”的频率。
这其中有两个原因:
一是 LLM 工具最擅长的文字、coding 工作仅仅是工作的一部分,agent 应用有望能 cover 更多的工作,但 agent 应用目前还没有普及。
二是大家对 LLM 的期待过高,从而导致使用方式的错误,进而容易放弃使用 LLM。我自己也是经历了一段时间后才摸索出来适合自己的方式,这也是本文的重点,希望对大家有借鉴意义。
接下来我会以写文章为例来说明我是如何使用 LLM 工具的,在这之前声明几个重要的原则。
2.1
LLM 工具使用原则
1.我会借助 LLM 工具来写文章,但往往最后会发现没有一段话是 LLM 直接给我的,所以放低你对LLM工具的期待,但它确实会成为你的助手。
2.长文的撰写中,LLM 的质量依然没有保障。其实这是好事,不然你的价值又在哪里?
3.在撰写任何一篇文章之前,我会做较多的调研和实践,以保证自己对 LLM 的回答有基本判别能力。在调研过程中,我不会使用大模型的总结能力,因为此时我并没有构建出基本的判别能力,总结是一种有损压缩,且损失特别大。除非你对某个话题特别了解,否则不要用总结功能。
4.我总是会给 LLM 工具很多我认可的参考文章,而不是纯粹依赖 LLM 的能力。
5.工作中需要敷衍的文章(我知道大家绝对有这个诉求) 确实可以很高效地用 LLM 工具完成。
接下来说说在使用 LLM 工具前要做的准备工作: 拆解任务 。
2.2
准备工作:拆解你的任务
在写文章的例子中,我把这个任务拆成几个步骤: 选题→调研 →构思大纲 →把内容填充到大纲中 →配图 →排版。我把每一步 LLM 参与的比例、所花费时间用图表示出来。
可以看出:
最耗时选题和调研是 LLM 工具最难参与的,这一部分从理性角度来讲,我认为目前还是要以真人参与为主,我主张 LLM 在工作中是一个工具,当然可能有人和我持完全相反的态度。
最不耗时的配图和排版 LLM 参与少是因为“打苍蝇用不着大炮”。如果使用 MJ 和 DALL 3 等工具精准控图,要说好多提示词,还不如传统工具来得快;另一个步骤排版,传统工具也已经做得很好了。
目前看起来只有中间填充大纲内容部分LLM工具参与度比较高。
拆解步骤后,就是针对这些步骤写 prompt 模板了。我的每一步会有一个或几个 prompt 模板,我推荐每个人都慢慢积累一套自己的模板。
如何撰写 prompt 模板,我用一句话概括就是:
用招聘任务助理的方式来写 prompt。
想象你在招聘个人助理时,需要你撰写招聘文案,俗称 JD(Job descriptiong)。你的 JD 怎么写,prompt 就怎么写(这个比喻便于大家记忆,也是我根据网上的各种资源做的一个总结,通俗地覆盖了 80% 的 open AI prompt 策略)。
这是我随意从 BOSS 直聘上找到的 JD 和我日常使用的一个 prompt 模板的对照,你会发现他们的结构是一样的,但在具体内容上,Prompt 会执行更细,更具体的 task。
接下来详细说明每一步。
2.3
手把手使用 LLM 工具示例
前几天我想写一篇关于 “苹果取消电动汽车项目”的文章,我按照上述的步骤一步步来看:
1.选题。在这个例子中选题不用我想了。如果你不确定选题,我也不太建议你寻求 LLM 的帮助(因为 LLM 的信息不是实时的),而是通过一些大数据平台,google trends ,expodingtopic 等寻找合适选题。
2.调研。在这之前,我对苹果电动汽车项目其实并不了解。我首先通过 google 搜索,perplexity.ai,知乎等地略读了大约 15-30 篇文章。
3.选用合适的思维框架并列出大纲。根据某种思维框架构思出文章思路,这些框架我已深深印刻在脑海中(比如 5W2H 框架,总分总框架,What+WHY + HOW 框架,MECE 框架,timeline 的框架,四象限框架等等),这些框架也会在一篇文章中混合、嵌套使用。一般在调研之后,我自己就能选出合适的框架来构思。如果不熟悉如何选择这些框架,你可以借助 LLM 来帮助你完成这一工作,在提示词中指定:
角色为:科技博主
技能为:熟悉各种思维框架;熟悉科技最新动态;拥有较强的构思能力。
步骤为:我会给你一个主题和一个思维框架 → 请你按照这个思维框架,为这个主题列出构思大纲。
初始化:我给你的主题是:<苹果取消电动汽车项目>,我给你的思维框架是:<5W2H>。
多试几个框架,选出你认为最合适的就好,下图是我用百川大模型的结果。
4.填充大纲内容。大纲构建出来之后,再看你调研的内容是否足以填充到相应的内容中,如果没有相应的内容,则:寻找更多的资料或者调整大纲。然后将对应内容填入大纲。这一部分大模型的参与最多,牢记两点:
要给定你认可的参考资料避免 LLM 胡说八道(参考 openAI prompt策略 Provide reference text: https://platform.openai.com/docs/guides/prompt-engineering/provide-reference-text )。
小标题一个个完成,不要让大模型一次性完成多个小标题(参考 openAI prompt 策略 Split complex tasks into simpler subtasks: https://platform.openai.com/docs/guides/prompt-engineering/split-complex-tasks-into-simpler-subtasks )。
在这篇文章中 我针对大纲的第二个标题 When 中有一项是“概述苹果电动汽车项目的时间线”,我就会去用我的模板: “给出参考文章和主题总结 timeline”,只需要把最后提到的参考文章链接和主题更改一下就可以,注意这些 参考文章是根据之前的人工调研得到你认可的文章 。
当然我还有其他模板,公众号回复“提示词”即可获得全部模板
给出主题写思路
给出思维框架和主题写大纲和段落概要
给出主题、大纲、参考文章,写出新文章(用于写敷衍性的文章)
给出参考文章和主题写段落
给出参考文章和主题总结 timeline
从某参考文章中快速找到确定性答案
完整读某篇参考文章
根据步骤画出 Mermaid 流程图
填充大纲内容后,接下来的两个工作就是:插图和排版。
5.插图。有些创意性的图片会在 midJourney 社区中寻找或直接生成,博客文章中的图要加上具体的标记还是推荐在传统做图软件中实现。
6.排版。我用 md 格式撰写,notion、飞书等工具已经做得很好了。在公众号文章中我用的是 knb 的模板,md 放进去基本不用修改。
这样,一篇文章基本就写完了。当然,LLM 工具还有很多其他使用场景,比如算数学题题,可能会使用完全不同的任务拆解方法和提示词结构,有的还会涉及到一些 prompt 的专业技巧名词,比如:
COT: Chain of thought, 其实就是提示词中添加具体操作步骤,越细越好。
zero shot/few shot: shot 的意思就是举例说明,在提示词中加上举例会让 LLM 工具更好地理解你
SBP:step backward prompt,就是把你的问题抽象一下再给大模型。比如一个物体从 100 米的高处落下到地上的速度是多少,SBP 就是在提示词里加上这样一句话“这个问题遵循什么物理规则”。
这些技巧就像 office 套件中的高级功能,大家可以了解一下,需要的时候搜索使用即可。
3
总结
今天和大家讲了一点朴素的提示词工程能力,供大家日常使用,不必焦虑天天要用,即使是今天这篇文章,LLM 的参与度也不算特别高,大概 30%左右。关于 Prompt 工程之后还会有一篇分享如何在产品中设计 prompt,完成 AI 应用的最后一公里,我们下次见!
如果想要今天实例中使用的写文章常用提示词,公众号回复“提示词”即可获得链接,我会不定期更新。
我是关注 AI 产品的产品二姐,致力于带来丰富的 AI 学习分享、体会,欢迎你和我一起学习,如果你觉得文章有用,点个在看,欢迎关注、点赞、转发。
我是关注 AI 产品的产品二姐,致力于带来丰富的 AI 学习分享、体会,欢迎你和我一起学习,如果你觉得文章有用,欢迎关注、点赞、转发。 我是关注 AI 产品的产品二姐,致力于带来丰富的 AI 学习分享、体会,欢迎你和我一起学习,如果你觉得文章有用,欢迎关注、点赞、转发。