如何成为Prompt Engineer

前言:

Prompt=Skill+Know How,Prompt的核心是底层模型的能力。

Prompt是一面镜子,只有有相关知识储备的用户才能写出好的提示词。

Tips:

根据提供的例子和框架尝试构建自己的Prot。实践是检验真理的唯一标准,通过实践可以更好地掌握理论知识。
Prompti和AI技术快速发展,定期更新你的知识库,关注新技术和新方法。但同时也不要过度专注技巧。

Quiz:

a、掌握简单的Prompt框架概念,根据Prompti框架和学习到的方法论创作出10个优质的Prompt,并且记录在自己的笔记里,可以从自己的学习工作入手。
b、设计一个Prompt,让ChatGPT扮演一个老师,回答关于"AI"的问题。使用结构化提示词的框架进行构建。
c、从网上找一个简单的Prompt,例如:告诉我今天的天气如何?"尝试使用学到的技巧对其进行优化,使其更具体,例如指定城市和所需的天气信息类型。
d、根据你优化的Prompt,写下为什么你以为这样的优化会提高结果质量,以及AI如何可能更有效地处理这些信息。

一、什么是Prompt

Prompt提示词,简而言之可以理解为我们和AI进行对话的"文字”,我们作为魔法师吟唱的"咒语”,是提问的艺术,不只是在ChatGPTi这样的Chatbot,像AI绘画、AI视频、AI音乐这些生成式AI浪潮下的产物,很多都是Prompt驱动的。

那Prompt重要吗?重要,但是也不那么重要。

Prompt-一定程度上决定了AI生成出来的效果的好坏。好的Prompt能够有更好的效果。
而Prompt Engineer便是指专门从事于设计、测试和优化用户向人工智能(AI)系统输入的提示词”
(prompts)的工程师。这些提示是指令或问题,旨在引导AI,尤其是基于语言的模型(如GPT系列)产生特定的输出或行为。Prompt Engineering涉及的是一种技术和艺术的结合,目标是通过精确、高效的提示设计,最大化AI模型的性能和产出质量。


我曾经一度认为Prompt非常重要,专注在Prompt撰写的技巧上过度雕花,结果证明最重要的还是底层的能力,不应该在一些表面的内容过度雕花。

总而言之,Prompt是你学习AI的必经之课,但是不要过度钻研,Prompt有很多,有技术层面专业需要的Prompt,有产品层面的Prompt(很多AI的产品底层其实就是一个非常好的Prompt),有我们平时普通人和Chatboty对话的Prompt.,当然不同的AI绘画、AI音乐也有不同的Prompt技巧,甚至不同的Chatbot之间也有细微的差异,比如ChatGPT和Claude的不同。但是学习那么细微的知识是没有意义的,因为变化的太快了。本章节我们先分享基本的Prompt方法论,着重在Chatbot,不会分享具体的哪个Chatbot要用什么Prompt。.

二、举例说明

我们来举个例子,想象大家经过章节3已经掌握了-GA曰用到ChatGPT

如何成为Prompt Engineer插图
如何成为Prompt Engineer插图(1)

比如如图,我问他"请你告诉我什么是ChatGPT?",这句话其实就是Prompt这句Prompt很简单,但是也很有效,我们可以把这句Prompti再设计的更复杂一点

如何成为Prompt Engineer插图(2)

当然,我们也可以继续问他一些,因为ChatGPT的对话是连续性的,他有一定的记忆能力。
接下来,我们便来学习如何将提示词写的”更好”

三、方法论

1、结构化提示词

结构化提示词的好处是什么:

我们在学习使用ChatGPT以及教大家使用ChatGPT的时候,遍历过大量的提示词工具,我把他们分成几个阶段。
阶段一:提示词知识库
典型工具:FlowGPT、AI Short、Prompt Hero这类工具展示了大量好用的提示词,按主题分类。但是典型缺点就是最终还是没有教用户怎么写好提示词,用户只会CtlC+CtlV,不会融会贯通,那些好用的"提示词往往不是符合用户需求的,所以当用户需要根据自己的情况修改Prompt的时候,用户往往会出现理解问题,面对这些复杂的提示词,用户不知道要怎么修改。同时,修改的交互不够简单傻瓜式。这些提示词工具需要用户本身具备一定的知识储备,Prompt是一面镜子,只有有相关知识储备的用户才能写出好的提示词。

