大语言模型:LLM的高阶应用「指令工程」

0 评论 1794 浏览 1 收藏 11 分钟

在人工智能的疆域中,大语言模型(LLM)正以其强大的能力改变着我们与机器的互动方式。文章详细介绍了提示框架、提示工程和反向提示工程这三个关键知识板块,以及它们如何帮助企业级应用中的LLM克服数据偏差,提升生成结果的一致性和可控性。

在企业级应用中使用LLM(大语言模型),最重要的便是提示词的设计。提示词设计有3个重要的知识版块,分别是:提示框架、提示工程、反向提示工程。

提示框架:是一种结构化的提示词描述方式,用于引导模型学习数据的特征和模式,比较常用的提示框架包括CREATE提示框架(即:角色、请求、示例、调整、输出类型、附加功能)等等。

提示工程:具体来说,提示工程它是一组提示策略的组合,帮助LLM克服数据偏差,以及解决生成结果的一致性和可控性。具体的策略包括:给定样本、思维链、生成知识提示、提示一致性、等其他策略。

反向提示工程:指通过LLM从输出文本反向获取提示信息,优化了人工撰写提示词的不完备性。

在应用LLM的过程中,如果是简单的业务,可能只需要一系列简单的提示词组合即可实现业务诉求。但是大部分需要使用LLM的业务,并非是简单的业务,它需要综合考虑多系统、多角色、多任务的协同,此时再通过简单的提示词,将无法实现复杂的业务需求。而“提示工程”便是解决复杂业务过程中的利器。

今天我们主要来介绍一下LLM的高阶应用「提示工程」相关的关键策略。

一、给定样本提示

给定样本提示策略,即可向LLM提问时,为LLM提供正负样本。具体的策略包括:零样本提示、单样本提示、少样本提示。

1、零样本提示零样本提示的关键步骤包括详细描述任务需求和期望的模型响应样式,并将其构造为提示信息,然后使用该提示信息来引导大语言模型生成相应的结果。

零样本提示一方面避免了人工数据标记的高成本,另外能够更好地保留预训练模型所获得的知识。但是零样本提示也存在一些问题,它很大程度上依赖于LLM模型本身的能力,拥有更高的不可控性。

2、单样本提示单样本提示,即在输入的提示词中,提供一个示例,其目标是在仅有的提示信息下,使模型产生与给定主题或场景相关的连贯、合理和准确的输出。

单样本提示的优点在于高效的计算效率和强泛化能力。单样本提示也存在一定的挑战,如如何确保生成文本的质量和准确性、如何平衡多样性和连贯性等。

3、少样本提示少样本提示在零样本提示的基础上提供了极少量的训练示例来辅助模型完成特定任务。少样本提示的特点包括使用1~10个训练示例,结合自然语言描述的提示信息,直接引导模型生成新的响应,无须额外微调。

示例的主要作用是减少提示信息的歧义,提高模型对任务理解的准确度。同时,该方法仍保留了预训练模型的知识,避免过拟合于少量示例。

二、链式思维提示

链式思维提示是一种先进的提示工程技术,它通过鼓励大型语言模型(LLM)生成中间推理步骤来增强模型在复杂推理任务上的性能。这种方法特别适用于需要多步骤逻辑推理的问题,如算术、常识和符号推理等。

相较于其他提示方法,链式思维提示具有以下几个优点:

1、链式思维提示可以引导模型进行复杂推理,使模型能够在逻辑链的引导下进行多步骤的推理过程,而不仅仅进行简单的预测。

2、使用链式思维提示生成的输出更符合逻辑,具有更好的连贯性和一致性,使得模型的响应更加合理和可信。

3、链式思维提示的过程具有更高的可解释性和可检验性,因为每个步骤都可以被分析和评估,从而增加了模型的可靠性。

4、链式思维提示可以融合不同的思维技能,使得模型能够在多个维度上进行推理和思考,有效提高了模型的综合能力。

链式思维提示,核心应用了思维链的逻辑。在具体的指令工程设计过程中,提示词主要以:思维链提示、自我一致性与思维链提示、思维树3种方式来进行设计,具体采用哪一种,可根据业务的复杂程度来定,如下图所示:

对比4种模式:

输入/输出(IO):直接提问,然后输出结果;

思维链提示(CoT):将一个问题拆解为一个个小问题,然后串联起来;

自我一致性与思维链提示(Cot-SC):

对于一个复杂的推理问题,可以有多种不同的推理路径,但最终都能得出正确的答案,有点儿类似于条件判断 + 多条链式思维提示;

思维树(ToT):通过构建一棵思维树来分解复杂问题,并逐步推进思考过程,最终达到解决问题的目的,拥有更强的问题处理能力。

三、生成知识提示

“生成知识提示”(Generated Knowledge Prompting)是一种技术,它要求大型语言模型(LLM)在生成响应之前,先生成与问题相关的可能有用的信息。这种方法由两个中间步骤组成:知识生成和知识集成。

1、知识生成:在这一步骤中,要求LLM生成有关问题的一些事实。这些事实以few-shot的方式进行提示,即模型会生成多个不同的完成,以提供多个可能的知识片段。

2、知识集成:接下来,使用生成的知识来增强问题,并用这些增强的问题来提示LLM,以获得最终答案。例如,如果问题是关于袋鼠有多少肢体的,那么在知识生成步骤中,模型可能会生成关于袋鼠是有袋动物和它们有5条肢体的知识。然后,这些知识被用来增强问题,模型会根据这些增强的问题给出最终答案

这种方法显示了对各种常识数据集的改进,并且不需要对知识进行微调(有监督训练)或访问结构化的知识库,实验结果证明,这种提示方法优于少样本提示、向量库检索方式、微调方式

在实际应用中,生成知识提示技术可以提高模型在常识推理任务上的性能,尤其是在模型需要更多关于世界知识的任务时。

通过先从语言模型中生成知识,然后在回答问题时提供这些知识作为额外的输入,可以获取更优的结果。这种技术不仅可以提高模型的推理能力,还可以增加预测结果的稳定性和准确性

四、其他策略技巧

提示工程除了之前介绍的一些策略外,还有一些其他的一些策略,例如:结合其他能力、主动学习、强化反馈提示等。

1、结合其他能力

提示工程,可以结合“自动推理和工具使用提示”、“多模态连续学习提示”等提示策略来增强模型对提示信息的理解,综合利用更多信息可以生成更丰富的响应。

另外多模态连续学习提示是一种将多模态信息与链式思维提示相结合的技术。其主要思路包括提供包含图像、音频、视频等非文本模态的信息,构建链式多步骤的语言提示来引导思考,并将每步的提示信息与不同模态的内容相结合,形成多模态输入。模型通过学习多模态信息,完成链式推理,并生成最终的言语响应。

2、主动学习

通过让模型主动请求信息的方式来改进其对提示信息的理解,如主动提示、ReAct提示等,可以使对话更符合真实情况,减少误解。

3、强化反馈提示

强化反馈提示是一种利用人类用户的反馈来持续改进模型对提示信息的理解能力的方法。其核心思想是通过用户对模型生成响应的正反馈和负反馈,不断优化模型的表现。

用户的反馈意见被收集,并与相应的提示示例进行标记,形成带有反馈的提示—响应对作为训练数据,用于微调模型。通过强化用户反馈的学习过程,模型对提示信息的理解能力得到持续增强。

本文由人人都是产品经理作者【长弓PM】,微信公众号:【AI产品经理社】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。

题图来自Unsplash,基于 CC0 协议。

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 目前还没评论,等你发挥!