当前位置: 首页 > article >正文

上下文学习思维链COTPrompt工程

一、上下文学习

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

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:浙江大学-大模型原理与技术


http://www.kler.cn/a/584525.html

相关文章:

  • ClickHouse SQL优化:从原理到实战的深度指南
  • 【Grok3 deepseek-R1】利用伪逆方法求解机械臂速度级的运动方案
  • Unity知识总结——算法
  • 源IP泄露后如何涅槃重生?高可用架构与自动化防御体系设计
  • 计算机网络之应用层(控制连接与数据连接)
  • TCP为什么可靠?
  • 当今前沿技术:改变生活的新趋势与应用
  • Python个人学习笔记(15):模块(time)
  • 加速布局前置仓,京东健康自营大药房也要做即时零售仓店?
  • 定义未来!广东天谱科技集团有限公司荣获“GAS科创奖-产品创新奖”!
  • Python自动化脚本:2分钟快速搭建MTProto代理服务(支持多端口负载均衡)
  • C# 事件使用详解
  • logback希望特定的error日志写入到特定文件
  • 开源工具利器:Mermaid助力知识图谱可视化与分享
  • 海外服务器的网络带宽该如何进行选择?
  • Android/AOSP源码编译错误:TEMPORARY_DISABLE_PATH_RESTRICTIONS
  • 算法-字母异位词分组
  • Android 中临时文件存放路径选择
  • MOEFeedForward 模块
  • DeepSeek模型本地化部署方案及Python实现