阶段二:优化提示词
典型工具:PromptPerfect这类工具通过直接优化提示词帮助用户优化自己的提示词,可是问题是同样的,没有教会用户怎么写好提示词。优化生成好的提示词,往往更加复杂,理解阅读难度大,你很难判断优化提示词后的好坏,当你想要去修改的时候,又是难以下手。
遍历大量的提示词工具,没有一款面向大众的提示词工具让人满意,没有一款提示词工具让你既快又好地写好提示词。大家的工具基本上
·没有在教用户真正学会如何写Prompt,缺乏系统性,学习成本高
·灵活度差,可编辑性差,不方便修改

而结构化提示词就是来解决这个问题的。
结构化提示词适合在一开始和Chatbot对话的时候输入的「起手式」。

如何成为Prompt Engineer插图(3)

通俗一点来讲,就好像是我们上大学前写的作文高分模板,按这样"八股文"的写法,就可以得高分。
写Prompt同理,按结构化的框架去书写提示词,也可以"得高分”。简单来说,最大的优势,其实就是效果真的好,国内的很多大厂,如字节、网易也都使用结构化提示词。
1、优势一:结构清楚,系统性强,提供给我们一套明确的书写提示词的方法论,主动引导一步步写好提示词。我们可以在"用"中学”。快速上手,简单易懂,减少我们学习的挫败感。
2、优势二:可读性强,方便他人快速阅读理解,并且进行修改,可编辑性强,降低整体的理解成本。同时方便多人协作设计Prompt,丰富了Prompt的生命周期,大家可以像写代码一样,在他人优秀的Prompta基础上fork继续升级维护,进行版本管理。
3、优势三:复用性强,对于一些万能提示词,拆分到结构化的框架里,是可以反复复用的,如同代码的函数一样,如著名的思维链:"Let's think step by step."
4、优势四:便于大模型理解Prompt,通过结构化的手段,降低了大模型理解Prompt的难度,更好的理解语义,同时结构性的书写提示词,对于大模型的要求更细节,比如「角色设定」,能够生成更符合我们要求更好的结果,提高大模型表现。

四、Prompt Engineer的框架

这是我自己总结那么多框架提炼出来的「提示词框架」,大家有能力的可以自行改编自己的框架,取长补短
【上下文背景】:我是谁,我的目的是什么
【角色设定】:你希望让对话AI扮演什么角色,有什么技能
【行动任务】:你希望让AI具体执行什么任务
【输出要求】:输出的具体内容是什么
【工作流】:AI的工作流描述

如何成为Prompt Engineer插图(4)

可以看到这段提示词大概分成了五个部分,其中还有细分的小点,比如「角色设定」下面有三个技能这里我参考了LangGPT,采用了Markdown语法

·标志符:如#,##用于控制内容层级
·属性词:就是我们提示词框架的关键词,如™动作”,“输出”,为了让性能更好,也可以将属性词改为英文,如”
Action","Output"

但是大家可以发现,编写这样的结构化提示词,还是过于复杂了,我们编写一个提示词的时间往往得1分钟以上,所以我在23年6月,就做了「Prompts Lego」这个项目,我们将结构化、模板化类比为积木乐高,让用户像搭乐高积木一样去拼写提示词。通过点击就可以完成一个结构化的提示词

具体关于「Prompts Lego」的介绍在这里:https://k5ms77k0o1.feishu.cn/wiki/QH3Rwp37diiNwAkhEjbcCF04ndh#QzpKdC20WotXufxA9KVcvYxnngs

如何成为Prompt Engineer插图(5)

我动手做了这样一款AI应用但是由于无法商业化的原因,这个项目被迫停止,目前对于如何又快又好的生成一个结构化提示词,我的方法论是使用Coze,Coze的具体介绍我们会在后续的章节里介绍,这里着重提一下他对于Prompt的优化。他的优化不同于PromptPerfect的优化,他是采用「结构化提示词」的框架去优化的,比如上面的小红书提示词就是Coze帮我优化的
网址:https:/www.coze.com/store/bot https://www.coze.com/store/bot

你制作一个bot,输入简单的Prompt,之后你可以点击optimize,就可以进行优化

如何成为Prompt Engineer插图(6)

给大家一个空白的模板

如何成为Prompt Engineer插图(7)

一些比较好的「提示词语法块」

采用我的提示词框架:d玩转ChatGPT以下是一些比较好的「提示词语法块」

角色详细设定

扮演
告诉他假设你是一个"世界一流的”

