【LLM】Openai-o1及o1类复现方法
note
- 可以从更为本质的方案出发,通过分析强化学习的方法,看看如何实现o1,但其中的核心就是在于,如何有效地初始化策略、设计奖励函数、实现高效的搜索算法以及利用强化学习进行学习和优化。
文章目录
- note
- 一、Imitate, Explore, and Self-Improve: A Reproduction Report on Slow-thinking Reasoning Systems
- 二、QwQ-32B-Preview模型
- 三、综述:Scaling of Search and Learning: A Roadmap to Reproduce o1 from Reinforcement Learning Perspective
- 1. 策略初始化
- 2. 奖励设计
- 3. 搜索
- 4. 学习
- 四、o1类相关项目
- 相关数据和模型资源
- Reference
一、Imitate, Explore, and Self-Improve: A Reproduction Report on Slow-thinking Reasoning Systems
开源了在技术报告Imitate, Explore, and Self-Improve: A Reproduction Report on Slow-thinking Reasoning Systems中使用的训练数据和模型。
- 训练数据包括3.9K数学领域和1K混合领域(代码、科学和自然语言谜题)的长程思维链。其中3.9K数学领域数据有2.3K来自DeepSeek-R1,1.6K来自于QwQ(经过我们的模型改写成与R1同样的格式,详情参考论文);1K混合领域数据均来自于R1。
- 模型在选取的基准测试集达到了与o1-preview整体接近的效果。
通过使用模仿,探索,再自我改进的方式,我们发现:
- 通过使用少量高质量的示范数据进行训练,可以有效引导长时间思考的能力。一旦建立,这种能力似乎能够自然地跨领域泛化。
- 数学领域的示范数据特别适合提升大语言模型的长时间思考能力,而包含较长思考过程的数据在提升模型解决复杂问题的能力方面显得尤为有效。
- 与大语言模型在快速思考模式下生成的正式回应不同,思考过程通常以灵活、非正式的方式表达,旨在引导模型走向正确的解决路径。
- 通过探索和自我改进,可以有效增强慢思考能力,而离线学习方法的改进似乎主要发生在初始迭代中,尤其是在处理复杂任务时。
MATH-OAI | AIME2024 | GPQA | |
---|---|---|---|
o1-preview | 85.5 | 44.6 | 72.3 |
SKILL-2 (3.9K imitate) | 90.2 | 46.7 | 55.1 |
SKILL-2 (1.1K imitate + 1.8K explore) | 89.8 | 40 | 56.1 |
二、QwQ-32B-Preview模型
试用链接:https://huggingface.co/spaces/Qwen/QwQ-32B-preview
模型链接:https://huggingface.co/Qwen/QwQ-32B-Preview
官方博客:https://qwenlm.github.io/zh/blog/qwq-32b-preview/
GPQA: 测试模型在常识问答和通用知识理解上的能力。
AIME: 检验模型对高难度数学竞赛题目的解题能力。
MATH-500: 测评模型在广泛数学领域中解决复杂问题的表现。
LiveCodeBench: 测试模型生成、调试和实现代码的编程能力。
可以看到,QwQ-32B-preview综合表现优异,并且各项能力比较均衡,没有“偏科”情况。在MATH-500测评中甚至超过了OpenAI的2个o1模型。作为一个推理模型,QwQ-32B-preview的综合表现已全面超越常规模型,如GPT-4o和Claude 3.5 Sonnet。
三、综述:Scaling of Search and Learning: A Roadmap to Reproduce o1 from Reinforcement Learning Perspective
《Scaling of Search and Learning: A Roadmap to Reproduce o1 from Reinforcement Learning Perspective》(https://arxiv.org/abs/2412.14135)
一个是采用强化学习这条路,所包括的四个关键组件,策略初始化、奖励设计、搜索和学习。
1. 策略初始化
一个是策略初始化,策略初始化使模型具备基本推理行为,能够有效探索复杂问题的解空间。预训练和指令微调是策略初始化的两个主要阶段。预训练通过大规模文本语料库学习基本的语言理解和推理能力;指令微调则将预训练的语言模型转化为面向任务的代理。
2. 奖励设计
一个是奖励设计,奖励设计为搜索和学习提供指导信号。过程奖励模型(PRM)比结果奖励模型(ORM)更适合复杂的推理任务,因为它不仅奖励最终结果,还奖励中间步骤。也可以将稀疏的结果奖励转化为密集的过程奖励。
3. 搜索
一个是搜索,搜索在训练和测试阶段都起着重要作用。训练时搜索生成高质量的训练数据,测试时搜索通过迭代改进模型的策略。树搜索算法如蒙特卡罗树搜索(MCTS)和束搜索(Beam Search)在生成高质量解决方案方面表现出色。
4. 学习
一个是学习,学习利用搜索生成的数据进行策略改进。策略梯度方法和行为克隆是两种主要的学习方法。策略梯度方法如近端策略优化(PPO)和直接策略优化(DPO)通过梯度上升更新策略,行为克隆则通过监督学习逼近专家策略。
四、o1类相关项目
如k0-math、skywork-o1、Deepseek-R1、QwQ和InternThinker,但这些模型尚未开源
- g1可能是最早尝试重新实现o1的项目,采用的方法是提示工程。提示大型语言模型自我反思并提出多种解决方案来克隆o1的行为。
- Thinking Claude的工作方式与g1类似,它通过更复杂和细粒度的动作提示大型语言模型,如问题分析和进度跟踪。g1和思考克洛德都能重塑大型语言模型的行为,使其类似于o1,但尚未在推理基准测试中验证的提示。
- Open-o1提供了一个安全函数训练(SFT)数据集,其中每个回应都包含长长的上下文。但目前尚不清楚这些数据来自何处,可能来自人类专家或一个强大的大型语言模型。开放-o1发现,在的数据集上训练 llama-3-8b 和 qwen-7b 不仅能够塑造模型回应的风格以模仿o1,还能提高模型在推理基准测试上的表现。
- o1 Journey在第一部分通过束搜索生成的树状数据被遍历,特定节点由GPT-4进行精炼,然后用于监督式微调。论文中呈现的例子突出了模型的自我反思能力,这来自于GPT-4的精炼。第1部分采用的方法可以描述为专家迭代,其中SFT应用于通过搜索生成的数据。第1部分还将o1-mini注释的PRM与数学牧羊人进行了比较。在一篇2024年的研究中,发现o1-mini的性能优于Math-Shepherd。在第二部分引入了一种截然不同的方法。第一部分侧重于强化学习,而第二部分则尝试蒸馏o1-mini。尽管o1-mini隐藏了思维链(CoT)并且只输出CoT的摘要,第二部分则尝试通过提示o1-mini来增强摘要,从而恢复隐藏的CoT。通过蒸馏,发现在AIME上Qwen-72B的性能优于o1-preview。然而,这并不意味着蒸馏使得学生模型能够超越教师模型,因为o1-mini在AIME上也超越了o1-preview。
- Open-Reasoner的框架类似于AlphaGo,利用强化学习来提升模型性能。在测试阶段,采用蒙特卡洛树搜索(MCTS)来确定最优解。这个搜索算法仅在测试期间应用,而训练数据则是通过当前策略进行采样得到的。此外,采用了与Math-Shepherd类似的方法来训练奖励模型。
- Slow Thinking with LLMs与o1 Journey类似,第一部分与Open-Reasoner类似,结合了强化学习和测试时搜索。但与开放式推理器不同的是,它在训练期间采用了DPO算法而不是PPO算法。在测试阶段,它还采用MCTS算法进行搜索。第2部分从QwQ和Deepseek-R1蒸馏出知识,并尝试了两种强化学习方法:DPO和SFT,使用来自拒绝采样的数据进行训练。发现,通过从QwQ和Deepseek-R1中蒸馏成千上万个例子,可以在具有挑战性的推理任务上显著提高性能,而基于蒸馏的强化学习可以带来进一步的改进。Marco-o1整合了Open-o1的数据和模型自身生成的数据,通过MCTS算法进行SFT训练。
- Marco-o1展示了在每一步MCTS过程后提示模型进行自我反思,增强了搜索的有效性。
- o1-coder尝试在代码生成上重新实现o1。训练一个生成器来生成测试用例以提供结果奖励。有了结果奖励,使用MCTS算法生成代码解决方案,然后用于通过SFT改进策略模型。按照Wang等人(2024c)的方法训练了一个PRM,该方法随着策略的改进而更新。
相关数据和模型资源
STILL-1: https://arxiv.org/abs/2411.11694
STILL-2: https://arxiv.org/abs/2412.09413
Github仓库(内含数据模型等相关资源): https://github.com/RUCAIBox/Slow_Thinking_with_LLMs
Reference
[1] OpenAI o1复现——清华大学提出 ReST-MCTS*
[2] OpenAI o1复现(数据蒸馏)的一点点心得
[3] 类O1复现项目数据和模型开源啦
[4] 两个值得一读的技术总结:OpenAI o1模型复现复现思想及多模态大模型用于数学推理
[5] 《A Survey of Mathematical Reasoning in the Era of Multimodal Large Language Model: Benchmark, Method & Challenges》多模态LLM在数学推理上应用:https://arxiv.org/abs/2412.11936
相关文章:
【LLM】Openai-o1及o1类复现方法
note 可以从更为本质的方案出发,通过分析强化学习的方法,看看如何实现o1,但其中的核心就是在于,如何有效地初始化策略、设计奖励函数、实现高效的搜索算法以及利用强化学习进行学习和优化。 文章目录 note一、Imitate, Explore, …...
与“神”对话:Swift 语言在 2025 中的云霓之望
0. 引子 夜深人静,是一片极度沉醉的黑,这便于我与深沉的 macbook 悄悄隐秘于其中。一股异香袭来,恍惚着,撸码中身心极度疲惫、头脑昏沉的我仿佛感觉到了一束淡淡的微光轻洒在窗边。 我的对面若隐若现逐渐浮现出一个熟悉的身影。他…...
设计模式-单例模式
定义 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 类图 类型 饿汉式 线程安全,调用效率高,但是不能延迟加载。 public class HungrySingleton {private static final HungrySingleton instancenew HungrySingleton();private …...
C#枚举类型携带额外数据的方法
Java里面的枚举类型可以定义很多属性,携带各种数据,然而C#里面的枚举类型只能代表数字,不能在枚举类型里面定义各种属性,导致某些应用场景使用起来不方便,但是可以利用C#里面的Attribute来解决这个问题。 例如…...
跨境电商使用云手机用来做什么呢?
随着跨境电商的发展,越来越多的卖家开始尝试使用云手机来协助他们的业务,这是因为云手机具有许多优势。那么,具体来说,跨境电商使用云手机可以做哪些事情呢? (一)实现多账号登录和管理 跨境电商…...
RabbitMQ-消息可靠性以及延迟消息
目录 消息丢失 一、发送者的可靠性 1.1 生产者重试机制 1.2 生产者确认机制 1.3 实现生产者确认 (1)开启生产者确认 (2)定义ReturnCallback (3)定义ConfirmCallback 二、MQ的持久化 2.1 数据持久…...
Mybatis plus中的BaseMapper与ServiceImpl
BaseMapper接口方法与ServiceImpl类方法的区别与联系 什么是BaseMapper?什么是ServiceImpl? BaseMapper 是 MyBatis-Plus 提供的一个基础 Mapper 接口,封装了常用的 CRUD 操作方法,如 selectById、insert、updateById、deleteBy…...
第三篇 Avaya IP Office的架构及其服务组成
所谓的架构,其实就是Solution,解决方案。一般就是如下几套: IPO primary IPO secondaryIPO primary IP500v2IPO primary IPO secondary IP500v2IPO primary IPO secondary IP500v2 Expansion Server(IP500v2,扩展)IPO primaryIPO 500v2 简单的解释…...
近红外简单ROI分析matlab(NIRS_SPM)
本次笔记主要想验证上篇近红外分析是否正确,因为叠加平均有不同的计算方法,一种是直接将每个通道的5分钟实时长单独进行叠加平均,另一种是将通道划分为1分钟的片段,将感兴趣的通道数据进行对应叠加平均,得到一个总平均…...
ESP32学习笔记_FreeRTOS(6)——Event and Notification
摘要(From AI): 这篇博客详细介绍了 FreeRTOS 中的事件组和任务通知机制,讲解了事件组如何通过位操作实现任务间的同步与通信,以及任务如何通过通知机制进行阻塞解除和数据传递。博客提供了多个代码示例,展示了如何使用事件组和任务通知在多任…...
多监控m3u8视频流,怎么获取每个监控的封面图(纯前端)
文章目录 1.背景2.问题分析3.解决方案3.1解决思路3.2解决过程3.2.1 封装播放组件3.2.2 隐形的视频div3.2.3 截取封面图 3.3 结束 1.背景 有这样一个需求: 给你一个监控列表,每页展示多个监控(至少12个,m3u8格式)&…...
ExpGCN:深度解析可解释推荐系统中的图卷积网络
一、引言 在当今信息爆炸的时代,推荐系统已成为电子商务和社交网络中不可或缺的工具,旨在为用户筛选出符合其兴趣的信息。传统的协同过滤(CF)技术通过挖掘用户与项目之间的交互记录来生成推荐,但这种方法简化了模型&a…...
ChatGPT Prompt 编写指南
一、第一原则:明确的意图 你需要明确地表达你的意图和要求,尽可能具体、描述性、详细地描述所需的上下文、你期望的结果等。你的要求越明确,越有希望获得你想要的答案。 糟糕的案例 ❌ 写一首关于 OpenAI 的诗。 更好的案…...
【脑机接口数据处理】 如何读取Trode 的.rec文件 原始数据?
文章目录 函数简介文件下载函数语法基本用法带时间跳过的用法带选项参数的用法输出结构使用示例 注意事项 MATLAB中读取Trodes文件的实用函数——readTrodesFileContinuous 在处理神经科学实验数据时,经常会遇到Trodes格式的文件。这些文件包含了丰富的神经信号数据…...
反转字符串中的单词 II:Swift 实现与详解
网罗开发 (小红书、快手、视频号同名) 大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等…...
蓝桥杯训练—矩形面积交
文章目录 一、题目二、示例三、解析四、代码 一、题目 平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴,对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程写出两个矩形的交的面积 输入格式: 输入包含两行…...
如何设置HTTPS站点防御?
设置HTTPS站点防御涉及到多个层面的安全措施,包括但不限于配置Web服务器、应用安全头信息、使用内容安全策略(CSP)、启用HSTS和OCSP Stapling等。下面是一些关键的步骤来增强HTTPS网站的安全性: 1. 使用强加密协议和密钥交换算法…...
光谱相机如何还原色彩
多光谱通道采集 光谱相机设有多个不同波段的光谱通道,可精确记录每个波长的光强信息。如 8 到 16 个甚至更多的光谱通道,每个通道负责特定波长范围的光信息记录。这使得相机能分辨出不同光谱组合产生的相同颜色感知,而传统相机的传感器通常只…...
doris:导入概览
Apache Doris 提供了多种导入和集成数据的方法,您可以使用合适的导入方式从各种源将数据导入到数据库中。Apache Doris 提供的数据导入方式可以分为四类: 实时写入:应用程序通过 HTTP 或者 JDBC 实时写入数据到 Doris 表中,适用于…...
Linux 操作二:文件映射与文件状态
Linux 操作二:文件映射与文件状态查询 文件映射 mmap是一种内存映射文件的方法,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。实现这样的映射关系后,进程…...
ASP .NET Core 学习 (.NET 9)- 创建 API项目,并配置Swagger及API 分组或版本
本系列为个人学习 ASP .NET Core学习全过程记录,基于.NET 9 和 VS2022 ,实现前后端分离项目基础框架搭建和部署,以简单、易理解为主,注重页面美观度和后台代码简洁明了,可能不会使用过多的高级语法和扩展,后…...
电脑换固态硬盘
参考: https://baijiahao.baidu.com/s?id1724377623311611247 一、根据尺寸和缺口可以分为以下几种: 1、M.2 NVME协议的固态 大部分笔记本是22x42MM和22x80MM nvme固态。 在京东直接搜: M.2 2242 M.2 2280 2、msata接口固态 3、NGFF M.…...
Android BitmapShader实现狙击瞄具十字交叉线准星,Kotlin
Android BitmapShader实现狙击瞄具十字交叉线准星,Kotlin <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.…...
MySQL8数据库全攻略:版本特性、下载、安装、卸载与管理工具详解
大家好,我是袁庭新。 MySQL作为企业项目中的主流数据库,其5.x和8.x版本尤为常用。本文将详细介绍MySQL 8.x的特性、下载、安装、服务管理、卸载及管理工具,旨在帮助用户更好地掌握和使用MySQL数据库。 1.MySQL版本及下载 企业项目中使用的…...
机器学习之决策树(DecisionTree)
决策树中选择哪一个特征进行分裂,称之为特征选择。 特征选择是找出某一个特征使得分裂后两边的样本都有最好的“归宿”,即左边分支的样本属于一个类别、右边分支的样本属于另外一个类别,左边和右边分支包含的样本尽可能分属同一类别ÿ…...
Qt Desiogn生成的ui文件转化为h文件
1.找到这个工具 2.查找到ui文件以及要转化为的h文件的路径。 3.在1中的工具输入uic /xx/xxx.ui -o /xx/xxx.h即可得到结果。...
python编程-OpenCV(图像读写-图像处理-图像滤波-角点检测-边缘检测)边缘检测
OpenCV中边缘检测四种常用算子: (1)Sobel算子 Sobel算子是一种基于梯度的边缘检测算法。它通过对图像进行卷积操作来计算图像的梯度,并将梯度的大小作为边缘的强度。它使用两个3x3的卷积核,分别用于计…...
【论文阅读】VCD-FL: Verifiable, collusion-resistant, and dynamic federated learning
VCD-FL: Verifiable, collusion-resistant, and dynamic federated learning -- VCD-FL:可验证可抵抗共谋攻击的动态联邦学习 来源背景介绍相关工作本文贡献预备知识 系统模型威胁模型具体实现初始化本地训练梯度加密承诺生成插值优化 密文聚合聚合结果验证梯度解密结果验证恶意…...
浙江安吉成新照明电器:Acrel-1000DP 分布式光伏监控系统应用探索
安科瑞吕梦怡 18706162527 摘 要:分布式光伏发电站是指将光伏发电组件安装在用户的建筑物屋顶、空地或其他适合的场地上,利用太阳能进行发电的一种可再生能源利用方式,与传统的大型集中式光伏电站相比,分布式光伏发电具有更灵活…...
记一次数据库连接 bug
整个的报错如下: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Metho…...
STM32 FreeRTOS 信号量
信号量的简介 reeRTOS中的信号量是一种用于任务间同步和资源管理的机制。信号量可以是二进制的(只能取0或1)也可以是计数型的(可以是任意正整数)。信号量的基本操作包括“获取”和“释放”。 比如动车上的卫生间,一个…...
计算机网络 | 什么是公网、私网、NAT?
关注:CodingTechWork 引言 计算机网络是现代信息社会的基石,而网络通信的顺畅性和安全性依赖于有效的IP地址管理和网络转换机制。在网络中,IP地址起到了标识设备和进行数据传输的核心作用。本文将详细讨论公网IP、私网IP以及NAT转换等网络技…...
学技术学英文:通过jmeter命令行工具生成聚合报告文件到csv文件
单词 汉语意思 音标 aggregate 聚合 /ˈɡrɪɡeɪt/ command-line 命令行 /kəˈmnd laɪn/ distribution 分布 /ˌdɪstrɪˈbjuːʃn/ extractor 提取器 /ɪkˈstrktər/ granulation 细分 /ˌɡrnjuˈleɪʃn/ jmeter JMeter(软件࿰…...
数据库开发支持服务
文章目录 前言适用产品服务范围前提条件责任矩阵交互项目 服务流程交付件项目完成标志 前言 数据库开发支持服务是为了达成客户业务系统开发、测试、上线运行提供的具体技术支撑,内容包括数据库开发指导、性能调优、第三方平台对接支持、应用对接与上线支持等。数据…...
【SQL 中的分组查询与联合查询详解】
文章目录 SQL 中的分组查询与联合查询详解1. GROUP BY分组查询1.1 语句格式1.2 示例说明1.2.1 分别查询哥哥组和弟弟组的英语成绩总和1.2.2 查询哥哥组的所有成绩总和 2. 联合查询2.1 内连接2.1.1 语法格式2.1.2 执行过程 2.2 外连接2.2.1 左外连接2.2.2 右外连接 2.3 自连接2.…...
如何提高自动化测试覆盖率和效率
用ChatGPT做软件测试 在现代软件开发中,自动化测试已经成为保证软件质量的重要手段。然而,在实践中,自动化测试的覆盖率和效率常常受到限制,导致潜在缺陷未能及时发现或测试资源浪费。因此,提升自动化测试的覆盖率和效…...
Vue3 nginx 打包后遇到的问题
前端vite文件配置 export default defineConfig({plugins: [vue(),DefineOptions()],base:./,resolve:{alias:{:/src, //配置指向src目录components:/src/components,views:/src/views}},server:{// host:0.0.0.0,// port:7000,proxy:{/api:{target:xxx, // 目标服务器地址 &am…...
【PCIe 总线及设备入门学习专栏 5.3.2 -- PCIe 枚举与 PCIe PHY firmware 的区别与联系】
文章目录 OverviewPCIe 枚举与PCIe PHY固件的区别与联系1. PCIe 枚举2. PCIe PHY固件3. 区别4. 联系 举例说明实例场景 1:服务器启动 PCIe 网卡的过程实例场景 2:PCIe 热插拔设备的调试 Overview 本文将详细介绍 PCIe 枚举与 PCIe PHY firmware 的区别与…...
电动汽车超级充电设备与车辆之间的通讯协议对27930-2015国标的修改记录
左侧为团体标准 右侧为国标 1.CHM SPN 2600 数据修改为 团标数据: 0x534331 ,国标数据:0x000101 2.BRM SPN 2565 数据修改为 团标数据: 0x53…...
案例分析一
张某(10多年IT工作经验)应聘一家国企单位,面试官(技术副主管)面试时问了些无关痛痒的问题,谈到薪资时强调我权限范围内的数额就那么多,再多就需要走申请流程进行操作了。 没几天入职后…...
2.5G PoE交换机 TL-SE2109P 简单开箱评测,8个2.5G电口+1个10G光口(SFP+)
TPLINK(普联)的万兆上联的2.5G网管交换机TL-SE2109P简单开箱测评。8个PoE 2.5G电口,1个万兆SFP上联口。 2.5G交换机 TL-SE2420 简单开箱评测,16个2.5G电口4个10G光口(SFP):https://blog.zeruns.com/archives/837.html…...
mysql存电话号码应该用int还是string类型
在MySQL中,存储电话号码一般建议使用**STRING 类型**(通常是 VARCHAR),而不是 INT 类型,原因如下: 1. 电话号码不是数字用于计算的值 电话号码本质上是一个标识符,不需要进行数学运算。如果用…...
解决本地运行MR程序访问权限问题
文章目录 1. 提出问题2. 解决问题2.1 临时解决方案2.2 永久解决方案 3. 小结 1. 提出问题 运行DeduplicateIPsDriver类,抛出如下异常: 该错误信息表明在尝试运行 DeduplicateIPsDriver 类时,遇到了 HDFS(Hadoop 分布式文件系统&a…...
Codeforces Round 997 (Div. 2) A~C
今天的封面是水母猫猫和佩佩,原图在这里,记得关注画师夏狩大大 至此,天鹅完成了连续四场比赛在四个不同比赛上四次分的壮举!(ABC388,CodeChef169,牛客月赛109,CF997) 这场…...
3. Go函数概念
在 Go 语言中,函数被称为一等公民(First-Class Citizens),意味着函数可以像其他数据类型(如整数、字符串、结构体等)一样作为变量传递、返回、赋值等。这使得 Go 在编程时具备了极大的灵活性。 1、函数概念…...
python-44-嵌入式数据库SQLite和DuckDB
文章目录 1 SQLite1.1 世界上最流行的数据库1.1 SQLite简介1.2 插入语句1.3 查询数据1.4 更新数据1.5 删除数据2 DuckDB2.1 DuckDB简介2.2 DuckDB与Python结合使用2.2.1 创建表2.2.2 分析语句2.2.3 导出为parquet文件2.3 Windows中使用DuckDB3 参考附录1 SQLite Python的一个特…...
使用 Java 和 FreeMarker 实现自动生成供货清单,动态生成 Word 文档,简化文档处理流程。
在上一篇博客中主要是使用SpringBootApache POI实现了BOM物料清单Excel表格导出,详见以下博客: Spring Boot Apache POI 实现 Exc()el 导出:BOM物料清单生成器(支持中文文件名、样式美化、数据合并&#…...
R语言的并发编程
R语言的并发编程 引言 在现代计算中,如何有效地利用计算资源进行数据处理和分析已成为一个重要的研究方向。尤其在大数据时代,数据量的急剧增加让单线程处理方式显得力不从心。为了解决这一问题,各种编程语言都开展了并发编程的研究和应用。…...
音乐播放器实现:前端HTML,CSS,JavaScript综合大项目
音乐播放器实现:前端HTML,CSS,JavaScript综合大项目 项目概述项目视图效果一、侧边栏相关代码(一)HTML代码(二)css代码 二、登录页面(一)HTML代码(二)css代码…...
PixArt--alpha笔记
PixArt-α 是华为发布的文生图模型。 训练策略分解:设计三个不同训练步骤,分别优化像素依赖、文本图像对齐和图像审美质量。高效T2I transformer:将 cross-attention融入 Diffusion Transformer (DiT)注入文本条件,简化计算密集的…...