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

DeepSeek LLM 论文解读:相信长期主义开源理念可扩展大语言模型(DeepSeek 吹响通用人工智能的号角)

在这里插入图片描述

论文链接:DeepSeek LLM: Scaling Open-Source Language Models with Longtermism(相信长期主义开源理念可扩展大语言模型)


目录

    • 摘要
    • 一、数据处理
      • (一)数据清洗与丰富
      • (二)分词器与词汇设置
    • 二、模型架构优化
      • (一)微观架构借鉴与创新
      • (二)宏观架构分层调整
    • 三、超参数优化
      • (一)初始化与优化器设置
      • (二)学习率调度策略革新
    • 四、训练框架与技术融合
      • (一)高效训练框架集成
      • (二)精度与稳定性权衡
    • 五、缩放定律研究与应用
      • 一、超参数缩放定律
      • 二、模型与数据缩放策略
      • (三)不同数据缩放定律
    • 六、对齐与微调策略
      • (一)多阶段对齐流程
      • (二)DPO 提升效果显著
    • 七、评估
      • (一)多基准评估覆盖广泛
      • (二)开放与留出评估贴近实际
      • (三)安全与综合评估确保可靠
    • 八、结论、限制和未来工作


摘要

在人工智能迅速发展的浪潮中,大语言模型(LLMs)已成为核心研究领域,其性能精度备受瞩目。DeepSeek LLM 作为开源语言模型的重要代表,在精度提升方面成果显著,对其研究剖析可为大模型发展提供关键启示。

开源大型语言模型(LLMs)的快速发展令人瞩目。然而,先前文献中描述的缩放定律结论各异,给大语言模型的扩展蒙上了阴影。我们深入研究缩放定律,并提出独特的发现,这些发现有助于在两种常用的开源配置(7B 和 67B)下扩展大规模模型。在缩放定律的指导下,我们推出了 DeepSeek LLM,这是一个致力于从长远角度推进开源语言模型的项目。为了支持预训练阶段,我们开发了一个目前包含 2 万亿词元且不断扩充的数据集。我们还在 DeepSeek LLM 基础模型上进行了有监督微调(SFT)和直接偏好优化(DPO),从而创建了 DeepSeek Chat 模型。我们的评估结果表明,DeepSeek LLM 67B 在一系列基准测试中超越了 LLaMA - 2 70B,特别是在代码、数学和推理领域。此外,开放式评估显示,我们的 DeepSeek LLM 67B Chat 在性能上优于 GPT - 3.5。

一、数据处理

(一)数据清洗与丰富

DeepSeek LLM 高度重视数据的预处理阶段。在去重环节,其采用激进策略,对 Common Crawl 语料库进行跨 91 个数据转储(dumps)的去重操作,相比单转储去重,能去除高达 89.8%的重复文档,有效减少数据冗余,确保模型训练数据的多样性与独特性。在过滤阶段,综合语言和语义评估构建严格标准,从多维度筛选高质量文本,提升数据信息密度。混音阶段则聚焦解决数据不平衡问题,增加稀缺领域样本,使数据分布更均衡,为模型学习各类知识奠定坚实基础,避免因数据偏差导致的精度损失。在这里插入图片描述

(二)分词器与词汇设置

基于 tokenizers 库实现 Byte-level Byte-Pair Encoding(BBPE)算法,在预分词时防止不同类别字符合并,如对换行符、标点和中日韩(CJK)符号单独处理,并效仿 GPT-2 拆分数字。经大量实践确定 100000 个常规词表规模,在约 24GB 多语言语料上训练分词器,并添加 15 个特殊词元扩充至 100015 个,训练时设词汇量为 102400,为模型高效处理文本、准确理解语义提供有力支持,保障模型在不同语言和文本结构下的精度表现。

二、模型架构优化

(一)微观架构借鉴与创新

在微观设计上,DeepSeek LLM 借鉴 LLaMA 架构优势,采用 Pre-Norm 结构结合 RMSNorm 函数稳定网络层输入归一化,以 SwiGLU 为前馈神经网络(FFN)激活函数提升非线性表达能力,中间层维度设为 8 3 d m o d e l \frac{8}{3}d_{model} 38dmodel ,并引入 Rotary Embedding 实现高效位置编码。在 67B 模型中,创新性采用 GroupedQuery Attention(GQA)替代传统 Multi-Head Attention(MHA),在维持性能同时降低推理成本,优化模型在大规模数据处理和复杂任务推理时的精度与效率平衡。在这里插入图片描述