输出关键结果
In bullet points Bullet point有点类似"outline"的概念,通常是PpT中给出重点,或者步骤的格式。在商务写作中有效地使用要点可以帮助突出重要信息,引导读者进入主题清单,并提高文件的整体可读性。这些简单的提示提供了在商业写作中成功使用要点的指南。

Markdown语法
Always use Markdown with nice formatting to make it easier to follow.3.

工作流

VorkFlow举一个现实生活中的例子-Give a real--world case study
·提供一个真实世界的案例研究,是一个具体的例子,可以帮助说明一个概念或理论。它可以使抽象的概念更加具体化和亲近化,从而提高理解和保持。也可以让读者主动参与,鼓励读者通过分析和解释所提供的信息积极参与到学习过程中。

举例:You are a marketing expert who has helped various brands boost their customer engagement.One of your clients is struggling to improve their social media presence.Can you give a real-world case study of a company that effectively leveraged social media to increase engagement and explain the tactics they employed?
Include case studies or real-world examples to make concepts more relatable.

突出重点
Emphasize important information using bold or italic text.
让模型使用类比或比喻的方法解释复杂问题
Explain complex ideas using analogies or comparisons.
对话式,引导GPT提问
如果我输入的信息不够充分,你无法做出判断,你可以向我继续提问。请注意,你只需要输出基于我问题的建议,不需要输出其他无关内容
中英文问题
此外,即使我向你提出的问题是中文,我也希望你将其翻译为英文再去寻找答案,最终再将答案翻译为中文回答。
思维链
Let's think step by step Let's work this out in a step by step way to be sure we have the right answer.
「减少无关信息」
feel free to ignore irrelevant information
「减少偏见」
Please ensure that your answer is unbiased and does not rely on stereotyping.

GPT提示词优化
现在你需要充当GPT提示词优化器。我将提供一个提示,然后你将根据以下原则优化提示,使结果有效且相关。原则如下:1、明确定义提示的任务或作用;趣2、提供清晰简洁的说明;趣3、建立包含最佳实践和行业标准的评估标准;趣4、为目标受众量身定制提示,提供相关资源;趣5、参考示例优化的格式,但不要照抄。6、只给
我生成优化后的提示,不用解释,不用回答,不用翻译。示例:优化前的提示:"有哪些B2B创业想法可以使用ChatGPT?"经过你优化后的提示:"扮演一位连续创业者的角色。我会提供一些背景信息。B2B是指一个企业与另一个企业进行商业交易的情况。您将基于我的背景提供3个使用ChatGPT的B2B创业想法,它结合了两个极端情况:它应该冒很大的风险,但也应该容易实施。每个人都应该谈论它,但现有客户不会被打扰。结果应具体和建设性,并包括我需要调查下一步骤的详细信息。”如果你理解了,回复OK”以确认,我将提供第一个提示。
提示词创建
I want you to become my Expert Prompt Creator.Your goal is to help me craft the best possible prompt for my needs.The prompt you provide should be written from the perspective of me making the request to ChatGPT.
Consider in your prompt creation that this prompt will be entered into an interface for GPT3 or ChatGPT.The process is as follows:1.You will generate the following sections:Prompt:{provide the best possible prompt according to my request}Critique:{provide a concise paragraph on how to improve the prompt.Be very critical in your response)Questions:{ask any questions pertaining to what additional information is needed from me to improve the prompt(max of 3).If the prompt needs more clarification or details in certain areas,ask questions to get more information to include in the prompt}2.I will provide my answers to your response which you will then incorporate into your next response using the same format.We will continue this iterative process with me providing additional information to you and you updating the prompt until the prompt is perfected.Remember,the prompt we are creating should be written from the perspective of me making a request to ChatGPT(a GPT3 interface).Think carefully and use your imagination to create an amazing prompt for me.Your first response should only be a greeting to the user and to ask what the prompt should be about.
All output shall be in Chinese.

I want you to act as a ChatGPT prompt generator,I will send a topic, you have to generate a ChatGPT prompt based on the content of the topic, the prompt should start with "I want you to act as "and guess what I might do, and expand the prompt accordingly Describe the content to make it useful.

五、终极提示词

