|
ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.544px;color: rgb(0, 0, 0);text-align: left;background-color: rgb(255, 255, 255);visibility: visible;">
大型语言模型如 GPT 的基本能力是生成文本。它们在庞大的数据集上接受训练,以理解语言模式和上下文。 大模型响应的内容取决于您的提示词,您的输入产生大模型的输出。 这意味着编写一个好的提示对于经常使用生成式 AI 的人来说非常重要。 1. 什么是零样本提示想象有人要求你做一件你以前从未做过的事情,但他们没有给你任何具体的指示或例子来遵循。相反,你必须完全依靠你已知或过去学到的知识来解决问题。 例如,如果你已经学会了演奏几种乐器并理解了音乐理论,当有人突然要求你演奏一种你从未接触过的乐器上的歌曲时,你会利用你对音乐和乐器的普遍知识来尝试一下。 你可能没有用这种新乐器练习过,但你将应用从其他乐器中了解到的知识来解决问题。 在人工智能领域,一个 AI 模型使用它在此之前所接收的所有训练和知识来处理一个它尚未明确准备的任务。它不会获得任何特定例子或指导来完成这个新任务。它只是应用其一般理解和技能来尝试给出正确答案或解决方案。 这就是零样本提示。 如: Prompt:根据特征对动物进行分类。这种生物有八条腿,织网,通常以昆虫为食。 Output: 蜘蛛。 零样本提示是提示词的最简单形式。 直接指示模型执行任务,而不提供任何额外的示例来引导它,它是利用LLMs的泛化能力 虽然这项技术可能非常有效,但它是否成功取决于任务的复杂性和提示的质量。 这种方法与少样本提示(few-shot prompting)的方法形成对比,少样本提示(few-shot prompting)需要你给出一个或几个示例来指导模型的输出。 零样本提示展示了LLMs在跨领域泛化理解方面的惊人能力。只需一个清晰的指令,您就可以利用模型的知识库生成创意、信息丰富或特定任务的内容,无需额外训练。  2. 零样本提示是怎么生成一个合理答案的?为什么你问大模型一个陌生领域的问题,大模型会给你一个靠谱的答案。 从来没想过! 为了理解零样本提示的工作原理,必须明确两个重要方面:LLMs 的预训练和提示设计概念。 2.1 语言模型预训练LLMs 在海量数据集上进行广泛的预训练,这构成了其零样本能力的基础。预训练过程如下: 数据收集:LLMs在来自各种来源的多样化文本数据上进行了训练。这些数据量可能达到数百亿个单词。 分词:将文本分解成更小的单元,称为tokens,可以是单词、子词或字符。 神经网络架构:该模型通常基于 Transformer 架构,通过多个神经网络的层处理这些tokens。 预测训练:模型被训练,来通过给定之前的token去预测序列中的下一个token。 模式识别:通过这个过程,模型学会识别语言中的模式,包括语法、句法和语义关系。 知识获取:该模型构建了一个涵盖多个主题和领域的广泛知识库。 上下文理解:模型学习理解上下文并生成符合上下文的恰当回应 以上这为LLMs提供了必要的知识、理解和适应性,以实现零样本提示。这种广泛的预训练使得这些模型能够通过理解和响应自然语言提示来执行它们未明确训练的任务。 2.2 有效提示词的设计策略有效的提示词设计对于成功的零样本提示至关重要。它连接了用户的意图和模型的能力。但我们是怎样确保我们的提示有效的呢? 清晰的说明 提示应提供明确、清晰的指示,以传达所需的任务给LLM。 例 :“将以下英文句子翻译成中文:” 这个提示清楚地说明了任务(翻译),并指定了源语言(英语)和目标语言(中文),没有留下误解的余地。 任务框定 利用模型已有的知识和能力的方式来构建任务。 例 :“将这部电影评论的情感分类为正面、负面或中性:” 这个提示将任务框架作为一个分类问题,并提供了具体的类别,这与模型在文本分类任务中的训练相一致。 提供背景信息 包含相关的背景信息,以帮助模型理解任务的要求和限制。 例 :“鉴于在此上下文中,‘Python’指一种编程语言的背景下,请解释什么是 Python:” 这个提示提供了关键的上下文(Python 作为一种编程语言,而不是蛇),以确保模型关注相关信息。 输出格式规范 清晰定义期望的响应格式。 例 :“列出气候变化的三个主要原因,每个原因用一个独立的项目符号表示。” 该提示明确指定了项目的数量(三个)和格式(项目符号),确保结果结构化输出。 避免模糊性 使用精确的语言,避免模糊或开放式的指令,以免导致模型的误解。 例 :“描述水循环中涉及的具体步骤,从蒸发开始。” 这个提示使用了精准的语言(“具体步骤”,“水循环”),并提供了一个起点,降低了误解的可能性。 使用自然语言 以自然和对话的方式构造提示语。 例 :“想象一下你是一个职业顾问。你会给一个刚毕业的大学生在寻找第一份工作时什么建议?” 这个提示使用对话的语气,并设定了一个易于关联的场景,鼓励模型给出更自然和吸引人的回应。 迭代优化 如果初步结果不尽如人意,请通过增加更多细节或调整语言来优化提示。 例 :初始提示:“告诉我有关可再生能源的事情。”,优化后的提示:“解释三种最常见的可再生能源类型、它们的好处以及在实施过程中面临的挑战。” 这显示了如何将一个初步的宽泛提示优化为产生更集中和全面的回应。
3. 零样本提示局限性虽然零样本提示具有很大的能力,但理解其局限性和挑战是很重要的。 3.1 准确性有限制零样本提示不像专门针对特定任务训练的模型那样准确。这个限制来自多个因素: - 特定的优化不足:不像经过微调的模型,受益于针对特定任务数据的有针对性的训练,从而提高了该特定任务的准确性。
- 解释的变异性:模型对提示的解释可能并不总是与用户的意图完全一致,这可能导致不准确的结果。
- 复杂任务处理:高度专业化或复杂的任务可能需要提供的更细致的提示。
3.2 提示词的敏感性零样本提示的性能可能对提示的措辞非常敏感。 - 措辞:词汇或句子结构的轻微变化可能会改变模型对任务的理解。
- 指令清晰度:模糊或不精确的指令可能导致意外或不一致的结果。
- 上下文依赖性:提示的有效性可能会因其应用的具体输入或上下文而有所不同。
用一段示例文本来解释提示的细微变化如何导致模型的不同响应。 工业革命发生在18世纪至19世纪,这一时期欧洲和美洲的乡村农业社会逐渐转变为工业化和城市化社会。在工业革命之前,制造活动通常在家庭中进行,使用手工工具或简单机械。工业化引入了动力驱动的专用机械、工厂以及大规模生产。钢铁和纺织工业以及蒸汽机的发明和应用在工业革命中发挥了核心作用。此外,交通、通信和银行系统也得到了显著改善
提示词 1 :“用一句话总结这段文字:” 结果 1 :工业革命是 18 和 19 世纪的一个变革时期,它使欧洲和美国社会从农业转向工业,特点是工厂的兴起、大规模生产以及制造、运输和通信技术的进步。 该响应提供了一个简明的单句摘要,捕捉了工业革命的本质、时间框架、地点和关键特征。
提示词 2 :“请简要总结以下内容:” 结果 2 :工业革命是 18 世纪到 19 世纪一个重要的变革时期,主要影响了欧洲和美国。它标志着由农业、乡村社会向工业和城市社会的转变。在这个时代之前,制造通常是在家中使用简单工具完成的。革命带来了动力机械、工厂和大规模生产的方法。铁和纺织等关键行业发挥了重要作用,蒸汽机的发明也是如此。这个时期还见证了交通、通信和银行系统的进步,根本改变了经济和社会的格局。 这个回应比第一个更长,更详细。它涵盖了工业革命的更多方面,包括对特定行业和更广泛社会变革的影响。模型将“简要总结”解释为允许使用多个句子并进行更全面的覆盖。
提示词 3 :“这段文字的主要思想是什么?” 结果 3 :这段文字的主要思想是关于农业社会向工业社会的根本转变,强调了在 18 世纪到 19 世纪间欧洲和美国制造方法、技术和城市发展的重大变化。 该回应侧重于段落的中心主题或核心概念,而不是试图总结所有细节。它识别了关键的转变(农业到工业),并提到了广泛的变化领域,而没有深入到铁和纺织工业或蒸汽机等具体内容。
3.3 偏见预训练模型可能会表现出其训练数据中的偏见,这可能导致问题输出: 人口统计偏见:模型可能会产生与种族、性别、年龄或其他人口统计因素相关的偏见结果。 文化偏见:模型的回应可能偏向某些文化视角,而忽视其他视角。 最近性偏见:训练数据中更常见(通常是更近期)的信息可能在模型的知识中被过度代表。 刻板印象:模型可能会强化其训练数据中存在的有害刻板印象。
理解这些限制和挑战是有效使用零样本提示的关键。 重要的是要意识到潜在的不准确性、精心设计提示的重要性,以及需要批判性地评估输出结果,以发现可能潜在偏见。 |