零样本思维链(Zero-shot CoT)

Large Language Models are Zero-Shot Reasoners (Kojima et al., 2022)

这篇文章研究了大型语言模型 (LLMs) 在推理任务上的能力,并提出了一种名为 Zero-shot-CoT 的新方法,该方法能够有效地引导 LLM 进行多步骤推理,并在各种推理任务上取得了显著的成果。

是基于我上一篇博客思维链 Chain-of-Thought Prompting-CSDN博客的后续研究,因为上一篇博客中的提示需要使用少样本提示(Few-shot-CoT)而提出来的零样本提示(Zero-shot-CoT)。

 文章发现,在标准零样本提示方法无法取得良好效果的情况下,简单的添加 “Let’s think step by step” 提示,就能够显著提升 LLM 在算术、符号推理以及其他逻辑推理任务上的表现。

其实过程非常简单

Zero-shot-CoT方法通过两阶段提示引导模型生成推理过程和答案:

  1. 推理提取阶段(Reasoning Extraction):通过添加触发句(如“Let’s think step by step”)让模型生成逐步的推理路径。

  2. 答案提取阶段(Answer Extraction):基于生成的推理文本,使用特定格式提示(如“Therefore, the answer is”)提取最终答案。

具体步骤
  1. 推理提取阶段

    • 输入格式:将问题转换为模板“Q: [问题]. A: [触发句]”(例如“Q: 小明有5个苹果… A: Let’s think step by step”)。

    • 模型生成:模型输出详细的推理过程(如数学计算、逻辑推导)。

  2. 答案提取阶段

    • 输入格式:将推理文本与答案触发句拼接(如“[推理文本] Therefore, the answer is”)。

    • 模型生成:输出最终答案(数值、选项字母等),并通过正则匹配提取。

例子

问题
小明有5个苹果,他每天吃2个。这些苹果能吃几天?

阶段1:推理提取

  • 输入

    Q: 小明有5个苹果,他每天吃2个。这些苹果能吃几天?  
    A: Let’s think step by step.  
  • 模型生成

    小明有5个苹果,每天吃2个。  
    第一天吃完后剩下5-2=3个;  
    第二天吃完后剩下3-2=1个;  
    第三天只能吃1个,不够2个。  
    所以总共能吃2天。  

阶段2:答案提取

  • 输入

    Q: 小明有5个苹果… A: Let’s think step by step.  
    第一天吃完后剩下5-2=3个… 所以总共能吃2天。  
    Therefore, the answer is  
  • 模型生成

    2  
  • 最终解析:通过正则提取数字“2”。

有意思的是,同时论文也告诉你不是简单添加"Let's think step by step"而是通过他们多次严重准确率最高的

论文揭示了大型语言模型在零样本场景下的强大推理潜力,挑战了传统观点(即复杂推理需依赖任务特定示例或微调)。Zero-shot-CoT不仅为推理任务提供了高效的基线方法,还提示研究者应更深入探索语言模型中隐藏的零样本能力。未来工作可进一步挖掘多任务通用提示,以释放模型的高层次认知潜能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/896616.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

day01_Java基础

文章目录 day01_Java基础一、今日课程内容二、Java语言概述(了解)1、Java语言概述2、为什么要学习Java语言3、Java平台版本说明4、Java特点 三、Java环境搭建(操作)1、JDK和JRE的概述2、JDK的下载和安装3、IDEA的安装4、IDEA的启动…

设计模式 之 生产消费者模型 (C++)

文章目录 设计模式 之 生产消费者模型 (C)引言生产消费者模型的基本概念为什么需要生产消费者模型应用场景:C 实现生产消费者模型代码示例代码详细解释共享资源和同步机制生产者函数 producer()消费者函数 consumer()主函数 main() 注意事项总…

Spring Boot 项目开发流程全解析