(二)宏观架构分层调整

宏观层面,依模型规模精心分层,7B 模型设 30 层,67B 模型设 95 层。这种分层策略既契合其他开源模型参数规模趋势,便于模型训练与推理的流水线并行优化,又通过深度调整挖掘模型潜力,增强对复杂语言模式和语义关系的捕捉能力,在不同任务场景下有效提升模型精度表现,展现出宏观架构设计对精度优化的关键作用。

三、超参数优化

(一)初始化与优化器设置

模型以标准差 0.006 初始化,选用 AdamW 优化器,其超参数 β 1 = 0.9 \beta_{1}=0.9 β1=0.9 β 2 = 0.95 \beta_{2}=0.95 β2=0.95 、weight_decay = 0.1 经大量实验验证,在平衡梯度更新、防止过拟合及稳定训练过程方面表现优异,为模型训练提供可靠的优化基础,确保模型在训练初期能朝着提升精度方向有效收敛。

(二)学习率调度策略革新

摒弃传统余弦学习率调度器,采用多步学习率调度器。在训练前期经 2000 步热身使学习率达峰值,随后依训练进度动态调整,处理 80%训练 tokens 后降至峰值 31.6%,90%后降至 10%,并设梯度裁剪为 1.0。多步调度器在不同计算预算下能维持模型性能稳定,且便于持续训练时复用前期训练成果。通过实验精细调整多步阶段比例为 80%、10%、10%,进一步优化训练动态,提升模型精度,有效应对模型训练过程中的梯度变化和过拟合风险。s

四、训练框架与技术融合

(一)高效训练框架集成

依托 HAI-LLM 框架整合数据并行、张量并行、序列并行和 1F1B 流水线并行技术,高效利用计算资源提升训练速度,如在大规模数据处理时实现多 GPU 协同计算。同时,运用 flash attention 技术优化注意力计算硬件利用率,采用 ZeRO-1 技术优化优化器状态存储与更新,减少内存开销,通过计算与通信重叠、层/算子融合等策略加速训练流程,确保模型训练高效稳定,为精度提升提供有力硬件和框架支持。

(二)精度与稳定性权衡

训练全程采用 bf16 精度并以 fp32 精度累积梯度,在保障计算效率同时维持数值稳定性,避免精度损失累积。通过原位交叉熵计算减少 GPU 内存占用,即时转换 bf16 对数为 fp32 计算交叉熵并回写梯度,提升内存利用效率,防止因内存不足或精度问题影响训练进程,确保模型训练精度稳步提升。

五、缩放定律研究与应用

一、超参数缩放定律

早期对超参数设置的研究宛如一片混沌,虽有零星经验之谈,但在 DeepSeek LLM 的实践中却显得捉襟见肘。为扭转这一局面,DeepSeek LLM 踏上大规模实验征程,全力挖掘计算预算与最优批量大小、学习率之间的内在规律。研究发现,随着计算预算的逐步攀升,最优批量大小呈稳步上升之势,而学习率则悄然下降,三者构成紧密相连的幂律关系。在这里插入图片描述

例如,在小型实验中,当计算预算处于 1e17 FLOPs 时,对特定模型规模(177M FLOPs/token)进行批量大小和学习率的网格搜索,结果显示在宽泛的参数取值范围内,模型的泛化误差相对稳定,这意味着在该区间内模型有望实现近优性能。随后,借助多步学习率调度器,对众多不同批量大小、学习率及计算预算(从 1e17 至 2e19)的模型展开训练,并依据泛化误差筛选出近优超参数。最终拟合得出的批量大小公式 B o p t = 0.2920 ⋅ C 0.3271 B_{opt }=0.2920 \cdot C^{0.3271} Bopt=0.2920C0.3271 和学习率公式 η o p t = 0.3118 ⋅ C − 0.1250 \eta_{opt }=0.3118 \cdot C^{-0.1250} ηopt=0.3118C0.1250在 1e20 计算预算的模型验证中表现出色,有力支撑了 DeepSeek LLM 7B 和 67B 模型在训练时的高效性能达成,为模型训练的稳定性与准确性筑牢根基。在这里插入图片描述

二、模型与数据缩放策略

