知识蒸馏:让大模型“瘦身“而不失智慧的魔术
引言:当AI模型需要"减肥"
在人工智能领域,一个有趣的悖论正在上演:大模型的参数规模每年以10倍速度增长,而移动设备的算力却始终受限。GPT-4的1750亿参数需要价值500万美元的GPU集群运行,但现实中的智能设备可能只有指甲盖大小。这种矛盾催生了一项神奇的技术——知识蒸馏(Knowledge Distillation),它就像给AI模型进行"脑外科手术",将庞然大物的智慧浓缩到轻量模型中。
第一章 知识蒸馏的本质解析
1.1 从泡茶到模型压缩的哲学
想象一位泡茶大师(教师模型)在教导学徒(学生模型):
- 直接模仿:学徒记录师傅的每个动作(传统训练)
- 精髓传承:师傅讲解水温对茶香的影响(知识蒸馏)
知识蒸馏的核心在于提取教师模型的"暗知识"(Dark Knowledge)——那些隐藏在输出概率中的决策逻辑。以图像分类为例,当识别一张熊猫图片时:
类别 | 教师模型输出 | 学生模型目标 |
---|---|---|
熊猫 | 0.95 | 0.90 |
浣熊 | 0.03 | 0.05 |
树懒 | 0.01 | 0.03 |
北极熊 | 0.01 | 0.02 |
学生不仅要学习正确类别的概率,更要理解类别间的相似关系(熊猫与浣熊的相似度高于北极熊),这就是暗知识的价值。
1.2 知识蒸馏的数学表达
核心损失函数由Hinton提出:
L = α ⋅ H ( y , σ ( z s ) ) + ( 1 − α ) ⋅ τ 2 ⋅ K L ( σ ( z t / τ ) ∣ ∣ σ ( z s / τ ) ) L = \alpha \cdot H(y, \sigma(z_s)) + (1-\alpha) \cdot \tau^2 \cdot KL(\sigma(z_t/\tau) || \sigma(z_s/\tau)) L=α⋅H(y,σ(zs))+(1−α)⋅τ2⋅KL(σ(zt/τ)∣∣σ(zs/τ))
其中:
- H H H: 交叉熵损失
- K L KL KL: KL散度
- τ \tau τ: 温度参数
- α \alpha α: 平衡系数
温度参数 τ \tau τ的作用就像显微镜的调焦旋钮:
- τ \tau τ趋近0:只关注最大概率类别
- τ \tau τ增大:揭示概率分布的细节特征
# 知识蒸馏损失函数PyTorch实现
def distillation_loss(y_true, y_teacher, y_student, temp=5, alpha=0.7):# 原始任务损失task_loss = F.cross_entropy(y_student, y_true)# 蒸馏损失soft_teacher = F.softmax(y_teacher / temp, dim=1)soft_student = F.log_softmax(y_student / temp, dim=1)distill_loss = F.kl_div(soft_student, soft_teacher, reduction='batchmean') * (temp**2)return alpha * task_loss + (1 - alpha) * distill_loss
第二章 蒸馏技术的演进图谱
2.1 三代蒸馏方法对比
第一代:响应式蒸馏(2015)
- 特点:直接模仿教师输出
- 局限:丢失中间层信息
- 典型应用:MNIST分类器压缩
第二代:特征式蒸馏(2018)
- 创新点:对齐中间层特征
- 关键技术:
- FitNets的提示学习
- Attention Transfer(注意力迁移)
- FSP矩阵匹配
第三代:关系式蒸馏(2021至今)
- 突破:建模样本间关系
- 代表方法:
- RKD(Relational Knowledge Distillation)
- CCKD(Cross-Image Context Distillation)
- 图结构蒸馏
2.2 前沿蒸馏技术盘点
技术名称 | 核心思想 | 效果提升 | 适用场景 |
---|---|---|---|
动态蒸馏 | 自适应调整蒸馏强度 | +3.2% | 在线学习系统 |
自蒸馏 | 模型自我迭代优化 | +2.8% | 数据隐私场景 |
对抗蒸馏 | 引入判别器增强迁移 | +4.1% | 跨模态任务 |
量化感知蒸馏 | 联合优化量化和蒸馏 | +5.6% | 边缘设备部署 |
多教师蒸馏 | 集成多个专家模型的知识 | +6.3% | 复杂任务处理 |
第三章 工业级蒸馏实战指南
3.1 华为诺亚方舟的蒸馏实践
在华为Mate 60的语音助手中,工程师使用知识蒸馏将800M参数的Whisper模型压缩到50M:
四阶段蒸馏流程:
- 架构搜索:使用NAS寻找最优学生结构
- 渐进式蒸馏:从浅层到深层逐步迁移
- 量化训练:8bit量化与蒸馏联合优化
- 对抗微调:提升鲁棒性的最后一步
class ProgressiveDistiller:def __init__(self, teacher, student):self.teacher = teacherself.student = studentself.layer_mapping = { # 层间映射关系'encoder.0': 'block.0','encoder.3': 'block.1',...}def distill_layer(self, layer_name):# 提取教师特征t_feat = get_features(self.teacher, layer_name)# 对齐学生特征s_feat = get_features(self.student, self.layer_mapping[layer_name])return F.mse_loss(t_feat, s_feat)def train_step(self, x):# 逐层蒸馏total_loss = 0for layer in self.progressive_schedule[current_step]:total_loss += self.distill_layer(layer)# 全局蒸馏total_loss += distillation_loss(...)return total_loss
3.2 蒸馏中的"陷阱"与解决方案
常见问题诊断表:
症状 | 可能原因 | 解决方案 |
---|---|---|
学生模型性能骤降 | 容量差距过大 | 引入中间监督或分阶段蒸馏 |
训练过程震荡 | 学习率不匹配 | 使用分层学习率调度 |
泛化能力下降 | 过度模仿教师 | 增加数据增强强度 |
推理速度未提升 | 结构未优化 | 结合剪枝和量化技术 |
知识迁移效率低 | 特征空间不对齐 | 添加适配层或使用注意力机制 |
第四章 突破性进展与理论突破
4.1 2023年顶尖研究成果
-
Meta的Data-Free蒸馏(ICLR 2023)
- 创新点:无需原始数据,通过生成对抗网络重构输入
- 效果:在ImageNet上达到92%的教师准确率
- 核心公式:
min G max D L a d v + λ R ( z ) \min_G \max_D L_{adv} + \lambda R(z) GminDmaxLadv+λR(z)
其中 R ( z ) R(z) R(z)是特征分布正则项
-
剑桥大学的液态蒸馏(NeurIPS 2023)
- 灵感来源:生物神经可塑性
- 动态调整知识传递路径
- 在持续学习场景中表现突出
-
MIT的量子蒸馏(Nature Machine Intelligence 2023)
- 用量子电路模拟知识传递
- 在分子模拟任务中误差降低40%
4.2 理论突破:知识可迁移性定律
通过大量实验,DeepMind团队发现知识迁移存在类似摩尔定律的规律:
A c c S A c c T = 1 1 + e − k ( C S / C T − θ ) \frac{Acc_S}{Acc_T} = \frac{1}{1 + e^{-k(C_S/C_T - \theta)}} AccTAccS=1+e−k(CS/CT−θ)1
其中:
- A c c S Acc_S AccS, A c c T Acc_T AccT: 学生和教师的准确率
- C S C_S CS, C T C_T CT: 模型容量(参数量)
- k k k, θ \theta θ: 任务相关常数
这一定律为模型压缩提供了理论指导:当学生容量达到教师模型的30%时,可以期望获得90%的性能继承。
第五章 行业应用全景扫描
5.1 计算机视觉的蒸馏革命
特斯拉的自动驾驶演进:
- 2019年:ResNet-152教师 → MobileNet学生(延迟从120ms降至15ms)
- 2022年:ViT-Huge教师 → EfficientFormer学生(精度保持98%)
- 2023年:多模态教师 → 统一学生模型(融合视觉、雷达、GPS)
5.2 自然语言处理的智慧传承
大模型压缩的三大战役:
- BERT → TinyBERT(1.7%参数,95%性能)
- 关键策略:嵌入层分解、隐藏层裁剪
- GPT-3 → GPT-3 Mini(0.1%参数,83%性能)
- 创新点:动态注意力蒸馏
- ChatGPT → MobileGPT(端侧运行)
- 突破:混合专家蒸馏(MoE-KD)
5.3 跨模态蒸馏的奇妙应用
医疗影像诊断系统:
- 教师模型:3D ResNet-200(CT扫描分析)
- 学生模型:轻量级CNN+Transformer混合体
- 蒸馏策略:
- 特征仿射对齐
- 病变区域注意力迁移
- 多医师知识融合
第六章 挑战与未来方向
6.1 现存技术瓶颈
-
异构架构鸿沟:
- 当教师是Transformer,学生是CNN时,直接迁移效率低下
- 最新解决方案:架构自适应转换器(2023)
-
动态知识捕获:
- 传统方法难以捕捉时序模型中的状态转移知识
- 前沿方向:LSTM到TCN的蒸馏(ICASSP 2024)
-
多模态知识融合:
- 如何协调视觉、语言、语音不同模态的知识传递
- 突破案例:CLIP到MobileCLIP的蒸馏(arXiv 2023)
6.2 未来五年技术预测
根据OpenAI的技术路线白皮书:
时间 | 技术突破 | 预期影响 |
---|---|---|
2024 | 自演进蒸馏框架 | 自动化压缩流程 |
2025 | 量子-经典混合蒸馏 | 药物发现效率提升10倍 |
2026 | 神经符号蒸馏系统 | 实现可解释的模型压缩 |
2027 | 全球知识蒸馏网络 | 分布式模型协同进化 |
2028 | 生物神经网络蒸馏 | 脑机接口模型轻量化 |
第七章 开发者实战手册
7.1 蒸馏工具箱选型指南
工具名称 | 核心优势 | 适用场景 |
---|---|---|
Distiller | 工业级优化 | 生产环境部署 |
TinyNeural | 自动架构搜索 | 研究快速原型 |
KD-Lib | 丰富的基础实现 | 教学演示 |
FastKD | 极致推理速度 | 移动端应用 |
OmniDistill | 多模态支持 | 跨领域任务 |
7.2 五步构建蒸馏系统
以图像分类任务为例:
-
架构设计:
teacher = timm.create_model('resnet152', pretrained=True) student = create_mobilenet_v3(width_mult=0.5)
-
知识抽取:
class FeatureHook:def __init__(self, layer):self.features = Nonelayer.register_forward_hook(self.save_features)def save_features(self, module, input, output):self.features = output
-
损失设计:
loss_kd = nn.KLDivLoss()(F.log_softmax(student_out/τ), F.softmax(teacher_out/τ)) * τ²
-
优化策略:
optimizer = Lion(params, lr=3e-5, weight_decay=1e-6) scheduler = CosineAnnealingLR(optimizer, T_max=100)
-
部署优化:
quantized_model = torch.quantization.quantize_dynamic(student, {nn.Linear}, dtype=torch.qint8)
结语:知识永续的AI文明
知识蒸馏技术正在构建人工智能的"文明传承"机制——让每个时代的智慧结晶都能在更精巧的载体中延续。当我们凝视这些被压缩的模型时,看到的不仅是参数的缩减,更是人类智慧的密度提升。正如计算机科学家Alan Kay所言:“预测未来的最好方式就是创造它。” 在知识蒸馏的世界里,我们正在创造一个人工智能持续进化的未来。
相关文章:
知识蒸馏:让大模型“瘦身“而不失智慧的魔术
引言:当AI模型需要"减肥" 在人工智能领域,一个有趣的悖论正在上演:大模型的参数规模每年以10倍速度增长,而移动设备的算力却始终受限。GPT-4的1750亿参数需要价值500万美元的GPU集群运行,但现实中的智能设备…...
`docker commit`和`docker tag`
1.docker commit docker commit是一个 Docker 命令,用于将一个正在运行的容器(Container)的状态提交为一个新的镜像(Image)。这类似于在版本控制系统中提交更改。 作用 • 当你对一个容器进行了修改(例如安…...
构建下一代AI Agent:自动化开发与行业落地全解析
1. 下一代AI Agent:概念与核心能力 核心能力描述技术支撑应用价值自主性独立规划与执行任务,无需持续人工干预决策树、强化学习、目标导向规划减少人工干预,提高任务执行效率决策能力评估多种方案并选择最优解决方案贝叶斯决策、多目标优化、…...
项目篇:模拟实现高并发内存池(2)
1.整体框架的设计 首先我们要来大概的梳理一下我们的高并发内存池的整体框架设计 在现代很多开发环境其实都是多核多线程,在申请内存的情况下,就必然会存在激烈的锁竞争问题。如果我们需要要实现内存池,必须要考虑以下几方面的问题。 1.性…...
PostgreSQL用SQL实现俄罗斯方块
📢📢📢📣📣📣 作者:IT邦德 中国DBA联盟(ACDU)成员,10余年DBA工作经验 Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主,全网粉丝10万 擅长主流Oracle、MySQL、PG、高斯…...
强大的AI网站推荐(第二集)—— V0.dev
网站:V0.dev 号称:前端开发神器,专为开发人员和设计师设计,能够使用 AI 生成 React 代码 博主评价:生成的UI效果太强大了,适合需要快速创建UI原型的设计师和开发者 推荐指数:🌟&…...
田间机器人幼苗视觉检测与护苗施肥装置研究(大纲)
田间机器人幼苗视觉检测与护苗施肥装置研究 基于多光谱视觉与精准施肥的农业机器人系统设计 第一章 绪论 1.1 研究背景与意义 农业智能化需求: 传统幼苗检测依赖人工,效率低且易遗漏弱苗/病苗施肥不精准导致资源浪费和环境污染 技术挑战:…...
vLLM 同时部署多个模型及调用
目录 一、单例加载多模型 (一) 原生多模型支持(vLLM ≥0.3.0) (二) 针对 vLLM 单实例部署多模型时 只有最后一个模型生效 的问题,结合实际测试和源码分析,以下是具体原因和解决方…...
LeetCode 2680.最大或值:位运算
【LetMeFly】2680.最大或值:位运算 力扣题目链接:https://leetcode.cn/problems/maximum-or/ 给你一个下标从 0 开始长度为 n 的整数数组 nums 和一个整数 k 。每一次操作中,你可以选择一个数并将它乘 2 。 你最多可以进行 k 次操作&#…...
Python——MySQL数据库编程
MySQL 是现在最流行的关系型数据库管理系统,在 WEB 开发中,MySQL 是最好的 RDBMS 应用软件之一。接下来,让我们快速掌握 python 使用 MySQL 的相关知识,并轻松使用 MySQL 数据库。 第1关:python数据库编程之创建数据库…...
AI 如何重塑数据湖的未来
在生成式 AI 与大模型技术飞速发展的今天,数据湖技术正迎来前所未有的挑战与机遇。海量非结构化数据的存储与处理、实时性与计算效率的平衡、高效存储的需求,已成为数据平台的核心难题。如何突破传统架构的局限,构建支持 AI 驱动的高效数据湖…...
C++ - 从零实现Json-Rpc框架-2(服务端模块 客户端模块 框架设计)
项⽬设计 本质上来讲,我们要实现的rpc(远端调⽤)思想上并不复杂,甚⾄可以说是简单,其实就是客⼾端想要完成某个任务的处理,但是这个处理的过程并不⾃⼰来完成,⽽是,将请求发送到服务…...
课程5. 迁移学习
课程5. 迁移学习 卷积神经网络架构ImageNet神经网络架构实践从 torchvision 加载模型在一个图像上测试预先训练的网络 迁移学习网络训练冻结层实践准备数据替换网络的最后一层冻结层网络训练获取测试样本的质量指标 课程计划: 流行的神经网络架构迁移学习 卷积神经…...
SATA(Serial Advanced Technology Attachment)详解
一、SATA的定义与核心特性 SATA(串行高级技术附件)是一种 用于连接存储设备(如硬盘、固态硬盘、光驱)的高速串行接口标准,取代了早期的PATA(并行ATA)。其核心特性包括: 高速传输&am…...
常用的 MyBatis 标签及其作用
MyBatis 是一个优秀的持久层框架,它通过 XML 或注解的方式将 Java 对象与数据库操作进行映射。在 MyBatis 的 XML 映射文件中,可以使用多种标签来定义 SQL 语句、参数映射、结果映射等。以下是一些常用的 MyBatis 标签及其作用: 1. 基本标签 …...
Blender配置渲染设置并输出动画
在Blender中,渲染设置和渲染动画的选项位于不同的面板中。以下是具体步骤: 渲染设置 渲染设置用于配置输出格式、分辨率、帧率等参数。 打开右侧的 属性面板(按 N 键可切换显示)。 点击 “输出属性” 选项卡(图标是…...
网络故障排查指南:分治法与排除法结合的分层诊断手册
目录 一、排查方法论:分治法与排除法的结合 1. 分治法(Divide and Conquer) 2. 排除法(Elimination) 二、分层诊断实战手册 1. 物理层排查(设备与线路) 硬件检测三板斧 运维经验 2. 网络…...
【万字总结】前端全方位性能优化指南(三)——GPU渲染加速、WebGPU、OffscreenCanvas多线程渲染
theme: condensed-night-purple 前言 当每秒60帧的流畅渲染遭遇百万级多边形场景,传统CPU绘图如同单车道上的赛车——即便引擎轰鸣,依然难逃卡顿困局。现代GPU加速技术将渲染任务从「单车道」扩展到「八车道」,本章以分层爆破、API革命、线程联邦为技术支柱,拆解如何通过G…...
报错 - redis - Unit redis.service could not be found.
报错: Unit redis.service could not be found.Could not connect to Redis at 127.0.0.1:6379: Connection refused解决方法: 检查状态、有必要的话 重新安装 Linux 上查看状态 systemctl status redis显示以下内容,代表正常服务 出现下面…...
Windows系统本地部署OpenManus对接Ollama调用本地AI大模型
文章目录 前言1. 环境准备1.1 安装Python1.2. 安装conda 2. 本地部署OpenManus2.1 创建一个新conda环境2.2 克隆存储库2.3 安装依赖环境 3. 安装Ollama4. 安装QwQ 32B模型5. 修改OpenManus配置文件6. 运行OpenManus7.通过网页使用OpenManus8. 安装内网穿透8.1 配置随机公网地址…...
【递归,搜索与回溯算法篇】- 名词解释
一. 递归 1. 什么是递归? 定义: 函数自己调用自己的情况关键点: ➀终止条件: 必须明确递归出口,避免无限递归 ➁子问题拆分: 问题需能分解成结构相同的更小的子问题缺点: ➀栈溢出风险&#x…...
【设计模式】装饰模式
六、装饰模式 装饰(Decorator) 模式也称为装饰器模式/包装模式,是一种结构型模式。这是一个非常有趣和值得学习的设计模式,该模式展现出了运行时的一种扩展能力,以及比继承更强大和灵活的设计视角和设计能力,甚至在有些场合下&am…...
c库、POSIX库、C++库、boost库之间的区别和联系
文章目录 一、区别1. 定义和来源2. 功能范围3. 可移植性4. 语言支持5. 维护和更新 二、联系1. 相互补充2. 部分功能重叠3. 共同促进编程发展4. 代码兼容性 三、总结 一、区别 1. 定义和来源 C 库函数:由 ANSI C 和 ISO C 标准定义,是 C 语言编程的基础…...
算法及数据结构系列 - 树
系列文章目录 算法及数据结构系列 - 二分查找 算法及数据结构系列 - BFS算法 算法及数据结构系列 - 动态规划 算法及数据结构系列 - 双指针 算法及数据结构系列 - 回溯算法 文章目录 树框架树遍历框架N叉树遍历框架 经典题型124.二叉树的最大路径和105.从前序与中序遍历序列构造…...
go安装lazydocker
安装 先安装go环境 https://blog.csdn.net/Yqha1/article/details/146430281?fromshareblogdetail&sharetypeblogdetail&sharerId146430281&sharereferPC&sharesourceYqha1&sharefromfrom_link 安装lazydocker go install github.com/jesseduffield/laz…...
《深度学习》——YOLOv3详解
文章目录 YOLOv3简介YOLOv3核心原理YOLOv3改进YOLOv3网络结构 YOLOv3简介 YOLOv3(You Only Look Once, version 3)是一种先进的实时目标检测算法,由 Joseph Redmon 和 Ali Farhadi 开发。它在目标检测领域表现出色,具有速度快、精…...
使用spring-ai-ollama访问本地化部署DeepSeek
创建SpringBoot工程,引入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"htt…...
Kafka消息自定义序列化
文章目录 1. 默认序列化2.自定义序列化3.示例4.自定义解序列化器 1. 默认序列化 在网络中发送数据都是以字节的方式,Kafka也不例外。Apache Kafka支持用户给broker发送各种类型的消息。它可以是一个字符串、一个整数、一个数组或是其他任意的对象类型。序列化器(se…...
使用Systemd管理ES服务进程
Centos中的Systemd介绍 CentOS 中的 Systemd 详细介绍 Systemd 是 Linux 系统的初始化系统和服务管理器,自 CentOS 7 起取代了传统的 SysVinit,成为默认的初始化工具。它负责系统启动、服务管理、日志记录等核心功能,显著提升了系统的启动速…...
编程语言选择分析:C#、Rust、Go 与 TypeScript 编译器优化
编程语言选择分析:C#、Rust、Go 与 TypeScript 编译器优化 在讨论编程语言的选择时,特别是针对微软的 C# 和 Rust,以及谷歌的 Go 语言,以及微软试图通过 Go 来拯救 TypeScript 编译器的问题,我们可以从多个角度来分析和…...
使用粘贴控件
HarmonyOS 5.0.3(15) 版本的配套文档,该版本API能力级别为API 15 Release 文章目录 约束与限制开发步骤 粘贴控件是一种特殊的系统安全控件,它允许应用在用户的授权下无提示地读取剪贴板数据。 在应用集成粘贴控件后,用户点击该控件…...
MySQL 客户端连不上(1045 错误)原因全解析
MySQL 客户端连不上(1045 错误)原因全解析 在我们学习 MySQL 或从事 MySQL DBA 工作期间,时常会遇到:“我尝试连接到 MySQL 并且收到1045 错误,但我确定我的用户和密码都没问题”。 不管你现在是否是高手还是高高手,都不可避免曾经在初学的时候犯过一些很初级的错误,例…...
麒麟系列Linux发行版探秘
以下内容摘自《银河麒麟操作系统进阶应用》一书。 银河麒麟操作系统(Kylin) 银河麒麟(Kylin)操作系统是中国自主研发的一款基于Linux内核的操作系统。它的发展历程可以追溯到2002年,最初由国防科技大学主导研发&…...
刘强东突然发声:不该用算法压榨最底层兄弟!东哥,真正的人民企业家
今天忙了一天,很累,准备睡觉的时候,看到网上盛传的刘强东的朋友圈,东哥又在朋友圈发文了。 说实话,看完之后,感动,真的感动。 尤其是当我看到这两句话的时候。 1、我们所学的知识、商业模式、技…...
信息收集与问答系统流程分析与改进建议
现有系统的问题与局限 1. 资源管理问题 二元决策机制过于简化:当前系统仅在令牌预算耗尽时才进入Beast Mode,缺乏渐进式资源分配策略缺少早期预算规划:没有基于问题复杂度的初始资源分配机制缺乏优先级资源分配:所有问题和策略消…...
【人工智能】如何理解transformer中的token?
如何理解transformer中的token? **一、Token在Transformer中的作用****二、文本分词的常见方法****1. 基于词典的分词(Dictionary-based Tokenization)****2. 子词分词(Subword Tokenization)****(1) WordPiece算法****(2) BPE&a…...
Spring Boot 集成 Kafka 消息发送方案
一、引言 在 Spring Boot 项目中,Kafka 是常用的消息队列,可实现高效的消息传递。本文介绍三种在 Spring Boot 中使用 Kafka 发送消息的方式,分析各自优缺点,并给出对应的 pom.xml 依赖。 二、依赖引入 在 pom.xml 中添加以下依赖: <dependencies><!-- Sprin…...
Hadoop•HDFS的Java API操作
听说这是目录哦 上传文件到HDFS🌈一、下载Windows版本的JDK和Hadoop二、配置物理机环境变量三、创建项目四 、添加依赖五、新建java类六、创建文件七、打开集群八、选中、运行 从HDFS下载文件🪐一、写代码二、HDFS要个文件三、物理机要个文件夹ÿ…...
电脑如何设置几分钟后自动关机
摘要:本文提供Windows、macOS和Linux系统设置定时自动关机的详细方法。 目录 一、Windows系统设置方法 设置定时关机 取消关机计划 二、macOS系统设置方法 设置定时关机取消关机计划 三、Linux系统设置方法 设置定时关机 取消关机计划 四、注意事项五、扩展&#x…...
固定公网 IP
固定公网 IP 是指为用户分配一个长期不变且可从互联网直接访问的 IP 地址,具有以下重要作用: 1. 搭建服务器 网站托管:可用于托管网站、博客或电子商务平台。 应用服务器:支持运行邮件服务器、游戏服务器、数据库等。 远程访问&…...
Linux安装go环境
安装一个lazydocker,根据文档需要先安装go环境 https://github.com/jesseduffield/lazydocker 官方文档解析 https://go.dev/doc/install 文档内容如下,一共三步 1.删除先前安装的go,解压下载的go压缩包到/usr/local目录 2.添加环境变量&…...
Git的基本使用
Git的基本使用 前言 :为什么使用GitGit基本操作1. 初始化2. Git分区3. 认识.git目录4. git基本操作 Git分支管理1. 基本操作2. Git分支设计规范 Git 标签管理1. Git标签的使用2. 标签使用规范3. Git标签与分支的区别 分离头指针问题1. 分离头指针问题的风险2. 分离头…...
鸿蒙Flutter开发故事:不,你不需要鸿蒙化
在华为牵头下,Flutter 鸿蒙化如火如荼进行,当第一次看到一份上百个插件的Excel 列表时,我也感到震惊,排名前 100 的插件赫然在列,这无疑是一次大规模的军团作战。 然后,参战团队鱼龙混杂,难免有…...
Mysql:关于命名
1. 命名的对象:库名、表名、列名、索引名 2. 用反引号包裹的情况下,命名时不允许使用空白字符、反引号,其它字符均可 3. 无反引号包裹的情况下,命名时仅允许使用:$、_、数字、大小写字母、中文字符(已知win系统支持)…...
JAVA————十五万字汇总
JAVA语言概述 JAVA语句结构 JAVA面向对象程序设计(一) JAVA面向对象程序设计(二) JAVA面向对象程序设计(三)工具类的实现 JAVA面向对象程序设计(四)录入异常处理 JAVA图形用户界面设…...
Chrome-Edge-IDEA-Win 常用插件-工具包
Chrome-Edge-IDEA-Win 常用插件-工具包 Chrome-Edge-IDEA-Win 常用插件-工具包谷歌插件chropathJSONViewOctotree - GitHub code treeXPath Helper书签侧边栏篡改猴Print Edit WEEdge浏览器插件IDEA插件CodeGlance Pro 代码迷你缩放图插件Alibaba Cloud ToolkitAlibaba Java Co…...
DeepSeek-R1论文深度解析:纯强化学习如何引爆LLM推理革命?
技术突破:从“无监督”到“自主进化”的跨越 paper :https://arxiv.org/pdf/2501.12948目录 技术突破:从“无监督”到“自主进化”的跨越1 DeepSeek-R1-Zero: RLnoSFT1.1 R1-Zero: GRPO(Group Relative Po…...
最新!Ubuntu Docker 安装教程
源自: AINLPer(每日干货分享!!) 编辑: ShuYini 校稿: ShuYini 时间: 2025-3-1 更多:>>>>大模型/AIGC、学术前沿的知识分享! 看到很多部署大模型的时候,都是基于docker安装部署的。…...
【Javascrip】Javascript练习01 REST API using Express.js.
针对该问题的项目路径 要求部分 what you need to doReview the tasks provided in the section below.Obtain the boilerplate code.Use your local development environment to implement a solution.Upload your solution for marking via Gradescope. There is no attempt…...
visual studion 2022如何使用PlaySound()
书籍:《windows程序设计(第五版)》的开始 环境:visual studio 2022 内容:HELLOWIN程序 说明:以下内容大部分来自腾讯元宝。 在Visual Studio 2022中使用PlaySound()函数播放音频,需完成以下步骤: 1. 配…...