大模型论文:Language Models are Few-Shot Learners(GPT3)
大模型论文:Language Models are Few-Shot Learners(GPT3)
文章地址:https://proceedings.neurips.cc/paper_files/paper/2020/file/1457c0d6bfcb4967418bfb8ac142f64a-Paper.pdf
一、摘要
我们证明了,扩大语言模型的规模在任务无关的 few-shot 学习任务中极大提升了表现,有时甚至能与此前最先进的微调方法相竞争。具体来说,我们训练了 GPT-3,这是一种具有 1750 亿参数的自回归语言模型,其参数数量是此前任何非稀疏语言模型的 10 倍。我们在 few-shot 设置中对其性能进行了测试。
对于所有任务,GPT-3 都是在没有任何梯度更新或微调的情况下使用的,其任务和 few-shot 示例完全通过文本交互的方式输入给模型。在许多自然语言处理(NLP)数据集上(包括翻译、问答和完形填空任务),GPT-3 都取得了出色的表现。
我们也指出了一些数据集,在这些数据集上 GPT-3 的 few-shot 学习仍然存在困难,以及某些 GPT-3 在大规模网络语料训练中面临方法学问题的数据集。
二、背景
-
自然语言处理(NLP)已经从学习任务特定的表示形式和设计任务特定架构,转向使用任务无关的预训练和任务无关的模型架构。比如GPT1还需要属于特定于任务的半监督模型,使用无标签语料数据预训练,对于特定任务,使用带标签数据进行微调。而GPT-2开始打破了这一限制,提出了统一的任务无关预训练模型。它在更大规模的无监督文本数据上进行训练,仅通过“语言建模”这一单一目标函数,学习通用的语言表示。在下游任务中,GPT-2不再依赖任务特定的模型结构,而是直接通过“少量示例”(few-shot learning)或“零样本学习”(zero-shot learning)进行泛化,表现出令人惊讶的迁移能力
-
本文提出的GPT3(1750亿参数)将这一趋势进一步加强。GPT-3拥有1750亿个参数,是当时最大规模的预训练语言模型。它不再需要显式微调,而是依赖“提示工程” (prompt engineering)来完成各类任务。这种方式不依赖具体任务的模型参数调整,只需将任务以自然语言描述的方式嵌入输入中,模型即可根据上下文进行推理和生成答案,极大地提升了语言模型的通用性与可扩展性
-
本文的实验显示,GPT-3 即使不进行任何微调,只靠上下文提示,也能在特定任务上达到甚至超过当前最先进模型
-
本文还训练了一系列较小模型(从 1.25 亿参数到 130 亿参数),用于与 GPT-3(1750 亿)在 Zero-/One-/Few-shot 设置下进行对比。然后发现一个明显趋势:随着模型容量的提升,Zero-/One-/Few-shot 表现之间的差距逐渐缩小,表明较大模型在“元学习能力”上更强,能够更好地通过上下文示例学习并完成新任务
三、方法
1、方法概述
-
本文采用与GPT2类似的基础预训练方法,主要变化时扩展模型规模、数据集规模与多样性、训练时长。本文使用的上下文学习方式也类似于GPT2,但本研究还系统性地探索了不同上下文学习设置下的模型表现
-
Fine-Tuning(微调):
使用数千条任务特定的有监督标签数据来更新预训练模型的权重。
优点:在许多基准任务上性能强。
缺点:每个任务都需要新数据集、泛化能力弱、可能过拟合训练数据中的偏差特征。 -
Few-Shot(少样本):
模型在推理时被给予少量任务示例(上下文 + 输出),但模型参数不更新。
示例格式通常为“输入:英文句子,输出:对应法文翻译”等,K 表示上下文中提供的示例数量(常设为 10–100),受限于模型最大上下文长度(例如 GPT-3 是 2048 token)。
优点:无需大规模任务数据。
缺点:效果仍低于微调模型;仍需少量任务样本。 -
One-Shot(一样本):
是 Few-shot 的特例,K = 1,仅提供一个示例。
-
Zero-Shot(零样本):
与 Few-shot 相似,但不提供任何示例,只用自然语言说明任务(prompt)。
Few-shot 学习可看作是一种上下文中的提示式迁移,不涉及训练,仅依赖模型内部“知识泛化”能力,评估的是模型是否能“看几个例子就会做”。
-
2、Model and Architectures 模型架构
-
本文使用了 GPT-2 相同的模型架构,包括修改后的初始化、归一化方式、可逆的 token 编码方案。不同之处在于本文采用了稀疏注意力机制(dense + 局部带状 sparse 模式),并训练了 8 种不同规模的模型,从 1.25 亿参数到 1750 亿,最大模型即为 GPT-3。 这种规模范围可以检验“扩展规律”(scaling laws)是否成立。
-
GPT-3 与 GPT-2 架构基本一致,但增加了参数数量和引入稀疏注意机制以优化大规模训练;
-
通过训练不同规模的模型来观察性能与规模的关系(验证“模型越大越强”是否成立)。
3、 Training Dataset 训练数据集
为了构建训练集,本文从 CommonCrawl 下载并过滤了一部分数据:
- 根据多个高质量语料相似度进行筛选;
- 跨数据集与文档级别去重以减少重复、避免泄露验证集内容;
- 引入多个高质量语料库以增强多样性,包括 WebText、Books1、Books2、Wikipedia 等。
训练数据质量直接影响模型泛化能力:
- 不仅靠大,更要干净、多样、有信息密度;
- 使用类似于“去毒+筛选+补充”的方式构建数据管道,以保证有效性和泛化性。
4、Training Process 训练过程
作者发现越大的模型可以使用越大的 batch size,但需要更小的学习率。本文使用梯度噪声大小控制学习率,并采用 V100 GPU + 高带宽集群 + 模型并行(层内、层间)训练大模型,避免内存溢出。
- 大模型训练不仅需要更大计算资源,也需更复杂的策略(如学习率调节、模型并行);
- 充分优化硬件利用率、降低通信成本,是训练 GPT-3 成功的幕后关键。
5、Evaluation 评估方法
-
对于 Few-shot 学习,本文从每个任务的训练集中随机抽取 K 个示例作为输入(有换行分隔),再让模型预测目标。对于没有训练集的任务(如 LAMBADA, StoryCloze),本文从开发集中抽样。
-
Zero-shot 设置下,本文提供自然语言任务描述而不是示例;某些任务会根据不同需求调整格式。
-
自由生成任务中使用 beam search,beam 宽度为 4,惩罚因子 α = 0.6。
-
最终结果基于公开测试集给出,某些任务测试集太大,GPT-3 无法完全加载,因此本文提供开发集表现。
-
总结:
- Few-shot 评估方式与“真实交互场景”更接近:模型看到的示例仅存在于上下文中;
- Zero-shot 检测模型推理能力,而不是学习能力;
- 使用 beam search 表明注重生成质量。
-
下图展示了模型大小与上下文示例数量对 GPT-3 表现的影响:
-
GPT3可以不依赖传统微调,仅通过上下文示例就能高效执行任务。GPT-3 的 Few-shot 表现可媲美甚至超越精调后的 BERT 系列模型,展示了“预训练 + In-context Learning”范式的巨大潜力
四、实验结果(具体数据看论文)
1、语言建模、完形填空和文本补全(Language Modeling, Cloze, and Completion Tasks)
本文测试了 GPT-3 在传统语言建模任务及相关任务上的表现。
- 在 PTB(Penn Tree Bank) 数据集上计算 zero-shot 的困惑度(perplexity),结果比之前 SOTA 模型高出 15 分(代表更优)。
- 由于 Wikipedia 和 one-billion word 数据集可能与训练集重合,我们没有在这些数据集上汇报结果。
LAMBADA 数据集 要求模型预测一段话的最后一个词:
- GPT-3 zero-shot 成绩相比 SOTA 提升 8%;
- Few-shot 设置下采用填空格式(如:
Alice was friends with Bob. Alice went to visit her friend, _____.
→Bob
),GPT-3 提升超过 18%。
总结:
- GPT-3 在传统语言建模任务上远超以往表现;
- 填空格式提升表现的核心在于:鼓励模型以最简形式“精确输出”(如只补 1 个词);
- LAMBADA 的强表现显示 GPT-3 在理解上下文的长期依赖性上表现优越。
2、问答任务(Question Answering)
本文测试 GPT-3 在不同 QA 数据集上的表现,包括开放领域问答(无需上下文材料):
- TriviaQA:GPT-3 的 zero-shot 表现比微调 T5-11B 高出 14.2%,比引导式 span 预测还高 3.8%;One-shot 设置下再提升 3.7%,接近目前 SOTA 系统(但未使用检索机制)。
- Natural Questions (NQ):GPT-3 低于微调的 T5-11B+SSM,原因可能是其测试的是对维基百科知识的微粒度掌握。
- ARC 科学题库:在 Challenge 子集(困难题)上 GPT-3 超过微调 RoBERTa;在 Easy 子集上稍优于 RoBERTa。
- CoQA(对话式阅读理解):GPT-3 Few-shot 比 BERT 微调模型高出 3%,但仍落后人类和符号混合系统。
总结:
- GPT-3 zero-shot 就能击败大多数微调模型,这意味着其已拥有庞大“事实记忆”。
- 但在需要微粒度文档知识提取的任务(如 NQ),GPT-3 表现略差;
- GPT-3 表现优于 RoBERTa 说明其理解推理能力更强,但仍受限于上下文记忆长度和结构化知识建模能力。
3、翻译任务(Translation)
GPT-3 的训练语料主要来自 Common Crawl(网络文本),93% 为英文,7% 为非英文。
- GPT-3 的训练语言分布未进行语言对控制,不同于传统 NMT 系统的双语回译训练。
- One-/Few-shot 设置使用少量对齐示例。
结果:
- Zero-shot GPT-3 明显弱于 NMT 系统;
- One-shot 提升 7 BLEU,Few-shot 再提升 4 BLEU,整体接近传统方法;
- 英译结果明显优于反方向(En → Ro 方向最差,比最优系统差 10 BLEU);
- Few-shot GPT-3 在 Fr-En 和 De-En 上超越可找到的最强基线;
- 在 Ro-En 上接近基于 60.8 万标注样本和回译的 SOTA。
总结:
- GPT-3 没有用并行语料训练,所以翻译任务中属于“非对称输入”,zero-shot 很难。
- 但仅用极少量示例就能赶上传统训练方法,说明 GPT-3 拥有强大的跨语言泛化能力。
4、SuperGLUE 综合评测
- SuperGLUE 是 NLP 高难度基准测试集,本文采用 Few-shot(每个任务随机抽取 32 个样本)。
- Sweep 不同的示例数(K),观察得分随上下文长度与模型大小提升。
各子任务表现如下:
任务 | 表现概况 |
---|---|
COPA / ReCoRD | One-shot/Few-shot 接近 SOTA,仅略低于 T5-11B 微调模型 |
WSC / BoolQ / MultiRC / RTE | 表现与 BERT-Large 微调接近 |
CB | Few-shot 可达 75.6% |
WiC | 表现明显不足,接近随机(尝试多种提示词无效) |
RTE / CB | 与 WiC 类似,处理两个句子比较类任务效果差 |
- GPT-3 的 Few-shot 表现超越 BERT-Large 的任务达 8 个,在其中两个任务中接近 T5-11B 微调 SOTA。
5、综合解读:
- 表现亮点:推理类(如 COPA)与语言理解类任务表现出色;
- 劣势任务:涉及两句比较(如 WiC、RTE),Few-shot 提示难以触发有效推理;
- 这暗示 GPT-3 在“结构化比较”“语义对齐”方面仍待提升。
能力类型 | GPT-3 表现总结 |
---|---|
语言建模 | 超越历史 SOTA,填空格式显著提升表现 |
完形填空 / Cloze | Zero-shot 和 Few-shot 表现大幅优于以往 |
问答任务 | Zero-shot 表现直接超过 T5-11B 微调模型,Few-shot 更强 |
翻译任务 | 英语方向表现佳,反方向稍差;Few-shot 能接近甚至超过强基线 |
SuperGLUE 综合 | 多任务接近甚至超过 BERT-Large 微调水平;对比类任务仍是短板 |
五、GPT1、GPT2和GPT3对比
- 下表是三个模型的简单对比
GPT-1 | GPT-2 | GPT-3 | |
---|---|---|---|
发布年份 | 2018 | 2019 | 2020 |
参数规模 | 1.17 亿 | 15 亿 | 1750 亿 |
层数(Transformer) | 12 层 | 48 层 | 96 层 |
隐藏层维度 | 768 | 1600 | 12288 |
训练语料规模 | 5GB(BooksCorpus) | 40GB(WebText) | 570GB+(多源融合) |
数据来源 | 图书 | 高质量网页文本 | 网页、书籍、百科等 |
任务能力 | 需微调 | 支持少量泛化 | 支持零样本/小样本学习 |
文本生成质量 | 一般 | 流畅自然 | 接近人类水准 |
- 三个模型的迭代更多的是大力出奇迹,加参数加数据
相关文章:
大模型论文:Language Models are Few-Shot Learners(GPT3)
大模型论文:Language Models are Few-Shot Learners(GPT3) 文章地址:https://proceedings.neurips.cc/paper_files/paper/2020/file/1457c0d6bfcb4967418bfb8ac142f64a-Paper.pdf 一、摘要 我们证明了,扩大语言模型的规模在任务无关的 few…...
驱动学习专栏--字符设备驱动篇--1_chrdevbase
字符设备驱动简介 字符设备是 Linux 驱动中最基本的一类设备驱动,字符设备就是一个一个字节,按照字节 流进行读写操作的设备,读写数据是分先后顺序的。比如我们最常见的点灯、按键、 IIC 、 SPI , LCD 等等都是字符设备&…...
muduo库源码分析: TcpConnection
一. 主要成员: socket_:用于保存已连接套接字文件描述符。channel_:封装了上面的socket_及其各类事件的处理函数(读、写、错误、关闭等事件处理函数)。这个Channel中保存的各类事件的处理函数是在TcpConnection对象构造函数中注册…...
【SLAM】ubuntu 18.04 编译安装 OpenCV 3.2.0 时出现哈希错误
本文首发于❄慕雪的寒舍 1. 前言 1.1. 问题说明 在amd64的ubuntu 18.04 desktop上编译安装 OpenCV 3.2.0 的时候,我遇到了cmake构建错误。错误的核心报错如下 for file: [/home/king/slam/pkg/opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32…...
挂马漏洞 asp连接冰蝎webshell (附webshell源码 仅限学习研究)
目录 ASP WebShell代码 代码说明: 部署步骤: 使用冰蝎客户端连接: 注意事项: ASP WebShell代码 <% 冰蝎连接密码(需与冰蝎客户端配置一致) Dim key key "mysecretkey123" 自定义密码…...
Grafana将弃用AngularJS-我们该如何迁移
AngularJS 弃用时间线 AngularJS 支持已在 Grafana 9 中正式弃用。在 2024 年 5 月发布的 Grafana 11 中,所有 Grafana Cloud 和自托管安装默认关闭该功能。到 Grafana 12 版本时,将完全移除对 AngularJS 的支持,包括配置参数开关 angular_s…...
基于单片机的病房呼叫系统设计
2.1 总体方案设计 本课题为基于单片机的病房呼叫系统设计,在此将整个系统架构设计如图2.1所示,在此采用八个按键模拟8个不同的病房号,再通过8个LED指示灯对病房号的状态进行指示,当用户按键按键时,相应的LED灯会点亮…...
简述一下Unity的UnityWebRequest
UnityWebRequest是Unity引擎中用于处理网络请求的强大工具,尤其适用于与Web服务器进行交互,比如获取数据、上传文件或下载资源等。相较于旧版的WWW类,UnityWebRequest提供了更灵活、更高效的API,支持多种HTTP方法,并能…...
文件操作和IO - 2
目录 Java 中操作文件 File 概述 属性 构造方法 方法 getParent getName getPath getAbsolutePath getCanonicalPath exists isFile isDirectory createNewFile delete deleteOnExit list listFiles mkdir mkdirs 完! Java 中操作文件 Java 对于文件操…...
⑪数据中心网络M-LAG实战
一、DeviceA-M-LAG-Mater配置 1、M-LAG 系统配置。 # m-lag mad exclude interface GigabitEthernet1/0/7 m-lag mad exclude interface Vlan-interface100 m-lag mad exclude interface Vlan-interface101 m-lag system-mac 0002-0002-0002 m-lag system-number 1 m-la…...
Win10系统安装WSL2-Ubuntu, 并使用VScode开始工作
本教程基于博主当前需要使用 WSL2(Windows Subsystem for Linux 2) 而编写,将自己使用的经过分享给大家。有什么意见建议敬请大家批评指正。此过程需要打开 Microsoft Store 话不多说,立即开始~ 文章目录 1. 检查系统版本2. 启动 WSL 功能3. 安装Ubuntu4…...
Node.js种cluster模块详解
Node.js 中 cluster 模块全部 API 详解 1. 模块属性 const cluster require(cluster);// 1. isMaster // 判断当前进程是否为主进程 console.log(是否为主进程:, cluster.isMaster);// 2. isWorker // 判断当前进程是否为工作进程 console.log(是否为工作进程:, cluster.isW…...
Window 10使用WSL2搭建Linux版Android Studio应用开发环境
一、背景 公司基于高通SA8155、SA8295等车载芯片进行座舱系统开发,使用repo统一管理系统及应用源码仓库。 Android应用端使用Ubuntu环境Android Studio进行开发,使用repo进行平台性管理,包含所有应用仓库。由于gradle配置使用了linux下文件软链接,无法直接使用Window环境…...
PostgreSQL 的统计信息
PostgreSQL 的统计信息 PostgreSQL 的统计信息是查询优化和性能调优的基础,系统通过多种统计信息来评估数据分布和访问模式,从而生成高效的执行计划。 一 统计信息类型与用途 1.1 核心统计类别 统计类型存储位置主要用途更新机制表和索引扫描统计pg_…...
【Linux】Linux基础指令
Linux系统初步介绍 Linux是一种自由和开放源代码的类UNIX操作系统,该操作系统的内核由林纳斯托瓦兹在1991年首次发布,之后,在加上用户空间的应用程序之后,就成为了Linux操作系统。 严格来讲,Linux 只是操作系统内核本身,但通常采用“Linux内核”来表达该意思&#…...
【SLAM】在ORB_SLAM2的ROS模式下使用RealSense D435相机
本文介绍了如何在ORB_SLAM2项目中使用RealSense D435相机作为RGB-D输入源,包括ROS下启动D435相机、ORB_SLAM2订阅Topic、ORB_SLAM2读取realsense-viewer录制的rosbag文件等步骤。。 本文首发于❄慕雪的寒舍 1. 前言 先前已经编写了如何用TUM数据集运行ORB_SLAM3以及…...
scapy使用
https://scapy.readthedocs.io/en/latest/introduction.html 在 Mac 上使用 Scapy 抓取特定 IP 的流量并保存到 a.pcap 的步骤如下: 步骤 1:安装 Scapy 在终端中执行以下命令安装: pip install scapy步骤 2:创建 Python 脚本 …...
C2000 系统控制(4) — CPU Memory
CPU 内存 内存控制器 在 C2000 实时微控制器上,RAM 具有不同的特性。这些特性包括: CPU 专用:M0、M1 RAMCPU 和 CLA 共享:LSx RAMCPU、DMA 和 HIC 共享:GSx RAM用于在处理器之间发送和接收消息:MSG RAM …...
Linux网络编程——详解网络层IP协议、网段划分、路由
目录 一、前言 二、IP协议的认识 1、什么是IP协议? 2、IP协议报头 三、网段划分 1、初步认识IP与路由 2、IP地址 I、DHCP动态主机配置协议 3、IP地址的划分 I、CIDR设计 II、子网数目的计算 III、子网掩码的确定 四、特殊的IP地址 五、IP地址的数量限…...
解析医疗器械三大文档:DHF、DMR与DHR
医疗器械的 DHF、DMR 和 DHR 是质量管理体系(QMS)中的核心文件,贯穿产品全生命周期, 确保医疗器械的安全性、有效性和合规性。 一、三大文件的定义与法规依据 缩写全称法规依据(以 FDA 为例)核心目的DHF…...
SQL 全文检索原理
全文检索(Full-Text Search)是SQL中用于高效搜索文本数据的技术,与传统的LIKE操作或简单字符串比较相比,它能提供更强大、更灵活的文本搜索能力。 基本概念 全文检索的核心思想是将文本内容分解为可索引的单元(通常是词或词组),然后建立倒排…...
基于Rosen梯度投影法的约束优化问题求解及MATLAB实现
摘要 在工程优化、经济建模等领域,约束优化问题普遍存在,其核心是在满足线性或非线性约束条件下求解目标函数的极值。本文聚焦Rosen梯度投影法,系统阐述其算法原理、实现步骤及MATLAB编程方法。 关键词:Rosen梯度投影法…...
Model Context Protocol (MCP) - 尝试创建和测试一下MCP Server
1.简单介绍 MCP是Model Context Protocol的缩写,是Anthropic开源的一个标准协议。MCP使得大语言模型可以和外部的数据源,工具进行集成。当前MCP在社区逐渐地流行起来了。同时official C# SDK(仓库是csharp-sdk) 也在不断更新中,目前最新版本…...
Linux上位机开发实践(关于Qt的移植)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 linux平台上面,很多界面应用,都是基于qt开发的。不管是x86平台,还是arm平台,qt使用的地方都比较多。…...
Node.js 项目 用 `Docker Compose` 发布的完整流程
Node.js 项目 用 Docker Compose 发布的完整流程 ✅ 一、基本项目结构示例 以一个简单 Express 项目为例: my-node-app/ ├── app.js # 启动文件 ├── package.json ├── package-lock.json ├── Dockerfile # 构建 Node 容器 ├…...
Java基础:浅析Java中的XML文件处理
概述 XML(全称Extensible Markup Language,可扩展标记语言) .本质是一种数据的格式,可以用来存储复杂的数据结构,和数据关系 XML特点 1.XML中的“<标签名>”成为一个标签或者一个元素,一般成对出现的 2.XML…...
MCU刷写——S19(S-Record)文件格式详解及Python代码
工作之余来写写关于MCU的Bootloader刷写的相关知识,以免忘记。今天就来聊聊S19这种文件的格式,我是分享人M哥,目前从事车载控制器的软件开发及测试工作。 学习过程中如有任何疑问,可底下评论! 如果觉得文章内容在工作学习中有帮助到你,麻烦点赞收藏评论+关注走一波!感谢…...
HTML — 过渡与动画
HTML过渡与动画是提升网页交互体验的核心技术,主要通过CSS实现动态效果。 过渡 CSS过渡(Transition)介绍 适用于元素属性变化时的平滑渐变效果,如悬停变色、尺寸调整。通过定义transition-property(过渡属性…...
python【标准库】multiprocessing
文章目录 介绍多进程Process 创建子进程共享内存数据多进程通信Pool创建子进程多进程案例多进程注意事项介绍 python3.10.17版本multiprocessing 是一个多进程标准模块,使用类似于threading模块的API创建子进程,充分利用多核CPU来并行处理任务。提供本地、远程的并发,高效避…...
BANK OF CHINA(HONG KONG)网点
BANK OF CHINA(HONG KONG)网点开户 ZoneBankAddressDates东区杏花邨分行香港柴湾杏花邨东翼商场205-208号20240415: 11:15, 13:00, 11:15, 13:00, 11:15, 13:0020240412: 11:15, 13:00东区鲗鱼涌分行香港鰂鱼涌英皇道1060号柏惠苑20240412: 09:45 注意事项 到达指定分行时&am…...
基于springboot的“嗨玩旅游网站”的设计与实现(源码+数据库+文档+PPT)
基于springboot的“嗨玩旅游网站”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:springboot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能结构图 局部E-R图 系统首页界面 系统注册…...
机器学习(3)——决策树
文章目录 1. 决策树基本原理1.1. 什么是决策树?1.2. 决策树的基本构成:1.3. 核心思想 2. 决策树的构建过程2.1. 特征选择2.1.1. 信息增益(ID3)2.1.2. 基尼不纯度(CART)2.1.3. 均方误差(MSE&…...
【人脸识别中的“类内差异”和“类间差异】
核心问题:人脸识别中的“类内差异”和“类间差异” 想象你在教一个小朋友认人: 类间差异(不同人之间的区别): 目标:让小朋友能分清“爸爸”和“妈妈”。方法:指着爸爸说“这是爸爸”࿰…...
第十六届蓝桥杯 省赛C/C++ 大学B组
编程题目现在在洛谷上都可以提交了。 未完待续,写不动了。 C11 编译命令 g A.cpp -o A -Wall -lm -stdc11A. 移动距离 本题总分:5 分 问题描述 小明初始在二维平面的原点,他想前往坐标 ( 233 , 666 ) (233, 666) (233,666)。在移动过程…...
SpringBoot3.0 +GraalVM21 + Docker 打包成可执行文件
SpringBoot3.0 GraalVM21 Docker 打包成可执行文件 前言 随着时代的飞速发展,JDK 17 及以上版本开始支持通过 GraalVM 将运行在 JVM 上的 jar 包直接打包成可在操作系统上运行的原生可执行文件。这一特性能使开发者在某些场景下更加灵活地部署 Java 程序。 在云原…...
从编程范式看 “万物皆智能,万事皆自动” 愿景
从编程范式看“万物皆智能,万事皆自动”愿景 引言 在信息技术飞速发展的今天,“万物皆智能,万事皆自动”成为了众多 IT 从业者和科技爱好者心中的终极愿景。这一愿景描绘了一个所有事物都具备智能、所有事情都能自动完成的美好未来。而在实现这一愿景的征程中,面向对象编…...
Vue 项目中 package.json 文件的深度解析
Vue 项目中 package.json 文件的深度解析 在 Vue 项目中,package.json 文件是项目配置的核心,它管理着项目的依赖关系、脚本命令、版本信息等重要内容。正确理解和配置 package.json 文件,对于项目的开发、构建、测试和部署都至关重要。本文…...
解决2080Ti使用节点ComfyUI-PuLID-Flux-Enhanced中遇到的问题
使用蓝大的工作流《一键同时换头、换脸、发型、发色之双pulid技巧》 刚开始遇到的是不支持bf16的错误 根据《bf16 is only supported on A100 GPUs #33》中提到,修改pulidflux.py中的dtype 为 dtype torch.float16 后,出现新的错误,这个…...
1 程序的本质,计算机语言简史,TIOBE 指数,C 语言的独特魅力、发展历程、发行版本和应用场景
👋 嘿,各位编程探险家们!是不是一提到 C 语言,脑海中就浮现出指针乱舞、内存泄漏的恐怖画面?别怕,你并不孤单!😅 今天,你踏入了这个专为 “C 语言恐惧症” 患者打造的避…...
python格式化字符串漏洞
什么是python格式化字符串漏洞 python中,存在几种格式化字符串的方式,然而当我们使用的方式不正确的时候,即格式化的字符串能够被我们控制时,就会导致一些严重的问题,比如获取敏感信息 python常见的格式化字符串 百…...
撰写学位论文Word图表目录的自动生成
第一步:为图片和表格添加题注 选中图片或表格 右键点击需要编号的图片或表格,选择 【插入题注】(或通过菜单栏 引用 → 插入题注)。 设置题注标签 在弹窗中选择 标签(如默认有“图”“表”,若无需自定义标…...
SDC命令详解:使用相对路径访问设计对象(current_instance命令)
相关阅读 SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm1001.2014.3001.5482 在使用get_cells等命令访问设计对象时,需要指定设计对象的名字,这个名字是一个相对路径,本文就将对此进行讨论。 相对路径 使…...
vector的应用
在平常使用c是,只使用普通数组肯定不够便捷,这时,我们就可以使用vector来使代码更加简洁 目录 1.vector的定义 2.在vector末尾增加一个元素 3.输出元素 (1)输出单个元素 (2)循环输出元素 4…...
pytorch查询字典、列表维度
输出tensor变量维度 print(a.shape)输出字典维度 for key, value in output_dict.items():if isinstance(value, torch.Tensor):print(f"{key} shape:", value.shape)输出列表维度 def get_list_dimensions(lst):# 基线条件:如果lst不是列表࿰…...
征程 6 VIO Frame 时间戳介绍
1. 时间类型 征程 6 内部的时间类型如下 Linux 系统时间是基于 arm system counter 抽象的,Linux 的基于 arm system counter 抽象了很多种时间,图中画了两种。CLOCK_MONOTONIC_RAW 是不会被时间同步调整的。 2. Frame 时间戳 从 VIO 侧获取的图像数…...
DotnetCore开源库SampleAdmin源码编译
1.报错: System.Net.Sockets.SocketException HResult0x80004005 Message由于目标计算机积极拒绝,无法连接。 SourceSystem.Net.Sockets StackTrace: 在 System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, C…...
QML之ScrollView(滚动视图)
ScrollView 是 Qt Quick Controls 2 中提供的可滚动视图容器,用于创建可滚动区域。以下是详细使用方法: 基本用法 qml import QtQuick 2.15 import QtQuick.Controls 2.15ScrollView {id: scrollViewwidth: 300height: 200clip: true// 背景设置&…...
FreeRTOS使任务处于就绪状态的API
在FreeRTOS中,任务的**就绪状态(Ready State)**意味着任务已准备好运行,但尚未被调度器分配CPU时间。以下是通过API使任务进入就绪状态的常见方法及其分类: 1. 恢复被挂起的任务 vTaskResume(TaskHandle_t xTaskToResume) 将被挂起(Suspended)的任务恢复为就绪状态。 示…...
第四篇:Python文件操作与异常处理
第一章:文件操作基础与核心原理 1.1 文件系统基础 文件系统是操作系统用于管理存储设备中数据的核心机制。Python通过内置的open()函数实现文件操作,支持文本文件(.txt、.csv)和二进制文件(.jpg、.dat)的…...
蓝桥杯 嵌入式 小结
一、BSP模版 1. Key 按键扫描模版,需要注意的是 key_val 。 uint8_t Key_Scan(void) {uint8_t key_val0;if(HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_0)GPIO_PIN_RESET){key_val1;}if(HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_1)GPIO_PIN_RESET){key_val2;}if(HAL_GPIO_ReadPin(…...