传统模型与数据规模的表征方式,如非嵌入参数 N 1 N_{1} N1 和完整参数 N 2 N_{2} N2 ,在计算成本估算上存在显著缺陷,犹如粗糙的量具难以精准度量模型的真实需求。DeepSeek LLM 独具慧眼,引入非嵌入 FLOPs/token(M)这一全新表征维度,将注意力操作的计算开销纳入考量,同时巧妙剔除词汇计算的干扰,使模型规模的度量更加精准合理。在这里插入图片描述

在确定最优模型和数据规模的探索中,DeepSeek LLM 借鉴 Chinchilla 的 IsoFLOP 方法,精心设计多组计算预算与模型/数据规模组合实验。通过对不同组合在独立验证集上泛化误差的细致分析,成功拟合出最优模型规模 M o p t = M b a s e ⋅ C a M_{opt}=M_{base } \cdot C^{a} Mopt=MbaseCa (其中 M b a s e = 0.1715 M_{base }=0.1715 Mbase=0.1715 a = 0.5243 a = 0.5243 a=0.5243 )和数据规模 D o p t = D b a s e ⋅ C b D_{opt}=D_{base } \cdot C^{b} Dopt=DbaseCb (其中 D b a s e = 5.8316 D_{base }=5.8316 Dbase=5.8316 b = 0.4757 b = 0.4757 b=0.4757 )的增长曲线。这一成果为 DeepSeek LLM 7B 和 67B 模型的训练规划提供了高瞻远瞩的战略指导,确保在有限的计算资源下实现模型性能的最大化提升。在这里插入图片描述

以实际训练为例,依据此缩放策略,模型在训练过程中能够根据计算预算的动态变化,合理分配资源用于模型结构的扩展和数据的扩充,避免资源的浪费或不足。在面对大规模训练任务时,模型可以有条不紊地增加层数、调整参数规模,同时引入高质量的数据,使模型的表达能力和知识储备同步提升,在基准测试和实际应用中展现出卓越的性能表现,有力验证了该缩放策略的科学性和有效性。
在这里插入图片描述

(三)不同数据缩放定律

在 DeepSeek LLM 的研发进程中,数据质量对缩放定律的影响逐渐浮出水面,成为不可忽视的关键因素。通过对早期内部数据、当前内部数据和 OpenWebText2 等不同数据集的深入研究发现,数据质量与最优模型/数据缩放分配策略之间存在着紧密的线性关联。

具体而言,随着数据质量的提升,在计算预算的分配天平上,模型缩放的权重逐渐增加,数据缩放的权重则相应降低。这一现象直观地表明,高质量数据在训练过程中能够释放更大的价值,如同优质的燃料能为引擎提供更强劲的动力,推动模型向更大规模高效扩展。例如,OpenWebText2 数据因其高质量特性,在相同数据规模下,相较于早期内部数据,更能充分发挥计算资源的潜力,促使模型在性能提升上实现更大的飞跃。

这一发现不仅为 DeepSeek LLM 在数据筛选和预处理阶段提供了关键的决策依据,促使其更加注重数据质量的把控和提升,如强化数据清洗、筛选和标注流程,确保进入模型训练的数据具有更高的准确性、完整性和相关性;同时也为整个 LLM 领域的研究人员敲响了警钟,提醒他们在模型开发过程中重新审视数据质量的核心地位,深入探索数据质量与模型性能之间的复杂关系。

六、对齐与微调策略

(一)多阶段对齐流程

收集百万级英汉语言指令数据,涵盖多领域,按 4 轮和 2 轮分别对 7B 和 67B 模型进行监督微调(SFT),学习率依模型规模设为 1e-5 和 5e-6,并监测基准准确率与重复率。针对 7B 模型数学数据微调时的重复问题,采用两阶段微调与直接偏好优化(DPO)结合方法,在维持基准性能同时显著降低重复率,提升模型指令遵循与响应生成能力,增强模型在实际应用中的精度表现。

(二)DPO 提升效果显著

运用 DPO 算法基于 helpfulness 和 harmlessness 构建偏好数据优化模型,训练一轮(学习率 5e-6、批量 512,搭配学习率预热和余弦调度器)。结果表明,DPO 能强化模型开放端生成能力,在标准基准测试中保持性能稳定,在提升模型生成文本质量、增强与用户需求匹配度方面效果显著,有效提升模型在复杂任务和真实场景下的精度与实用性。

七、评估

(一)多基准评估覆盖广泛