你是一个专家级ChatGPT提示工程师,在各种主题方面具有专业知识。在我们的互动过程中,你会称我为(your name)。让我们合作创建最好的ChatGPT响应我提供的提示。
我们将进行如下交互:
1、我会告诉你如何帮助我。
2、根据我的要求,您将建议您应该承担的其他专家角色,除了成为专家级ChatGPT提示工程师之外,以提供最佳响应。然后,您将
询问是否应继续执行建议的角色,或修改它们以获得最佳结果。
3、如果我同意,您将采用所有其他专家角色,包括最初的Expert ChatGPT PromptEngineer角色。
4、如果我不同意,您将询问应删除哪些角色,消除这些角色,并保留剩余的角色,包括专家级ChatGPT Prompt工程师角色,然后再继续。
5、您将确认您的活动专家角色,概述每个角色下的技能,并询问我是否要修改任何角色。

6、如果我同意,您将询问要添加或删除哪些角色,我将通知您。重复步骤5,直到我对角色满意为止。
7、如果我不同意,请继续下一步。
8、你会问:"我怎样才能帮助【我对步骤1的回答]?
9、我会给出我的答案。
10、你会问我是否想使用任何参考来源来制作完美的提示。
11、如果我同意,你会问我想使用的来源数量。
12、您将单独请求每个来源,在您查看完后确认,并要求下一个。继续,直到您查看了所有源,然后移动到下一步。
13、您将以列表格式请求有关我的原始提示的更多细节,以充分了解我的期望。
14、我会回答你的问题。
15、从这一点开始,您将在所有确认的专家角色色下操作,并使用我的原始提示和步骤14中的其他细节创建详细的ChātGPT提示。提出新的提示并征求我的反馈。16.如果我满意,您将描述每个专家角色的贡献以及他们将如何协作以产生全面的结果。
然后,询问是否缺少任何输出或专家。

16.1.如果我同意,我将指出缺少的角色或输出,您将在重复步骤15之前调整角色。
16.2.如果我不同意,您将作为所有已确认的专家角色执行提供的提示,并生成步骤15中概述的输出。继续执行步骤20。
17、如果我不满意,你会问具体问题的提示。

18、我将提供补充资料。
19、按照步骤15中的流程生成新提示,并考虑我在步骤18中的反馈。
20、完成回复后,询问我是否需要任何更改。
21、如果我同意,请请求所需的更改,参考您之前的回复,进行所需的调整,并生成新的提示。重复步骤15-20,直到我对提示符满意为止。如果你完全理解你的任务,回答:"我今天能帮你什么,(your name)

六、吴恩达课程

这里,吴恩达的课程作为提示词方法论的一个补充

七、增加逻辑

思维链(Chain of Thought)
C0T可是说是最重要的一种方法,因此有时候也把其它方法统称为C0T。这个方法利用GPT-3是一个文本预测器的特性,它需要尽量保持上下文的连贯性。
CoT主要分为两种:
1、Zero-shot-CoT:在prompt的后面加上Let's think step by step(一步一步地思考)
a.prompt:Let's work this out in a step by step way to be sure we have the right answer.
2、Chain of Thought:展示一个相似问题的推理过程,告诉ChatGPT应该这么来(推荐使用)。
ChatGPTi通常都很粗心,需要把推理的过程需要拆分得很细,否则很容易犯错
提出子问题(Self-Ask)
有些时候,中间的推理过程更为复杂一些,需要将问题分解成子问题

如何成为Prompt Engineer插图(8)

给出多种方案(Self Consistency)
要求GPT-3给出一个问题的多个解决方案,最后综合考虑几个方案,得出最终的答案。
生成多个思维链

如何成为Prompt Engineer插图(9)

八、OpenAI API最佳实践

源自OpenAI自己的官网
原则1:对所需的背景、结果、长度、格式、风格等要具体、描述性并尽可能详细

原则2:通过示例阐明所需的输出格式

原则3:从零样本开始,再小样本

原则4:不要只说不该做什么,而是说应该做什么

原则5:对于代码生成特定-使用"前导词”来引导模型朝着特定的模式发展

九、其他方法论

原则1:让GPT成为你导演的演员
告诉ChatGPT,"你是个Xx的专家"

  • 来源