目录 引言 一、开发环境准备 二、创建项目 三、项目结构 四、开发业务逻辑 1.创建实体类: 2.创建数据访问层(DAO): 3.创建服务层(Service): 4.创建控制器层(Controller&…

数据结构课程设计(java实现)---九宫格游戏,也称幻方

【问题描述】 九宫格,一款数字游戏,起源于河图洛书,与洛书是中国古代流传下来的两幅神秘图案,历来被认为是河洛文化的滥觞,中华文明的源头,被誉为"宇宙魔方"。九宫格游戏对人们的思维锻炼有着极大…

GPT-4.5 怎么样?如何升级使用ChatGPTPlus/Pro? GPT-4.5设计目标是成为一款非推理型模型的巅峰之作

GPT-4.5 怎么样?如何升级使用ChatGPTPlus/Pro? GPT-4.5设计目标是成为一款非推理型模型的巅峰之作 今天我们来说说上午发布的GPT-4.5,接下来我们说说GPT4.5到底如何,有哪些功能?有哪些性能提升?怎么快速使用到GPT-4.…

【vscode-解决方案】vscode 无法登录远程服务器的两种解决办法

解决方案一: 查找原因 命令 ps ajx | grep vscode 可能会看到一下这堆信息(如果没有大概率不是这个原因导致) 这堆信息的含义:当你使用 vscode 远程登录服务器时,我们远程机器服务端要给你启动一个叫做 vscode serv…

一、对4*3按键模块编程分析

一、4*3键盘模块实物分析 说明: 1、横着4排,竖着3列,加起来共7组,所以对外引出7根线。 2、根据排针终端引脚又可分两类。即横排和竖列对应的引脚。 二、代码编写构想: 1、使用7个gpio输入中断,检测7个…

自然语言处理NLP入门 -- 第十节NLP 实战项目 2: 简单的聊天机器人

一、为什么要做聊天机器人? 在互联网时代,我们日常接触到的“在线客服”“自动问答”等,大多是以聊天机器人的形式出现。它能帮我们快速回复常见问题,让用户获得及时的帮助,并在一定程度上减少人工客服的压力。 同时&…

linux(1)文件管理

文章目录 文件目录系统相对路径绝对路径命令解析器文件管理 文件目录系统 bin: 二进制文件目录,存储可执行文件 dev:设备目录,所有的硬件都会抽象成文件存储,比如鼠标键盘 home:存储普通用户的家目录 li…

CSS—选择器详解:5分钟动手掌握选择器

个人博客:haichenyi.com。感谢关注 1. 目录 1–目录2–引言3–种类4–优先级 引言 什么是选择器? CSS选择器是CSS(层叠样式表)中的一种规则,用于指定要应用样式的HTML元素。它们就像是指向网页中特定元素的指针&#…

大模型微调入门(Transformers + Pytorch)

目标 输入:你是谁? 输出:我们预训练的名字。 训练 为了性能好下载小参数模型,普通机器都能运行。 下载模型 # 方式1:使用魔搭社区SDK 下载 # down_deepseek.py from modelscope import snapshot_download model_…

DeepSeek实战

DeepSeek 接入实战:从零开始快速上手 引言 在当今的 AI 领域,DeepSeek 作为一个强大的自然语言处理(NLP)平台,提供了丰富的 API 接口,帮助开发者快速实现智能对话、文本生成、语义分析等功能。本文将带你…

Android NDK打包封装教程与优化技巧

关于NDK打包封装的问题。首先,用户可能不太清楚NDK的基本概念,所以我应该先解释NDK是什么以及它的作用。然后,用户可能想知道如何在Android项目中使用NDK,所以需要分步骤说明配置过程,包括安装NDK、配置CMake或ndk-build,创建JNI接口,编写C/C++代码,编译和打包。 接下…

【告别双日期面板!一招实现el-date-picker智能联动日期选择】

告别双日期面板!一招实现el-date-picker智能联动日期选择 1.需求背景2.DateTimePicker 现状图3.日期选择器实现代码4.日期选择器实现效果图5.日期时间选择器实现代码6.日期时间选择器实现效果图 1.需求背景 在用户使用时间查询时,我们经常需要按月份筛选…

Linux(ftrace)__mcount的实现原理

Linux 内核调试工具ftrace 之(_mcount的实现原理) ftrace 是 Linux 内核中的一种跟踪工具,主要用于性能分析、调试和内核代码的执行跟踪。它通过在内核代码的关键点插入探针(probe)来记录函数调用和执行信息。这对于开…

Java注解(Annotation)

一、注解的定义 核心概念 注解是Java中一种特殊形式的“元数据”,用于为类、方法、字段、参数等代码元素附加说明信息。它不会直接影响代码逻辑,但可以通过编译器、框架或反射机制进行解析和处理。 与注释(Comment)的区别 注释&a…

tauri2+typescript+vue+vite+leaflet等的简单联合使用(一)

项目目标 主要的目的是学习tauri。 流程 1、搭建项目 2、简单的在项目使用leaflet 3、打包 准备项目 环境准备 废话不多说,直接开始 需要有准备能运行Rust的环境和Node,对于Rust可以参考下面这位大佬的文章,Node不必细说。 Rust 和…

深入解析 Svelte:下一代前端框架的革命

深入解析 Svelte:下一代前端框架的革命 1. Svelte 简介 Svelte 是一款前端框架,与 React、Vue 等传统框架不同,它采用 编译时(Compile-time) 方式来优化前端应用。它不像 React 或 Vue 依赖虚拟 DOM,而是…

关于流水线的理解

还是不太理解,我之前一直以为,对axis总线,每一级的寄存器就像fifo一样,一级一级的分级存储最后一级需要的数据。 像这张图,一开始是在解析axis流形式的数据包,数据包一直都能输入,所以valid一直…

Python代码之美:从规范到艺术

基础规范:代码的"颜值"很重要 👉大礼包🎁:👈 PEP 8:不只是规范,是写作艺术 良好的代码格式就像优美的书法,让人赏心悦目。比如: # 不推荐的写法 def calcul…