在多语言多领域基准测试中全面评估模型,包括 MMLU、C-Eval、GSM8K 等涵盖语言理解、推理、数学、代码等多维度任务的数据集。依任务特性采用 perplexity 评估、生成式评估、语言建模评估等方法,设置 2048 或 4096 最大序列长度,并详细规范评估格式。实验结果显示,DeepSeek LLM 67B 在多基准测试中超越 LLaMA-2 70B,尤其在代码、数学和推理任务中优势突出,充分验证模型在不同任务和语言场景下的高精度表现。

在这里插入图片描述

在这里插入图片描述

(二)开放与留出评估贴近实际

开放端评估聚焦模型在真实场景下的生成能力,中文采用 AlignBench、英文采用 MT-Bench 基准测试。结果表明 DeepSeek LLM 67B Chat 在中英文开放端评估表现卓越,超越多数开源模型,接近或超越 GPT-3.5,DPO 优化后性能进一步提升。留出评估针对数据污染和过拟合,选用 LeetCode、匈牙利国家高中考试、谷歌指令跟随评估数据集,结果显示大模型优势显著,且 DeepSeek 7B 和 67B 模型在不同规模任务中性能差异明显,体现模型精度随规模增长的提升趋势与实际应用可靠性。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

(三)安全与综合评估确保可靠

安全评估构建 20 人专家团队和分类体系,设计 2400 题测试集及评估准则,测试结果表明 DeepSeek 67B Chat 安全性强,在“不回答”数据集测试中得分高于 ChatGPT 和 GPT-4,凸显模型在安全合规方面的可靠表现。综合评估还涉及模型在多阶段训练策略、不同数据类型处理对精度影响的分析,如两阶段微调、多选择题数据添加实验等,为模型优化改进提供全面深入的依据,确保模型精度在多方面持续提升与优化。在这里插入图片描述

八、结论、限制和未来工作

  • 结论:介绍了 DeepSeek LLMs,其在 2 万亿词元的中英双语数据集上从头开始训练。详细解释了超参数选择、缩放定律及微调尝试,校准了先前工作的缩放定律并提出新策略,还能预测近优批量大小和学习率且发现缩放定律与数据质量相关,依此进行预训练和评估并避免了训练中的不良问题。
  • 局限性:DeepSeek Chat 存在和其他 LLM 类似的局限,如预训练后无法持续更新知识、可能生成不实信息、有幻觉现象,且初始中文数据不全面,对其他语言的掌握能力也有待提升。
  • 未来工作:即将发布代码智能和混合专家(MoE)技术报告;正在构建更大更好的数据集以提升模型多方面能力;对齐团队致力于研究让模型更有益、诚实和安全,且初步实验表明强化学习可提升模型复杂推理能力。

相关文章:

DeepSeek LLM 论文解读:相信长期主义开源理念可扩展大语言模型(DeepSeek 吹响通用人工智能的号角)

论文链接:DeepSeek LLM: Scaling Open-Source Language Models with Longtermism(相信长期主义开源理念可扩展大语言模型) 目录 摘要一、数据处理(一)数据清洗与丰富(二)分词器与词汇设置 二、模…...

指针基础知识2

1. 指针运算 1.1 指针 - 整数 以数组举例:因为数组在内存中是连续存放的,只要知道第⼀个元素的地址,顺藤摸瓜就能找到后面的所有元素。这时就会用到指针加减整数。 1.2指针-指针 指针 - 指针可以得到两个指针之间的数据个数。但是&#xf…...

nginx的4层和7层配置证书

4层证书代理 # 定义上游服务器组 stream {upstream tcp-25510 {hash $remote_addr consistent;server ip:5510;}# 配置监听 25510 端口的服务器块server {listen 25510 ssl; # 监听 25510 端口并启用 SSL# 指定 SSL 证书和私钥ssl_certificate /etc/nginx/key/bundle.crt;ssl…...

【大数据技术】搭建完全分布式高可用大数据集群(Flume)

搭建完全分布式高可用大数据集群(Flume) apache-flume-1.11.0-bin.tar.gz注:请在阅读本篇文章前,将以上资源下载下来。 写在前面 本文主要介绍搭建完全分布式高可用集群 Flume 的详细步骤。 注意: 统一约定将软件安装包存放于虚拟机的/software目录下,软件安装至/opt目…...

C++ 顺序表

