关于ChatGPT是什么,能做什么,本节不再赘述。本节主要讨论如何写好prompt。Prompt是指向预训练模型输入的文本,用于引导生成模型生成指定的文本输出。它就像是一条指路路线,告诉计算机生成什么样的文本才能符合我们的需求。在使用ChatGPT时,Prompt的设计非常重要,它可以帮助引导模型生成更准确和有用的回答。
1、使用基础:
准确的角色定位:在一些相对专业的问题场景下,最好给ChatGPT一个清晰的角色定位,如python开发工程师,牙科医生,心理医生等,这样尽可能让回答区域准确,专业。
清晰的问题陈述:在Prompt中,确保您的问题或指令明确清晰。避免使用模糊或含糊不清的语言,这样可以帮助模型更好地理解您的意图。
提供上下文:在Prompt中提供一些相关的上下文信息,以帮助模型更好地理解问题。这可以包括相关背景知识、关键词或关键短语。
限制回答长度:通过在Prompt中明确指定所需的回答长度,可以避免模型生成过长或过短的回答。例如,您可以在Prompt中添加类似于“请提供一个简短的回答,不超过三句话”。
引导生成:如果您希望模型生成特定类型的回答,可以在Prompt中提供一些引导性的语句或示例。这可以帮助模型更好地理解您的预期回答,并生成相应的内容。
迭代和调整:根据ChatGPT的回答质量,您可以尝试不同的Prompt设计,并根据需要进行迭代和调整。这样可以逐步改进模型的回答准确性和相关性。
通过合理设计Prompt,您可以更好地引导ChatGPT生成符合您需求的回答。
2、常用技巧
在介绍下面的 prompt 技巧之前,需要先说明一点:这些技巧是经过许多人验证绝对可靠的,但这并不是唯一的方法。你应该做的是学会这些技巧,并且在实践中灵活运用、融会贯通。但最最重要的是不拘泥于这些技巧,要多学习其他人的优秀 prompt、论文或尝试自己的奇思妙想。
询问清晰、详细的问题 想要得到高度相关的回应,那就要提供详细的重要信息或上下文,不要让 GPT 猜测你的想法。
让 GPT 扮演指定角色 让 GPT 代入角色,可以使它明白从什么角度解析你的问题,也就更高概率的响应出你想要的答案。
Worse:编写代码以快速进行班级分数排名。
Better:作为一名拥有丰富编码经验的 Java 开发工程师,您需要编写一个函数来计算计算快速进行班级分数排名。你需要使用 Java 语言,并在代码中添加注释来解释每个部分的作用,以及为什么要以这种方式编写代码。
Worse:给我写一篇文章
Better:请你撰写一篇新闻风格的女性题材文章。文章主题围绕女性领导力、企业文化、性别平等等话题展开,尽可能准确地介绍最新的研究、事件和趋势,并使用简洁明了的语言风格,让读者能够轻松理解和掌握文章内容。
使用分隔符指示不同部分 使用分隔符,可以让 GPT 更明了的知道哪些是需要区别对待的文本,降低歧义的几率。
分隔符常用的是三引号"“”,三井号###。看自己习惯使用即可。
3、CRISPE框架
大神Matt Nigh推出了一种创建ChatGPT提示的创新框架——CRISPE。这个框架通过将提示创建过程拆解为清晰、独特的步骤,旨在帮助用户更有条理地构建提示并明确他们的需求。
- Capacity and Role(能力与角色):这一部分定义了你希望GPT扮演的角色和具备的能力。你可以设想GPT是一个专家、助手、学者或其他角色,并描述它应该具备的知识和技能。
- Insight(洞察力):这一部分提供了背景信息和上下文,帮助GPT理解问题的背景和相关信息。你可以提供相关的数据、事实、定义或其他信息,以便GPT能够更好地理解问题。
- Statement(指令):这一部分明确告诉GPT你希望它做什么。你可以提出问题、要求GPT解释某个概念、生成一段描述或其他具体的指令。
- Personality(个性):这一部分定义了GPT回答时的风格或方式。你可以要求GPT以某个人的写作风格回答,或者指定回答时的语气、情感或态度。
- Experiment(尝试):这一部分要求GPT提供多个答案或尝试不同的方法。你可以要求GPT给出多个例子、提供不同的观点或尝试不同的解决方案。
通过该框架模版我们能更准确描述和提出问题,但并不是说每一个步骤都必须完全遵守,我们可以通过实际情况做出合理增减,比如上面的列子“快速进行班级分数排名”,并没有Insight这一部分。如果有你指定上下文,完全可以通过先喂养数据再提问。掌握方法后更多是通过不断实践,总结最后能做到举一反三的效果。