上下文学习&思维链COT&Prompt工程

发布于:2025-03-14 ⋅ 阅读:(11) ⋅ 点赞:(0)

一、上下文学习

上下文学习强调在学习过程中考虑问题所处的上下文环境。

1.1 上下文学习的分类

  • 零样本(Zero-Shot)上下文学习
  • 单样本(One-Shot)上下文学习
  • 少样本(Few-Shot)上下文学习

1.2 示例选择方法

两个主要依据是相似性和多样性

  • 直接检索:然后选取排名靠前的K个示例。
  • 聚类检索:把所有示例划分为K个簇,从每个簇中选取最为相似的示例,获取K个示例。
  • 迭代检索:下一个示例的选择依赖于当前的问题和已选择的示例。

1.3 性能影响因素

  • 预训练数据:领域丰富度、任务多样性、训练数据的分布
  • 预训练规模:模型参数规模
  • 演示示例:示例的数量和顺序

二、思维链

2.1 两种任务类型

(1)System-1任务

  • 依靠直觉和经验进行瞬间判断。
  • 随着规模(参数量、训练数据、算力)变大,模型性能显著提升。

(2)System-2任务

  • 运用逻辑分析、计算和有意识的思考来解决。
  • 模型会出现“Flat Scaling Curves”现象——即模型规模增长未带来预期性能提升。

2.2 思维链的定义

在提示中嵌入一系列中间推理步骤,引导大模型模拟人类解决问题时的思考过程,以提升模型处理System-2任务的能力

2.3 思维链的分类

在标准COT方法上,出现了许多扩展方法,这些方法按照其推理方式的不同,可以归纳为三种模式:按部就班、三思而行、集思广益

按部就班模式

强调逻辑的连贯性和步骤的顺序性

代表方法:

  • COT:手工构造(费时费力例子,作为示例放入Prompt,引导模型一步一步推理。
  • Zero-Shot COT:无需手工标注,只需提供简单的提示,如“Let's think step by step”,引导模型自行生成一条推理链。

魔法咒语:Let's think step by step.

  • Auto COT:聚类算法自动筛选相关样本,Zero-Shot生成思维链内容作为示例,引导大语言模型生成针对用户问题的推理链和答案。

不足:

  • 局部:在思维过程中不会探索不同的后续内容,即树的分支。
  • 全局:顺序链式输出,不存在回溯的过程。

三思后行模式

强调审慎和灵活

代表方法:

  • Tree of Thoughts(TOT):将推理过程构造为一棵思维树,允许模型在不确定时进行回溯重新选择。TOT从拆解、衍生、评估、搜索四个角度构造思维树。

  • Graph of Thoughts(GOT)

集思广益模式

强调观点和方法的多样性。

代表方法:

  • Self-Consistency:引入多样性的推理路径,从中提取并选择最一致的答案。

  • Universal Self-Consistency:利用LLMs自身选择最一致答案,支持更多种任务,无需答案提取过程。


三、Prompt工程

3.1 Prompt规范

编写规范的Prompt是与大语言模型进行有效沟通的基础。一个标准规范的Prompt通常由任务说明、上下文、问题、输出格式这几个部分中的一个或几个来组成。

3.2 Prompt技巧

  • 复杂问题拆解
  • 追问
  • 适时使用COT
  • 善用心理暗示:角色扮演or情景代入

3.3 Prompt工程应用

可以通过精心设计的Prompt激活大语言模型的内在潜力,而不需要对模型进行微调。Prompt已经在垂域任务、数据增强、智能代理等多个领域发挥出卓越性能。

(1)自然语言接口

  • Text to SQL
  • 代码生成

(2)大模型支撑的数据合成

  • Self-Instruct

(3)大模型增强的搜索引擎

(4)大模型赋能智能体

经典的智能体通常由大语言模型和四大模块组成,分别是:配置模块(Profile)、记忆模块(Memory)、计划模块(Planning)、行动模块(Action)。

单智能体仅包含一个智能体,交互相对简单,适用于简单任务。Prompt设计主要用于引导模型执行特定任务,且围绕单个上下文。

多智能体包含多个智能体,每个智能体都设定有角色和任务,交互复杂度高。他们协调、合作、竞争,以实现共同或各自目标。

(5)大模型驱动的具身智能

大语言模型是AGI的智慧引擎,机器人是大语言模型走向真实世界的物理载体。


四、参考

bilibili:浙江大学-大模型原理与技术