什么是提示词工程
当我们将目光投向历史,可以发现人机交互的接口其实是相对稳定的,几十年才会有一次变化。但是,每一次变化所带来的影响都是深远的,往往都会掀起一场革命。
在CUI(Command-Line User Interface,命令行用户界面)时代,用户需要通过输入命令来操作计算机,UNIX和DOS 就是这一代的代表。21世纪的我们已经很难想象,用命令行操作系统到底是什么样的体验。但是一场席卷全球的信息革命就是这么展开的。
后来,GUI (Graphic User Interface,图形用户界面)应运而生,它最初由施乐公司开发,应用于苹果的Macintosh系统,并通过微软的 Windows系统得到了广泛普及,从20世纪80年代一直延续到现在,涵盖了电脑、手机、平板等各种设备的用户界面。各种网站、App、软件其实都是GUI的不同形态,而这种UI的变化,就已经足够让我们看到PC互联网和移动互联网两波浪潮。
而提示词打开了LUI(Language User Interface,自然语言用户界面)的大门。这个曾经停留在学术界的概念,终于等了它的时代。而我们也站在了人类迄今为止最大的一场技术革命的门口。在集齐了数据、模型、硬件之后,LUI这种人与AI交互的新范式,补齐了AI革命的最后一块拼图。
什么是提示词(Prompt)
当移动互联网的红利期结束,ChatGPT横空出世,打开的不仅是人与AI交互的普通语言用户界面,更是一场技术革命的大门。在人工智能的各个分支中,我们惊奇地发现经历了不同的进化过程后,最终都汇集到了同一个方向,也就是人类语言去指导AI的生成。AI画图、AI写作、AI作曲、AI视频,这些曾经觉得门槛极高的方向,竟然在经过自然语言处理后,用如此优雅的方式,得到了统一的最优解,而这就是提示词。
从表面上看,提示词像是普通的文本输入,但如果我们把AI想象成一个具有各种超能力的魔法伙伴,那么你输入的文本就是魔法咒语,让这个伙伴完成各种不可思议的创作。 过去,人们通常是通过命令或者输入特定的指令来与AI进行交互。但是,随着自然语言处理和计算机视觉等技术的发展,人们可以更加自然地与AI进行交互,这意味着人与AI之间的交互式正在发生一场深刻的变革。
提示词的使用让人们能够轻松地掌握人工智能的创作能力,且不需要具备深厚的专业知识或技能。同时,由于提示词可以根据用户的需要进行定制和修改,因此用户可以根据自己的需求和兴趣来生成不同的内容,从而实现个性化的创作。 随着AI技术的不断发展和进步,提示词的应用范围也在不断扩大。例如,在文本生成领域,可以使用提示词来生成新闻报道、科技文章、小说等不同类型的文本;在图像生成领域,可以使用提示词来生成人像、风景、动物等不同主题的图像;在音乐和视频生成领域,可以使用提示词来生成不同风格和类型的音乐和视频。
提示词看似简单,但其实是一个人的综合能力的体现。这也是为什么同样的AI工具,在有的人手里可以妙笔生花,下笔千言,在有的人手中,就始终用不起来。其实问题的核心就在于,很少有人去深入思考,提示词是一种能力。既然是一种能力,那么它就是可以训练出来的。
Prompt的组成要素和类型
Prompt 的组成要素通常包括文本、标点符号、关键词、语法和结构等。这些要素可以帮助指导AI模型生成更加准确和相关的输出。具体来说,以下是一些常见的 Prompt 类型及其组成要素。
指令式提示词: 这种类型的提示词是指导AI模型执行某种任务的命令式语句。它通常包括动词、名词和其他必要的指示,例如,打开电视、关掉灯、发邮件给xx等。
描述性提示词: 这种类型的提示词描述了模型需要生成的内容。它通常包括关键词、主题和问题等,例如,写一篇关于环保的文章、描述一下著名的历史事件等。
问答式提示词: 这种类型的提示词包括一个问题和一个或多个可选答案。它通常包括关键词、问题、答案和上下文等,例如,“谁是美国第一位总统?”,“答案是:乔治华盛顿”等。
聊天式提示词: 这种类型的提示词是一种自然语言的对话,用于与AI模型交互和产生相关的输出。它通常包括问题、回答、提醒和建议等。
也可以按照使用场景来划分 Prompt 的类型。下面是一些常见的 Prompt 类型及其对应的使用场景。
AI生成图像: 这种类型的 Prompt 用于生成图像或者进行图像处理。比如,可以使用这类 Prompt 来生成人脸、动物或风景等图像。
AI生成文本: 这种类型的 Prompt 用于生成文本或者完成文本相关的任务。比如,可以使用这类 Prompt 来写文章、自动生成邮件、回答问题等。
AI生成代码: 这种类型的 Prompt 用于生成代码或者完成编程相关的任务。比如,可以使用这类 Prompt 来编写算法、自动生成程序代码、进行数据处理等。
AI生成音乐: 这种类型的 Prompt 用于生成音乐或者进行音乐相关的任务。比如,可以使用这类 Prompt 来创建旋律、和弦、节奏等。
AI生成视频: 这种类型的 Prompt 用于生成视频或者进行视频相关的任务。比如,可以使用这类 Prompt 来生成动画、特效、剪辑等。
在选择和设计 Prompt 时,需要根据具体的应用场景和需求选择合适的类型和组成要素。同时,为了确保能够指导AI模型产生正确的输出,需要注意 Prompt 的长度、清晰度和完整性。下面总结了一些一般性的指导原则。
长度: Prompt 的长度,一般以10~100个中文字符为宜。在某些任务中,输入文本可能很长,比如“对以下这篇通稿进行摘要”,随后输入长篇通稿,通稿的部分不计算在 Prompt 的长度内。
任务清晰: 输入和输出都要清晰。以通稿为例子,如要拟标题,则应该告诉AI“对以下这篇通稿拟一个10个字左右的标题";如果要拟副标题或者引语,则应该相应调整字数。
完整: 包括以什么身份来完成问题,需要使用附加的信息或者考虑额外的限制条件,面向的人群等。 以为例子,以纸媒传播的标题和以新媒体平台传播的标题是不同的,遵守广告法等也是必要的。因此,一个合适的 Prompt 应该是:“对以下这篇通稿拟一个10个字左右的标题,用于在微信公众号等新媒体平台进行传播,注意不要出现夸大事实等违反相关法律法规的字眼。”
在不同场景下,Prompt 也会有更多的考虑因素,但是以上三条原则将是最基础的。
有效Prompt和无效Prompt
制定有效的ChatGPT提示的原则。一个好的提示必须清晰、简明、相关,具有明确的目的和焦点,避免过于宽泛或个人化的内容,这样才能确保ChatGPT生成有用且相关的响应,使对话变得更加有趣、信息更加丰富。
提示词技巧一:角色扮演
一个编写有效的ChatGPT提示的技巧是“扮演”。你可以指定 ChatGPT在对话中的角色并明确你想要的输出类型,以提供清晰的方向和指导。同时,还要注意避免使用行话和模糊的话。使用简单、直接的语言并避免开放式问题,可以帮助ChatGPT提供相关且准确的响应。请记住,ChatGPT是一种工具。就像任何工具一样,它的有效性取决于使用它的人。遵循最佳实践,了解工具的能力和局限性,制定明确定义的提示,以帮助你充分利用ChatGPT并实现你的目标。
提示词技巧二:举例提示
如果某种情况太过复杂而难以说清楚,举例提示就很好用。比如,让语言模型仿照你的写作风格写篇文章,与其费劲描述半天,不如直接举例子:
仿照我的写作风格撰写关于XXX的文章。例子:<文章1>,<文章2>
编写某个函数时,如果你很难说清其作用,只知道输入和输出,就可以直接举例子:
我希望实现这样的函数:输入January,给出JAN输入February,给出FEB以此类推
提示词技巧三:思维链
对于一个问题,人需要推理来解决,大语言模型也是如此。思维链始于2020年Jason Wei等人的发现,主要研究的就是如何把问题的推理过程提供给大语言模型,以大幅提升其答案的准确性。从问题到推理,再到答案,这样一环扣一环的过程便被称为思维链(Chain of Thought)
然而,如果每个问题都需要人类提供推理,那么效率太低了,大语言模型必须自己掌握推理过程。研究人员发现,只要问对问题,大语言模型便能自然而然地开启推理模式。通过选择合适的问题,利用大语言模型的语言生成能力,可以让大语言模型自行生成推理,从而轻松构建思维链。这被称为零样本思维链(Zero-shot Chain of Thought)。
零样本思维链在各大数据集上取得了傲人的成果。提示工程师们测试了不少问法,比如,能促进模型深入思考的问法——“Let’s think step by step”(让我们一步步想)、“The answer is after the proof”(先证明下,再给答案);会产生误导的问法——“Let’s count the number of‘a’in the question”(数数问题中有几个“a”);问不出任何答案的问法——“It’s a beautiful day.”(天气真好)。经过多轮测试,研究人员发现“Let’s think step by step”(让我们一步步想)这句话最能提升推理结果的准确性。这句话一时也被称作“咒语”。
思维链对早期版本的ChatGPT带来提升:
本文内容主要来源自: 《Prompt魔法:提示词工程与ChatGPT行业应用》 《ChatGPT进阶:提示工程入门》 《驾驭ChatGPT:学会使用提示词》