2.1.1 提示工程

在大模型的垂直领域应用中,提示工程(Prompt Engineering)是一种重要的适应性方法。该方法基于一种前提:适当构造的提示(上下文)能够有效引导模型生成期望的输出,而无须对模型参数进行调整。这种方法在资源受限的环境下尤为重要,因为它避免了昂贵的模型重新训练的过程。提示工程可以被理解为一种“软微调”技术。在实践中,这要求开发者对大模型的响应方式有深入的理解,以便准确地构造提示。例如,当设计提示以引导模型在法律垂直领域中提供专业建议时,提示的上下文应紧密贴合法律术语和逻辑。

提示工程的有效性在很大程度上取决于提示的质量。过于冗长或复杂的提示可能导致模型处理更多的令牌(Token),增加计算成本和时间。因此,提示应尽可能简洁明了,同时提升模型的表现。在此背景下,零样本(Zero-shot)或单样本(One-shot)学习成为一种重要策略,它允许模型在没有或几乎没有特定领域示例的情况下进行有效的垂直领域适应。

除了传统的提示设计,研究人员还在探索如何使用其他技术来提高提示的效果。例如,自洽提示(Self-consistency Prompt)是通过多轮对话来提高模型输出一致性的方法,而生成性知识提示(Generative Knowledge Prompt)则是用于提升模型在特定知识领域内生成能力的技术。在这一过程中,使用标准化的提示模板(如LangChain)可以帮助研究者和实践者更有效地跟踪实验进展并复制成功的案例。这种方法不仅提高了实验的可重复性,还加快了新任务的适应速度。例如,在设计一个提示来引导模型进行代码错误诊断时,可以从简单的错误描述开始,并逐步增加复杂性,如包括特定编程语言的语法和逻辑结构,以评估不同级别的提示对模型性能的影响。

在构建LLM的提示中,思维链(Thought Chain)、思维树(Thought Tree)与思维图(Mind Map)是结构化思考和问题解决的工具。它们可以有效地与自洽提示和生成性知识提示结合使用,适用于解决复杂任务或需要深入理解和分析的场景。

如图2.2所示,思维链是一种线性的思考模式,它按顺序将思考过程中的点连接起来。在提示工程中,它可以帮助我们构建一系列逻辑上连贯的提示,引导模型沿着特定的推理路径进行思考。这种方法可以用来开发自洽提示,通过确保链中的每一步逻辑上都跟随前一步,从而引导模型产生连贯且有逻辑性的输出。例如,在生成一个复杂的故事或论证时,我们可以使用思维链来确保模型的输出具有连贯性和逻辑性。

图2.2 思维链示意图

如图2.3所示,思维树是一种层次化的思考模式,它从一个中心点分支出不同的思考路径。在LLM的应用中,思维树可以帮助设计复杂的提示框架,其中每个分支代表不同的方向或选择。这种方法特别适用于需要模型评估多种选项或生成多个解决方案的任务。在创建生成性知识提示时,这些提示特别有用,因为它们允许提示设计者探索与中心主题相关的不同知识方面或类别,然后生成鼓励模型在这些类别内产出输出的提示。与思维链相比,思维树可以从多角度探索,从而增强创造力。但是由于思维树可能涉及多个分支和层次,设计和管理这样的提示框架相对更复杂,过多的分支还可能导致决策困难,使得模型难以在多个可能的输出中做出最佳选择。

如图2.4所示,思维图是一种更加自由的思考工具,它允许思考元素在二维空间中相互关联。在LLM的提示工程中,思维图可以帮助设计者理解和探索不同概念间的关系,从而创建出能够激发模型多角度思考和创造性回答的提示。此外,思维图还可以在设计自洽提示和生成性知识提示时,通过直观地组织各个概念区域,确保模型的回应涵盖广泛的相关话题,并在该框架内保持一致性。相较于更为线性或层次化的思考工具,思维图具有更高的灵活性,允许随时添加或重新组织概念。这种灵活性特别适合不断发展和扩展的思考过程,能够适应不断变化的设计需求。同时,思维图可能过于复杂,从而会影响提示的设计和优化过程,使大模型难以给出清晰、有用的输出。

图2.3 思维树示意图

这些工具可以帮助设计者系统地理解问题和知识结构,并据此构建出引导模型输出的高质量提示。然而,它们的有效性依赖于设计者对模型的理解,以及将复杂的思维结构转化为简洁、有效提示语言的能力。自洽提示的设计旨在通过要求模型考虑和协调响应的不同部分或对问题的不同回应,确保最终结果的连贯性,使模型的输出更可靠。思维链和思维树提供的结构对于构建这类提示至关重要,因为它们确保模型输出的每个部分都是逻辑连接的。另外,生成性知识提示用于从模型中引出创造性或基于知识的输出。它们可能会要求模型基于某一知识领域生成想法、解释或内容。思维图在构建这类提示时特别有帮助,因为它们鼓励对一个主题进行整体观察,并可以提供更具创造性和全面性的提示。

图2.4 思维图示意图

在实际应用中,设计者可能会使用这些工具来映射出一个问题的不同方面,然后基于这些映射创建出精确的提示,从而指导LLM沿着特定的思考路径生成答案。这些答案可能涉及概念的关联、推理过程、解决问题的步骤或创造性的想法生成。例如,设计一个关于市场分析的提示时,可以使用思维图来标示出不同的市场因素(如供需、趋势、竞争对手等),然后构建提示来让模型分析特定因素如何影响市场动态。这样的方法不仅有助于生成有深度和广度的分析,而且可以提升模型在特定应用领域中的表现。提示工程为LLM的有效应用提供了一种节约资源的途径,特别适合资源受限或需快速部署的场景。然而,它的成功依赖于精确的提示设计和对模型行为的深入理解。随着技术的不断进步,预计会有更多创新的提示方法出现,进一步推动LLM在各垂直领域的发展。