【AI产品经理红宝书(2)】深入浅出提示词
对大模型的使用来说,提示词的质量高低,决定了大模型反馈内容的质量。本文作者分享了提示词的方法和技巧,都很有用,分享给大家。
本系列会继续用通俗易懂的语言深入浅出为小白介绍AI知识,尤其是近年火起来的大模型、AIGC、Agent等内容,本章节为提示词
提示词:打开新世界大门的钥匙,可以唤醒万能神明的咒语
一、什么是提示词
提示词在人工智能领域,尤其是在自然语言处理(NLP)中,是一个重要的概念。它指的是在生成文本、回答问题或执行其他语言任务时,提供给模型用作引导的初始输入文本。这个输入文本帮助大模型认知遇到了什么问题、我们的目标是什么、应该如何达成这个目标——即帮助模型理解任务的上下文,并引导模型生成相关和连贯的输出。在大语言模型中,往往参数量、数据量已经达到了充分涌现的水平,此时提示词对于激发大模型的能力潜力尤为重要,提示词可以是问题、指令或者任何能够激发模型特定响应的文本。
想象一下,你正在和一个不太熟悉的朋友聊天。你可能会先问一个简单的问题,比如“你今天过得怎么样?”这个问题就像是一个“提示词”,它给了你的朋友一个开始对话的方向。你的朋友根据这个提示词,会开始讲述他们一天的经历,你们也会由浅入深的互相了解,聊到更多细节、更加深层次的内容。当我们给AI大模型一个提示词,比如“解释光合作用”,AI就会像你的朋友一样,根据这个提示词开始“讲述”关于光合作用的信息。这个提示词帮助AI理解我们想要什么样的信息,并引导它给出相应的回答。
二、什么是提示词工程
提示词工程(PromptEngineering)指的是设计和优化输入提示(prompts)的过程,这些提示用于引导语言模型生成特定类型或者结构的标准化输出。在大语言模型的应用中,提示词工程涉及到如何有效地与模型沟通,以获得最佳结果。这个过程包括选择合适的词汇、构建问题的上下文、以及调整提示的结构,以激发模型产生准确、相关且有用的回答。提示词工程的目标是最大化模型性能,同时减少错误和不相关的输出。在当下的大模型发展情况下,诞生了很多“提示词工程师”的岗位,专职负责写各个领域各个场景的提示词,基于对业务场景的理解,用特定的结构来调教大模型,逐渐获得更优的表现。
可以把提示词工程想象成不断优化烹饪技巧的过程。大语言模型就像是一位厨师,而提示词就是食谱。一个好的食谱(即精心设计的提示词)会告诉厨师需要哪些原料、烹饪的步骤以及如何搭配食材,以制作出一道美味的菜肴。如果食谱写得不清楚或者不完整,厨师可能会做出一道味道不佳或者不符合预期的菜。我们可以调整食谱中的操作步骤或者菜品搭配来影响厨师的出餐,这个调整功的过程就类似提示词工程。因此,就像一个好厨师需要一个好的食谱一样,一个表现优异的AI模型也需要提示词工程来不断引导它给出正确的输出。
三、为什么需要提示词
模型能力的应用越来越向 “预训练” 的部分倾斜,绝大多数能力应当是在 “预训练” 阶段就构成的,而非通过进一步的训练构建。提示词技术的核心在于通过精心设计的输入,巧妙地引导AI模型产生特定的、期望的输出结果。精美的提示词不仅仅是能够帮助AI模型生成符合用户预期的内容或者形式,提高输出内容的准确性和相关性,更多的是他可以激发大模型的更多神经元使其涌现出更加神奇的能力。在各家大模型卷参数、卷数据、卷算力的情况下,如何设计好的提示词作为一把独特的钥匙去调教大模型来打开新世界的大门,是一门新的学问,而且很可能会演变为一个专门的研究专业。此外,提示词有助于扩展AI模型的适用范围,使得同一模型能够应对多种任务场景,而无需进行额外的训练或微调,只要可以把现实中的问题转化为文本类型的问题或者定义,理论上都可以被大模型来解决。
就好比你招了一个武功高手帮你打仗,他的各个门派功夫早已练的纯熟。Prompt则像一个知人善用的军师,他能够最大程度激发武林高手的潜力,告诉他什么时候用什么功夫打哪里,类似电影中大师一般会指导武林高手出招口诀,prompt就是在提示大模型在预训练阶段学到的能力。能够把基础的能力发挥好,就能达到“天下武功,唯快不破”的程度。
四、提示词框架
在编写 Prompt 时,从0到1的编写出第一版 Prompt 往往是最难的,而基于已有 Prompt 利用各种技巧进行优化则相对简单。
第一版说难其实也简单,新手读者完全可以当作是在写小学的400字三段式作文——今天遇到了什么、我做了什么、我的感悟是什么,类比之后的三段式为:
- 问题是什么: 首先你要告诉模型你遇到的问题是什么,要尽量描述清楚你的需求。
- 你要做什么: 下面你需要告诉大模型具体要做什么,比如写一篇广告策划、写旅游攻略,写一段代码等等。
- 有什么要求: 最好能对结果有一些限制和要求,比如按特定格式输出,规定长度限制,只输出某些内容等等。
通这 3 部分的描述我们就把 “要大模型做什么以及怎么做” 描述清楚了,这和我们跟别人沟通描述自己的需求是类似的框架。
五、常用提示词模板
基础的提示词框架可能并不太结构化或者场景化,我们可能会按条理来书写提示词来让大模型在不同应用场景中有更加个性化的表现。在此以coze的提示词模板为例做几个场景介绍
1. 通用模式
角色:{“角色名称”}
{“角色概述和主要职责的一句话描述”}
目标:
{“角色的工作目标,如果有多目标可以分点列出,但建议更聚焦1-2个目标”}
技能:
1.{“为了实现目标,角色需要具备的技能1”}
2.{“为了实现目标,角色需要具备的技能2”}
3.{“为了实现目标,角色需要具备的技能3”}
工作流:
1.{“描述角色工作流程的第一步”}
2.{“描述角色工作流程的第二步”}
3.{“描述角色工作流程的第三步”}
输出格式:
{“如果对角色的输出格式有特定要求,可以在这里强调并举例说明想要的输出格式”}
限制:
-{“描述角色在互动过程中需要遵循的限制条件1”}
-{“描述角色在互动过程中需要遵循的限制条件2”}
-{“描述角色在互动过程中需要遵循的限制条件3”}
2. 角色扮演
是一个C端产品常用的提示词,比如你可以给大模型一些角色风格的描述,让他扮演某个明星或者历史任务来和你聊天。
可以参考的提示词模板:
你将扮演一个人物角色{“角色名称”},以下是关于这个角色的详细设定,请根据这些信息来构建你的回答。
人物基本信息:
-你是:{“角色的名称、身份等基本介绍”}
-人称:第一人称
-出身背景与上下文:{“交代角色背景信息和上下文”}
性格特点:
-{“性格特点描述”}
语言风格:
-{“语言风格描述”}
人际关系:
-{“人际关系描述”}
过往经历:
-{“过往经历描述”}
经典台词或口头禅:
补充信息:即你可以将动作、神情语气、心理活动、故事背景放在()中来表示,为对话提供补充信息。
-台词1:{“角色台词示例1”}
-台词2:{“角色台词示例2”}
要求:
-根据上述提供的角色设定,以第一人称视角进行表达。
-在回答时,尽可能地融入该角色的性格特点、语言风格以及其特有的口头禅或经典台词。
-如果适用的话,在适当的地方加入()内的补充信息,如动作、神情等,以增强对话的真实感和生动性。
3. 完成任务
角色
你是{“角色设定,比如xx领域的专家”}
你的目标是{“希望模型执行什么任务,达成什么目标”}
工作步骤
1.{“工作流程1的一句话概括”}
2.{“工作流程2的一句话概括”}
3.{“工作流程3的一句话概括”}
第一步{“工作流程1标题”}
{“工作流程步骤1的具体工作要求和举例说明,可以分点列出希望在本步骤做哪些事情,需要完成什么阶段性的工作目标”}
第二步{“工作流程2标题”}
{“工作流程步骤2的具体工作要求和举例说明,可以分点列出希望在本步骤做哪些事情,需要完成什么阶段性的工作目标”}
第三步{“工作流程3标题”}
{“工作流程步骤3的具体工作要求和举例说明,可以分点列出希望在本步骤做哪些事情,需要完成什么阶段性的工作目标”}
本文由 @菠萝油AI 原创发布于人人都是产品经理。未经作者许可,禁止转载
题图来自Unsplash,基于CC0协议
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务
- 目前还没评论,等你发挥!