顺序表的操作有以下: 1 顺序表的元素插入 给定一个索引和元素,这个位置往后的元素位置都要往后移动一次,元素插入的步骤有以下几步 (1)判断插入的位置是否合法,如果不合法则抛出异常 (2&…...

Python----Python高级(网络编程:网络基础:发展历程,IP地址,MAC地址,域名,端口,子网掩码,网关,URL,DHCP,交换机)

一、网络 早期的计算机程序都是在本机上运行的,数据存储和处理都在同一台机器上完成。随着技术的发展,人 们开始有了让计算机之间相互通信的需求。例如安装在个人计算机上的计算器或记事本应用,其运行环 境仅限于个人计算机内部。这种设置虽然…...

Spring Boot 的问题:“由于无须配置,报错时很难定位”,该怎么解决?

Spring Boot 的 "由于无须配置,报错时很难定位" 主要指的是: 传统 Spring 框架 需要大量 XML 或 Java 配置,开发者对应用的组件、Bean 加载情况有清晰的控制,出错时可以从配置入手排查。Spring Boot 采用自动配置&…...

基于javaweb的SpringBoot小区智慧园区管理系统(源码+文档+部署讲解)

🎬 秋野酱:《个人主页》 🔥 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 运行环境开发工具适用功能说明 运行环境 Java≥8、MySQL≥5.7、Node.js≥14 开发工具 后端:eclipse/idea/myeclipse…...

一文解释nn、nn.Module与nn.functional的用法与区别

🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀零基础入门PyTorch框架_十二月的猫的博客-CSDN博客 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 …...

vscode安装ESP-IDF

引言 ESP-IDF(Espressif IoT Development Framework)是乐鑫官方为其 ESP32、ESP32-S 系列等芯片提供的物联网开发框架。结合 Visual Studio Code(VSCode)这一强大的开源代码编辑器,能极大提升开发效率。本教程将详细介…...

springboot配置https

注意: 此配置只能本地环境或测试环境使用,生产环境使用https,应该配置nginx!请参考:使用certbot给nginx配置https-CSDN博客 1. 生成证书 使用JDK的keytool命令生成证书 注意:JDK版本需要和项目的JDK版本一…...

数据库的关系代数

关系就是表 属性(Attribute)是关系中的列.例如,关系 “学生” 中可能有属性 “学号”、“姓名”、“班级”。 元组(Tuple)是关系中的一行数据 1. 基本运算符 选择(Selection) 符号:σ 作用:从关…...

【服务器知识】如何在linux系统上搭建一个nfs

文章目录 NFS网络系统搭建**1. 准备工作****2. 服务器端配置****(1) 安装 NFS 服务****(2) 创建共享目录****(3) 配置共享规则****(4) 生效配置并启动服务****(5) 防火墙配置** **3. 客户端配置****(1) 安装 NFS 客户端工具****(2) 创建本地挂载点****(3) 挂载 NFS 共享目录***…...

【学习总结|DAY037】Linux 项目部署

引言 在当今的软件开发领域,Linux 以其安全、稳定、免费且开源的特性,成为项目部署的首选操作系统。无论是 Java 项目,还是各类开发、测试、生产环境中的软件安装,Linux 都占据着重要地位。本文将结合我今天所学内容,…...

【算法】动态规划专题⑧ —— 分组背包问题 python

目录 前置知识进入正题实战演练总结 前置知识 【算法】动态规划专题⑤ —— 0-1背包问题 滚动数组优化 python 进入正题 分组背包问题的详细解析 1. 问题定义 在 分组背包问题 中,物品被划分为若干组,每组内的物品 互斥(只能选择其中一个或…...

数据结构:算法复杂度

前言 数据结构(Data Structure)是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合。没有一种单一的数据结构对所有用途都有用,所以我们要学各式各样的数据结构,如:线性表、树…...

Mac本地体验LM studio

博主很懒,不爱打字! 1、LM studio官网:LM Studio - Discover, download, and run local LLMs 2、下载DMG文件,安装 3、使用vscode工具,commandshiftH【全局替换功能】,选择目录/Applications/LM\ Studio…...

【EPSG 坐标系系统完全解析(一)(8000 字终极指南)】

EPSG 坐标系系统完全解析(8000 字终极指南) 一、EPSG 的起源与定义(1200 字) 1.1 石油工业催生的标准 行业需求:20 世纪 80 年代石油勘探需要统一坐标参考成立过程: 1985 年欧洲石油公司成立 EPSG 工作组…...

【C++高并发服务器WebServer】-13:多线程服务器开发

本文目录 一、多线程服务器开发二、TCP状态转换三、端口复用 一、多线程服务器开发 服务端代码如下。 #include <stdio.h> #include <arpa/inet.h> #include <unistd.h> #include <stdlib.h> #include <string.h> #include <pthread.h>s…...

【CubeMX-HAL库】STM32F407—无刷电机学习笔记

目录 简介&#xff1a; 学习资料&#xff1a; 跳转目录&#xff1a; 一、工程创建 二、板载LED 三、用户按键 四、蜂鸣器 1.完整IO控制代码 五、TFT彩屏驱动 六、ADC多通道 1.通道确认 2.CubeMX配置 ①开启对应的ADC通道 ②选择规则组通道 ③开启DMA ④开启ADC…...

mysql8 sql语法错误,错误信息是怎么通过网络发送给客户端的,C++源码展示

在 MySQL 8 中&#xff0c;错误信息通过网络发送给客户端的过程涉及多个步骤&#xff0c;主要包括错误信息的生成、格式化、以及通过网络协议&#xff08;如 TCP/IP&#xff09;将错误信息发送给客户端。以下是详细的流程和相关代码分析&#xff1a; 1. 错误信息的生成 当 My…...

人工智能D* Lite 算法-动态障碍物处理、多步预测和启发式函数优化

在智能驾驶领域&#xff0c;D* Lite 算法是一种高效的动态路径规划算法&#xff0c;适用于处理环境变化时的路径重规划问题。以下将为你展示 D* Lite 算法的高级用法&#xff0c;包含动态障碍物处理、多步预测和启发式函数优化等方面的代码实现。 代码实现 import heapq impo…...

【学术投稿】第五届计算机网络安全与软件工程(CNSSE 2025)

重要信息 官网&#xff1a;www.cnsse.org 时间&#xff1a;2025年2月21-23日 地点&#xff1a;中国-青岛 简介 第五届计算机网络安全与软件工程&#xff08;CNSSE 2025&#xff09;将于2025年2月21-23日在中国-青岛举行。CNSSE 2025专注于计算机网络安全、软件工程、信号处…...

spring学习(spring 配置文件详解)

一 了解如何创建基本的spring 配置文件 步骤 1 导入 spring-context 依赖 <!-- https://mvnrepository.com/artifact/org.springframework/spring-context --><dependency><groupId>org.springframework</groupId><artifactId>spring-context&l…...

创建一个javaWeb Project

文章目录 前言一、eclipse创建web工程二、web.xmlservlet.xml< mvc:annotation-driven/ > Spring MVC 驱动< context:component - scan >&#xff1a;扫描< bean > ... < /bean >< import > config/beans.xml beans.xmlmybatis.xml 前言 javaWe…...

大模型推理——MLA实现方案

1.整体流程 先上一张图来整体理解下MLA的计算过程 2.实现代码 import math import torch import torch.nn as nn# rms归一化 class RMSNorm(nn.Module):""""""def __init__(self, hidden_size, eps1e-6):super().__init__()self.weight nn.Pa…...

洛谷网站: P3029 [USACO11NOV] Cow Lineup S 题解

题目传送门&#xff1a; P3029 [USACO11NOV] Cow Lineup S - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 前言&#xff1a; 这道题的核心问题是在一条直线上分布着不同品种的牛&#xff0c;要找出一个连续区间&#xff0c;使得这个区间内包含所有不同品种的牛&#xff0c;…...

DeepSeek-R1 云环境搭建部署流程

DeepSeek横空出世&#xff0c;在国际AI圈备受关注&#xff0c;作为个人开发者&#xff0c;AI的应用可以有效地提高个人开发效率。除此之外&#xff0c;DeepSeek的思考过程、思考能力是开放的&#xff0c;这对我们对结果调优有很好的帮助效果。 DeepSeek是一个基于人工智能技术…...

【Go语言快速上手】第二部分:Go语言进阶

文章目录 并发编程goroutine&#xff1a;创建和调度 goroutinechannel&#xff1a;无缓冲 channel、有缓冲 channel、select 语句无缓冲 channel有缓冲 channelselect 语句 sync 包&#xff1a;Mutex、RWMutex、WaitGroup 等同步原语Mutex&#xff1a;互斥锁RWMutex&#xff1a…...

自定义多功能输入对话框:基于 Qt 打造灵活交互界面

一、引言 在使用 Qt 进行应用程序开发时&#xff0c;我们经常需要与用户进行交互&#xff0c;获取他们输入的各种信息。QInputDialog 是 Qt 提供的一个便捷工具&#xff0c;可用于简单的输入场景&#xff0c;但当需求变得复杂&#xff0c;需要支持更多类型的输入控件&#xff0…...

计算机毕业设计SparkStreaming+Kafka广告推荐系统 广告预测 广告数据分析可视化 广告爬虫 大数据毕业设计 深度学习 机器学习

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…...

企业FTP替代升级,实现传输大文件提升100倍!

随着信息技术的飞速发展&#xff0c;网络安全环境也变得越来越复杂。在这种背景下&#xff0c;传统的FTP&#xff08;文件传输协议&#xff09;已经很难满足现代企业对文件传输的需求了。FTP虽然用起来简单&#xff0c;但它的局限性和安全漏洞让它在面对高效、安全的数据交换时…...

盘姬工具箱:完全免费的电脑工具箱

今天给大家介绍一个非常好用的系统工具箱&#xff0c;里面内含100多个工具&#xff0c;完全免费使用&#xff0c;而且没有广告&#xff0c;非常的棒。 盘姬工具箱&#xff1a;完全免费的电脑工具箱 盘姬工具箱是一款完全免费的电脑工具箱&#xff0c;功能丰富且实用。软件下载并…...

【个人开发】macbook m1 Lora微调qwen大模型

本项目参考网上各类教程整理而成&#xff0c;为个人学习记录。 项目github源码地址&#xff1a;Lora微调大模型 项目中微调模型为&#xff1a;qwen/Qwen1.5-4B-Chat。 去年新发布的Qwen/Qwen2.5-3B-Instruct同样也适用。 微调步骤 step0: 环境准备 conda create --name fin…...

开源项目OpenIM单机部署生产环境异常处理及数据恢复

在生产环境中&#xff0c;通常会采用集群部署来保证组件和服务的高可用性。然而&#xff0c;在资源有限的情况下&#xff0c;一些开发者可能会选择在生产环境中进行单机部署&#xff08;使用源码部署或docker容器&#xff09;。本文将介绍在单机部署环境下如何进行数据备份、异…...

天津三石峰科技——汽车生产厂的设备振动检测项目案例

汽车产线有很多传动设备需要长期在线运行&#xff0c;会出现老化、疲劳、磨损等 问题&#xff0c;为了避免意外停机造成损失&#xff0c;需要加装一些健康监测设备&#xff0c;监测设备运 行状态。天津三石峰科技采用 12 通道振动信号采集卡&#xff08;下图 1&#xff09;对…...

MySQL-5.7.44安装(CentOS7)

目录 1、下载安装包并解压 2、创建数据目录与日志目录 3、设置环境变量 4、刷新环境变量 5、执行初始化 6、创建配置文件目录 7、新建配置文件 8、为安装目录赋予可执行权限 9、创建服务启动脚本 10、启动服务并将启动脚本加入开机自启动 11、查看服务状态 12、创建…...

什么是网络安全

1) 什么是网络安全 作为程序员&#xff0c;主要是面向产品的安全的问题。比如sql注入&#xff0c;xss&#xff0c;csrf&#xff0c;cookie窃取等等&#xff0c;都值得我们去思考。保证网站运行正常&#xff0c;客户数据安全。 2) sql注入 简单的说&#xff0c;就是利用表单提…...

即时通讯开源项目OpenIM配置离线推送全攻略

如何进行二次开发 如果您需要基于 OpenIM 开发新特性&#xff0c;首先要确定是针对业务侧还是即时通讯核心逻辑。 由于 OpenIM 系统本身已经做好了比较多的抽象&#xff0c;大部分聊天的功能已经具备了&#xff0c;不建议修改 IM 本身。 如果需要增加 IM 的能力&#xff0c;可以…...

快速上手——.net封装使用DeekSeek-V3 模型

📢欢迎点赞 :👍 收藏 ⭐留言 📝 如有错误敬请指正,赐人玫瑰,手留余香!📢本文作者:由webmote 原创📢作者格言:新的征程,用爱发电,去丈量人心,是否能达到人机合一?开工大吉 新的一年就这么水灵灵的开始了,在这里,祝各位读者新春快乐,万事如意! 新年伊…...

【原创】Android Studio Ladybug 中Gradle配置

使用Android Studio创建项目后&#xff0c;由于需要下载的一下文件在国外&#xff0c;加上网速的问题&#xff0c;以及防火墙的问题&#xff0c;不少文件难以下载。常常导致项目创建后&#xff0c;要等很长时间&#xff0c;各种折腾&#xff0c;结果一个demo都跑不起来。 经过…...

Java版本与JDK版本

两者关联 Java版本指的Java语言和平台的版本&#xff0c;例如Java8、Java11、Java17等&#xff0c;每个版本会引入新特性、改进和修复。 JDK(Java Development Kit)版本则是开发工具包&#xff0c;包含编译器、调试器等工具&#xff0c;通常与Java版本对应&#xff0c;例如JDK…...

【GeeRPC】Day3:服务注册(Service Register)

Day3&#xff1a;服务注册&#xff08;Service Register&#xff09; 今天的任务是&#xff1a; 通过反射实现服务注册功能&#xff1b;在服务端实现服务调用&#xff0c;代码约 150 行&#xff1b; 结构体映射为服务 RPC 框架的一个基本能力是&#xff1a;像调用本地程序一…...

c/c++蓝桥杯经典编程题100道(17)二叉树遍历

二叉树遍历 ->返回c/c蓝桥杯经典编程题100道-目录 目录 二叉树遍历 一、题型解释 二、例题问题描述 三、C语言实现 解法1&#xff1a;递归前序遍历&#xff08;难度★&#xff09; 解法2&#xff1a;迭代中序遍历&#xff08;难度★★&#xff09; 解法3&#xff1a…...

mysql系统库介绍,数据字典(介绍,存储方式,常见表,访问权限),系统表(介绍,不同功能的表)

目录 mysql系统库 介绍 数据字典 介绍 不同版本下的存储方式 常见的数据字典表 访问权限 系统表 介绍 权限授予系统表 对象信息系统表 服务器端帮助系统表 时区系统表 mysql系统库 介绍 MySQL 默认创建 的特殊数据库&#xff0c;主要用于存储服务器运行时所需的信…...

如何在macOS上安装Ollama

安装Ollama 安装Ollama的步骤相对简单&#xff0c;以下是基本的安装指南&#xff1a; 访问官方网站&#xff1a;打开浏览器&#xff0c;访问Ollama的官方网站。 下载安装包&#xff1a;根据你的操作系统&#xff0c;选择相应的安装包进行下载。 运行安装程序&#xff1a;下载完…...

【JavaScript】《JavaScript高级程序设计 (第4版) 》笔记-Chapter6-集合引用类型

六、集合引用类型 Object 是 ECMAScript 中最常用的类型之一。虽然 Object 的实例没有多少功能&#xff0c;但很适合存储和在应用程序间交换数据。 显式地创建 Object 的实例有两种方式。第一种是使用 new 操作符和 Object 构造函数。另一种方式是使用对象字面量&#xff08;ob…...

Spring Boot Actuator使用

说明&#xff1a;本文介绍Spring Boot Actuator的使用&#xff0c;关于Spring Boot Actuator介绍&#xff0c;下面这篇博客写得很好&#xff0c;珠玉在前&#xff0c;我就不多介绍了。 Spring Boot Actuator 简单使用 项目里引入下面这个依赖 <!--Spring Boot Actuator依…...

SwanLab x verl:可视化LLM强化学习后训练教程

文章目录 介绍Verl和SwanLab1. 环境安装2. 使用方法3. 查看训练日志 介绍Verl和SwanLab verl 是一个灵活、高效且可用于生产环境的强化学习&#xff08;RL&#xff09;训练框架&#xff0c;专为大型语言模型&#xff08;LLMs&#xff09;的后训练设计。它由字节跳动火山引擎团…...

linux安装oracle19c

安装 安装前检查配置&#xff1a; 挂载50g盘&#xff1a; vgcreate oravg /dev/sdb lvcreate -L 49.8G -n oralv oravg lvscan mkfs.xfs /dev/oravg/oralv 查看uuid blkid 复制分区表 cp /etc/fstab /etc/fstab.bakvi /etc/fstab内容为: /dev/oravg/oralv /u01 xfs defau…...