1.3 基础但重要的优化方法——角色扮演
在上一章中,我们一起认识了 GPT 的第一个优化方法,即通过提供素材,来提高 GPT 内容输出的可靠性。在本章中,我们将一起认识第二个 GPT 的优化办法——角色扮演。
角色扮演法是什么?
身份扮演(Role-playing)是一种基于场景模拟和人物角色设定的优化方法,有助于 GPT 等 AI 模型更准确地理解和回答问题。
在这种方法中,用户可以通过设定 GPT 来扮演特定的角色,配合相应的情景、身份、性格或是背景资料,来引导模型更有针对性地生成回答我们提出的问题。比如,你可以让 GPT 扮演一位科学家,让他把复杂的科学概念解释得通俗易懂;也可以让它扮演一位 Linux 技术专家,让你快速上手 Linux 这个系统。
角色扮演法的优势和劣势
不管是什么 GPT 教程,角色扮演法都是 prompt 优化中必讲的技巧,甚至是很多教程的首选技巧。但在我实际的使用过程中,我发现角色扮演法并不是所有的场景都适用,或者说用身份扮演也不一定能得到最佳的结果。
通常而言,身份扮演法有如下的优势:
明确的角色和情境:通过设定特定的角色和情境,可以为模型提供更清晰的上下文信息,GPT 能更容易理解用户的需求或期望。
改善回答的质量:在特定角色的约束下,模型大概率生成更专业、贴切的回答,从而改善回答的质量。
创造性:在特定角色或情境的帮助下,我们可以借助 GPT 的创造性来生成更有趣、引人入胜的内容。
一劳永逸:只需要花心思编写一个优秀的角色扮演 prompt,便可有效解决某一类问题,并在多个对话中重复使用。
但身份扮演法同样绕不开下面的问题:
角色设定的准确性:身份扮演的效果取决于角色设定的准确性和合理性。如果角色设定过于模糊或不贴切,模型生成的回答会无法满足用户。
角色知识的局限性:模型的知识和经验来源于训练数据,因此在特定角色或领域上,模型可能仍然存在知识盲区和推理能力的不足。
过度依赖角色设定:在某些情况下模型可能过于依赖角色设定,从而忽视关键信息以及其他相关内容。
身份扮演法通常适合以下的问题类型:
需要专业知识的问题:通过设定具有某种专业知识的角色,如律师、医生、科学家等,可以引导模型生成更准确、专业的回答。
创意和想象力相关的问题:身份扮演可以鼓励模型发挥其想象力,从而生成有趣、独特的故事、对话及场景。
模拟真实场景的问题:身份扮演还适用于模拟真实场景,如面试、谈判、辩论等,让我们可以在虚拟环境中进行实践和学习。
如何写出好的身份扮演 Prompt
现在你知道了身份扮演的优势和缺陷,那么你在编写 Prompt 时就需要注意扬长避短了。我的建议是,在编写身份扮演 Prompt 时,里面的身份一定要明确到极致,比如我们想得到某个领域最专业的回答,那么 Prompt 就应该这样写:
而根据不同的问题类型,身份扮演 Prompt 最好要囊括:
所扮演身份的工作经验:有时候我们仅需简单了解某个专业知识,显然用简单的语言解释会更容易理解,而过于专业的术语反而会造成难以理解的困境。这种情况下,GPT 的身份就可以设定为实习生或新人。
详细的领域和工作内容:无论是领域与工作内容都应该越详细越好,最好将你的问题和有可能涉及到的领域与工作内容都列出来。
以及再次强调要以这个身份相符合的风格和水平回答。
接下来在 Prompt 后面明确你会提供的内容和需要回答的内容。
紧接着,根据 GPT 的特性,我建议提前规定好你提供内容的格式以及 GPT 回复内容的格式。这里也是我们编写「关键词应答」的地方,即当发送的内容含有某些关键词时,我们约定 GPT 需要回复什么。
稍后,我们还可以添加更多要求,比如特殊的风格、语气或需避免的否定条件,以使 GPT 生成的内容更符合预期。最后,再加一个确认的关键词,让你知道 GPT 已经理解并接受这个角色设定。
所以最终,身份扮演 Prompt 多合并起来大概长这样:
在这个演示中,我们可以看到在赋予 GPT 明确的角色身份与角色行为后,GPT 在翻译英文原文的时候,不仅贴合原著,也更加符合我们的预期和需求。与下方机器翻译的内容相比,生成质量有天壤之别,机器翻译甚至在人名的前后一致性方面都未能做到。
使用本文思路优化第三方 Prompt
现在,网上已经有很多好用、第三方的角色扮演 Prompt 了,得益于角色扮演法一劳永逸的特性,让我们不用每次遇到新需求,都要从头开始编写。
不过有的时候,第三方的角色扮演 Prompt 可能无法达成我们的目标,放在以前效果不行的话只能再搜索其它的 Prompt。
而在本章解析过角色扮演的 Prompt 的特点后,我相信读者在遇到不合适的第三方的角色扮演 Prompt 时,也能根据本章的思路及时调整,来将这个 Prompt 里面的角色打造为更加符合自己需求的个性化角色,实现更加有针对性的输出。
总结
除了直接为 GPT 提供素材之外,角色扮演法也是 GPT 优化方法中相当实用的一种。学习完两个非常常见而且简单的技巧之后,从下一章开始,我们就要学习一系列更加高级的优化方法了。这些高级的方法,不仅能让你更好地让 GPT 输出内容,也能更进一步地了解 GPT 的底层原理和特性,从而总结出自己独特的使用思路和方法。
最后更新于