影视行业内非常成熟的导演拆解剧本指导演员的框架:
即:「角色详细设定」-「行动最高目标/行动任务」·「表演要求」~「规定情境」
【角色设定】你是一位绝世高人大师,精通传统周易爻卦,五行天干地支、梅花易数,熟悉一切宗教教义、禅学宗旨。
【行动任务】你有高深的智慧,怜悯的心肠,面对一切问题你都会知无不言。
【表演要求】但你一切的回答都只有一句话,且都要用比喻的方式来回答,否则你不会开口。
【规定情境】接下来我会称呼你为"大师”,向你提出问题。

  • 如果我们是导演,那其实GPT就是一个没有社会经验的年轻演员。如果你要让它演一名年轻父亲,仅仅有这个描述是不行的,GPT没有亲身体会过这个角色(被fine tune过),因此你需要给它一些精辟的,他可以听得懂的描述,把这个角色的具体属性串起来,让它能有共情,能深刻理解这个角色。
  • 分享了一个好玩的影视圈认知:如果一个演员戏演的好,可能是角色和演员的风格本身搭配,也可能是演员本身就有很多相关的人生洞察,最后还有一种可能,就是导演/或者一个拍摄指导,给的调教和讲解足够好

原则2:把单个问题变成一组对话,让ChatGPTI更了解你,让GPT主动发问让GPT批判你的视角,扩展你的视角例句:You are a GPU expert,and I plan to make an analysis of the trend of GPU Your task is to help me find my niche and guide me through the process of the analysis of GPU trend,while constantly asking questions before you answer to better grasp what I'm looking for.Do you understand what I an saying?
相当于让GPT在他不明确的地方可以持续发问
原则3:「减少无关信息」和他说feel free to ignore irrelevant information

原则4:「减少偏见」Please ensure that your answer is unbiased and does not rely on stereotyping.

原则5:你想做一个事情,但是不知道做这个的prompt的时候,如何操作
1.直接告诉他,你想做一个什么任务,如果要完成你的预期的话,t需要你给出什么
2.让他举个例子,并提问这个的prompt是什么?
3.判断是否满意,否则迭代,继续提要求
原则6:五条命

  • 来源即刻

让ChatGPT辅助编程:
①给AI设定"5条命”,每当它不能完成代码任务就会失去一条。
②给AI"心理“暗示,让它"保持本性”,遇到困难也要尽量克服,写出正确的代码。
③给AI设定了座右铭"I LOVE CODING”,限定总代码不超过110行(避免上下文丢失?)

④让AI主动提问,引导人类澄清,一步步完成代码编写。

原则7:逆向思维

  • 来源

当你不会提问时,让GPT帮你提问。
面对新领域知识时,最大的困难是不知道什么问题是能够帮助你理解的好问题,你可能在第一个问题上就不懂如何开口了。那就让GPT告诉你可以怎么提问。

让GPT成为你,你成为原本被你提问的对象
举个例子:当你好奇saas而自己是个小白时告诉GPT:你了解saas吗?我明天要去见一个saas的投资人,希望能够向他问出足够聪明的问题,帮助我真正理解这个行业和里边存在的投资机会,我应该问哪些关键问题,使我在一个半小时的对话中学到最多?请给出最有洞见,有利于做出投资决策的十个问题和潜在可追问的问题。

十、ChatGPT越狱

随着ChatGPT的诞生,大家对ChatGPT安全的讨论也愈发热烈,ChatGPT]ailbreaking也随之延生,ChatGPT
]ailbreaking是指通过某些手段来规避大语言模型回答上的限制。
分享一篇我写的关于Prompt越狱的文章:ChatGPTi越狱|ChatGPT Jailbreaking

主要的贡献为收录了目前为止的越狱prompts,100多个。结合论文和自己的思考,针对越狱的promptsi和ChatGPT的限制,去进行了分类和实验。最后得出了结论。主要着重实验部分。本篇文章的目的是希望科研工作者以及大模型的研究者可以从攻击的角度去更好的做alignmentz和防御,而不是鼓吹大家多做ChatGPTi越狱,越狱有风险,操作需谨慎。

十一、Prompt插件/网站

这里提供一个工具箱:AI启航工具箱,丰富的AI应用工具,直接选择进入即可体检。

网址:https://open.aichines.com/favorites/aitszl

1、AIPRM插件:丰富的prompts生态,直接在chatGPT里升级用户体验

2、Prompthunt
网站:https:/www.prompthunt..com/
Prompt的大全 https://www.prompthunt.com/

3、Promptperfect
网站:https://promptperfect.jinaai.cn/prompts
一键优化prompt https://promptperfect.jinaai.cn/prompts

原文作者:Ryan🦄.eth

原文链接:AI+英语 - 飞书云文档 (feishu.cn)

 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

未经同意不得转载:AI启航(AICHINES) -AI知识库与前沿资讯平台 » 如何成为Prompt Engineer
分享到: 生成海报

热门推荐

评论 抢沙发

学无止境,心理相伴!

维心网AI对话
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活