【论文阅读】A Survey on Multimodal Large Language Models
目录
- 前言
- 一、 背景与核心概念
- 1-1、多模态大语言模型(MLLMs)的定义
- 二、MLLMs的架构设计
- 2-1、三大核心模块
- 2-2、架构优化趋势
- 三、训练策略与数据
- 3-1、 三阶段训练流程
- 四、 评估方法
- 4-1、 闭集评估(Closed-set)
- 4-2、开集评估(Open-set)
- 4-3、多模态幻觉评估
- 4-4、 多模态综合能力评估
- 五、扩展方向与技术
- 5-1、模态支持扩展
- 5-2、 交互粒度扩展
- 5-3、语言与文化扩展
- 5-4、 垂直领域扩展
- 5-5、效率优化扩展
- 5-6、 新兴技术融合
- 总结
前言
这篇综述系统梳理了多模态模型的技术栈,从基础架构到前沿应用,并指出当前瓶颈(如幻觉、长上下文)和解决思路。其核心价值在于(1)方法论:三阶段训练(预训练→指令微调→对齐)成为主流范式。(2)开源生态:LLaVA、MiniGPT-4等开源模型推动社区发展。(3)跨学科应用:在医疗、机器人等领域的渗透展示通用潜力。一、 背景与核心概念
1-1、多模态大语言模型(MLLMs)的定义
核心思想:以强大的大语言模型(如GPT-4、LLaMA)为“大脑”,通过模态接口(如视觉编码器)将图像、音频、视频等非文本模态与文本模态对齐,实现跨模态理解和生成。
与传统多模态模型的区别:
- 规模:MLLMs基于百亿参数规模的LLMs,而传统模型(如CLIP、OFA)参数更小。
- 能力:MLLMs展现涌现能力(如复杂推理、指令跟随),传统模型多为单任务专用。
多模态模型发展线如下所示:
二、MLLMs的架构设计
2-1、三大核心模块
1、模态编码器(Modality Encoder)(眼睛/耳朵)
功能:将原始数据(如图像、音频、视屏等)转换为特征表示,使其能够与文本模态对其。(例如图像、音视频编码器)
常用模型:
-
图像:CLIP-ViT、EVA-CLIP(更高分辨率支持)、ConvNeXt(卷积架构)。
-
音频:CLAP、ImageBind(支持多模态统一编码)。
关键发现:输入分辨率对性能影响显著(如448x448比224x224更优)。即更高的分辨率可以获得更加显著的性能。
如图所示为常用的图像编码器:
2、大语言模型(LLM)(大脑)
功能: 作为MLLM的“大脑”,负责整合多模态信息,执行推理,生成文本输出。
-
选择:开源模型(LLaMA-2、Vicuna)或双语模型(Qwen)。
-
参数规模的影响:从13B→34B参数提升,中文零样本能力涌现(即使训练数据仅为英文)。
-
知识注入:领域适配,例如数据微调,或者工具调用,即通过指令微调教会LLM调用外部API。
如图所示为常用公开的大语言模型:
3、模态接口(Modality Interface):用于对齐不同的模态
可学习接口:
-
Token级融合:如BLIP-2的Q-Former,将视觉特征压缩为少量Token。
-
特征级融合:如CogVLM在LLM每层插入视觉专家模块。
**专家模型:**调用现成模型(如OCR工具)将图像转为文本,再输入LLM(灵活性差但无需训练)。
如图所示为典型多模态模型架构示意图:
4、模块协同工作示例(以LLaVA为例)
- 图像编码:CLIP-ViT将图像编码为视觉特征。
- 特征对齐:通过两层MLP将视觉特征投影到LLaMA的文本嵌入空间。
- 指令微调:联合训练视觉-文本特征,使LLaMA能理解“描述图像中第三只猫的颜色”。
- 推理生成:LLaMA基于对齐特征生成自然语言响应。
2-2、架构优化趋势
高分辨率支持:通过分块(Monkey)、双编码器(CogAgent)处理高分辨率图像。
稀疏化:混合专家(MoE)架构(如MoE-LLaVA)在保持计算成本的同时增加参数量。
三、训练策略与数据
3-1、 三阶段训练流程
1、预训练(Pretraining)
目标:将不同模态(如图像、音频)的特征映射到统一的语义空间,通过大规模数据吸收通用知识(如物体识别、基本推理)。
数据:大规模粗粒度图文对(如LAION-5B)或高质量细粒度数据(如GPT-4V生成的ShareGPT4V)。计算图文相似度,移除相似度太低的样本。
关键技巧:冻结编码器和LLM,仅训练接口(防止灾难性遗忘)。
如图所示为预训练所用的通用数据集:
2、指令微调(Instruction Tuning)
目标:使模型能够理解和执行多样化的用户指令(如“描述图像中的情感”),指令调优学习如何泛化到不可见的任务。
数据构建方法:
- 任务适配:将VQA数据集转为指令格式(如“Question: <问题> Answer: <答案>”)。
- 自指令生成:用GPT-4生成多轮对话数据(如LLaVA-Instruct)。
发现:
- 指令多样性(设计不同句式(疑问句、命令句)和任务类型(描述、推理、创作))比数据量更重要。
- 数据质量比数量更重要。
- 包含推理步骤的指令,可以显著提升模型的性能。
如图所示描述任务的指令(相关范例):
3、对齐微调(Alignment Tuning)
目标:减少幻觉(确保生成内容与输入模态一致(如不虚构图中未出现的物体)),使输出更符合人类偏好。(简介、安全,符合伦理)
方法:
- RLHF:通过人类偏好数据训练奖励模型,再用PPO优化策略(如LLaVA-RLHF)。
- DPO:直接优化偏好对(无需显式奖励模型)。
如图所示为三种典型学习范式的比较:
四、 评估方法
4-1、 闭集评估(Closed-set)
定义:在预定义任务和答案范围内测试模型性能,适用于标准化任务(如分类、问答)。
核心指标:
- 准确率(Accuracy):直接匹配模型输出与标准答案(如ScienceQA数据集)。
- CIDEr(Consensus-based Image Description Evaluation):衡量生成文本与参考描述的语义相似性(常用于图像描述任务)。
- BLEU-4:基于词重叠的机器翻译指标,适用于短文本生成(如VQA简短回答)。
4-2、开集评估(Open-set)
定义:评估模型在开放场景下的生成能力(如自由对话、创造性任务),答案不固定。
核心方法:
人工评分(Human Rating):
- 评分维度:相关性、事实性、连贯性、多样性、安全性。
- 流程:标注员按1-5分对模型输出打分(如LLaVA的对话能力评估)。
GPT-4评分(GPT-as-a-Judge):
- 方法:用GPT-4对模型输出评分(示例提示):
Instruction: 请根据相关性(1-5分)和准确性(1-5分)评价以下回答:
问题:<问题>
模型回答:<回答>
- 优点:低成本、可扩展;缺点:依赖GPT-4的偏见和文本理解能力。
4-3、多模态幻觉评估
定义:检测模型生成内容与输入模态不一致的问题(如虚构图中未出现的对象)。
评估方法:
POPE(Polling-based Object Probing Evaluation):
- 流程:生成多项选择题(如“图中是否有狗?”),统计模型回答的准确率。
- 指标:准确率、假阳性率(FP)。
CHAIR(Caption Hallucination Assessment with Image Relevance):
步骤:
- 提取生成描述中的所有名词(如“猫、桌子”)。
- 检测这些名词是否在图像中存在(通过目标检测模型)。
指标:幻觉率(错误名词占比)。
FaithScore:
方法:将生成文本拆分为原子事实(如“猫是黑色的”),用视觉模型验证每个事实是否成立。
指标:原子事实准确率。
4-4、 多模态综合能力评估
(1) 多维度基准测试
1、MME(Multimodal Evaluation Benchmark):
涵盖能力:感知(物体计数、颜色识别)、认知(推理、常识)。
任务示例:
- 感知任务:“图中红色物体的数量?”
- 认知任务:“如果移除支撑杆,积木会倒塌吗?为什么?”
指标:综合得分(感知分 + 认知分)。
2、MMBench:
特点:覆盖20+任务类型(如OCR、时序推理),使用ChatGPT将开放答案匹配到预定义选项。
指标:准确率(标准化为0-100分)。
五、扩展方向与技术
多模态大语言模型的扩展方向主要集中在提升功能多样性、支持更复杂场景、优化技术效率以及拓展垂直领域应用。以下是具体分类与技术细节
5-1、模态支持扩展
一、 输入模态扩展
1、3D点云(Point Cloud)
技术:将3D数据(如LiDAR扫描)编码为稀疏或密集特征。
案例:
- PointLLM:通过投影网络将点云特征对齐到LLM的文本空间,支持问答(如“房间中有多少把椅子?”)。
- 3D-LLM:结合视觉和3D编码器,实现跨模态推理(如分析物体空间关系)。
挑战:3D数据的高维稀疏性、计算开销大。
2、传感器融合(Sensor Fusion)
技术:整合多种传感器数据(如热成像、IMU惯性测量)。
案例:
- ImageBind-LLM:支持图像、音频、深度、热成像等多模态输入,通过统一编码器对齐特征。
应用:自动驾驶(融合摄像头、雷达、激光雷达数据)。
二、输出模态扩展
1、多模态生成:
技术:结合扩散模型(如Stable Diffusion)生成图像、音频或视频。
案例:
- NExT-GPT:输入文本生成图像+音频,或输入视频生成文本描述+配乐。
- Emu:通过视觉解码器生成高分辨率图像,支持多轮编辑(如“将图中的猫换成狗”)。
指标:生成质量(FID、CLIP Score)、跨模态一致性。
5-2、 交互粒度扩展
一、细粒度输入控制
1、区域指定(Region-specific):
技术:支持用户通过框选(Bounding Box)、点击(Point)指定图像区域。
案例:
- Ferret:接受点、框或草图输入,回答与指定区域相关的问题(如“这个红框内的物体是什么?”)。
- Shikra:输出回答时自动关联图像坐标(如“左侧的狗(坐标[20,50,100,200]在奔跑”)。
2、像素级理解(Pixel-level):
技术:结合分割模型(如Segment Anything)实现掩码级交互。
案例:
- LISA:通过文本指令生成物体掩码(如“分割出所有玻璃杯”)。
二、多轮动态交互
历史记忆增强:
技术:在对话中维护跨模态上下文缓存(如缓存前几轮的图像特征)。
案例:
- Video-ChatGPT:支持多轮视频问答(如“第三秒出现的车辆是什么品牌?”)。
5-3、语言与文化扩展
一、多语言支持
低资源语言适配:
技术:通过翻译增强(Translate-Train)或跨语言迁移学习。
案例:
- VisCPM:基于中英双语LLM,用英文多模态数据训练,通过少量中文数据微调实现中文支持。
挑战:缺乏非拉丁语系的图文对齐数据(如阿拉伯语、印地语)。
二、文化适应性
本地化内容生成:
技术:在指令数据中注入文化特定元素(如节日、习俗)。
案例:
- Qwen-VL:支持生成符合中文文化背景的描述(如“端午节龙舟赛”)。
5-4、 垂直领域扩展
一、医疗领域
技术:领域知识注入(如医学文献微调)、数据增强(合成病理图像)。
案例:
- LLaVA-Med:支持胸部X光诊断问答(如“是否存在肺炎迹象?”),准确率超放射科住院医师平均水平。
挑战:数据隐私、伦理审查。
二、自动驾驶
技术:多传感器融合、实时性优化(如模型轻量化)。
案例:
- DriveLLM:结合高精地图和摄像头数据,回答复杂驾驶场景问题(如“能否在此路口变道?”)。
三、工业检测
技术:高分辨率缺陷检测、小样本学习。
案例:
- Industrial-VLM:通过文字提示定位产品缺陷(如“检测电路板上的虚焊点”)。
5-5、效率优化扩展
一、轻量化部署
技术:
- 模型压缩:量化(INT8)、知识蒸馏(如TinyLLaVA)。
- 硬件适配:针对移动端(如NPU)优化计算图。
案例:
- MobileVLM:1.4B参数模型可在手机端实时运行,支持图像描述和简单问答。
二、混合专家(MoE)架构
技术:稀疏激活,仅调用部分专家模块处理输入。
案例:
- MoE-LLaVA:在视觉问答任务中,MoE架构比同参数规模模型准确率提升5%-10%。
5-6、 新兴技术融合
一、具身智能(Embodied AI)
技术:将MLLMs与机器人控制结合,实现“感知-推理-行动”闭环。
案例:
- PALM-E:通过视觉-语言模型控制机械臂完成复杂操作(如“把红色积木放在蓝色盒子旁边”)。
二、增强现实(AR)
技术:实时多模态交互(如语音+手势+视觉)。
案例:
- AR-LLM:在AR眼镜中叠加MLLM生成的实时导航提示(如“前方路口右转”)。
参考文章:
多模态模型综述文章
Github地址
注意: 原文内容较多,本文仅限部分内容笔记,建议直接阅读原文。
总结
好困,真的好困。🐑
相关文章:
【论文阅读】A Survey on Multimodal Large Language Models
目录 前言一、 背景与核心概念1-1、多模态大语言模型(MLLMs)的定义 二、MLLMs的架构设计2-1、三大核心模块2-2、架构优化趋势 三、训练策略与数据3-1、 三阶段训练流程 四、 评估方法4-1、 闭集评估(Closed-set)4-2、开集评估&…...
大型语言模型中的QKV与多头注意力机制解析
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
React Flow 节点事件处理实战:鼠标 / 键盘事件全解析(含节点交互代码示例)
本文为《React Agent:从零开始构建 AI 智能体》专栏系列文章。 专栏地址:https://blog.csdn.net/suiyingy/category_12933485.html。项目地址:https://gitee.com/fgai/react-agent(含完整代码示例与实战源)。完整介绍…...
AIGC在电商行业的应用:革新零售体验
AIGC在电商行业的应用:革新零售体验 引言 人工智能生成内容(AIGC)正在深刻改变电商行业的格局。从个性化推荐到智能客服,从产品描述生成到虚拟试衣,AIGC技术正在为电商平台带来前所未有的创新和效率提升。本文将深入探…...
【数据结构】线性表--队列
【数据结构】线性表--队列 一.什么是队列二.队列的实现1.队列结构定义:2.队列初始化函数:3.队列销毁函数:4.入队列函数(尾插):5.出队列函数(头删):6.取队头元素ÿ…...
CSS- 4.1 浮动(Float)
本系列可作为前端学习系列的笔记,代码的运行环境是在HBuilder中,小编会将代码复制下来,大家复制下来就可以练习了,方便大家学习。 HTML系列文章 已经收录在前端专栏,有需要的宝宝们可以点击前端专栏查看! 点…...
Node.js 源码架构详解
Node.js 的源码是一个庞大且复杂的项目,它主要由 C 和 JavaScript 构成。要完全理解每一部分需要大量的时间和精力。我会给你一个高层次的概述,并指出一些关键的目录和组件,帮助你开始探索。 Node.js 的核心架构 Node.js 的核心可以概括为以…...
OpenCV级联分类器
概念 OpenCV 级联分类器是一种基于 Haar 特征、AdaBoost 算法和级联结构的目标检测方法,通过多阶段筛选快速排除非目标区域,实现高效实时检测(如人脸、行人等)。 加载级联分类器 // 加载级联分类器CascadeClassifier cascade;// …...
远程主机状态监控-GPU服务器状态监控-深度学习服务器状态监控
远程主机状态监控-GPU服务器状态监控-深度学习服务器状态监控 ⭐️ 推荐文章: DockerPyCharm远程调试&环境隔离解决方案 1. 整体架构 在本监控系统中,我们采用了Prometheus作为核心监控解决方案,并结合Node Exporter和Grafana构建了一个完整的监控体…...
谈谈未来iOS越狱或巨魔是否会消失
2024年10月的预测,先说结论: 巨魔iOS17.1消失概率为99%。 因为巨魔强依赖的漏洞就是一个签名漏洞,攻击面有限又经过2轮修复,第3次出现漏洞的概率极低。而越狱的话由于系统组件和服务较多,所以出现漏洞概率高攻击面多&…...
【OpenGL学习】(二)OpenGL渲染简单图形
文章目录 【OpenGL学习】(二)OpenGL渲染简单图形OpenGL渲染图形流程顶点,图元和片元VAO,VBO ,EBO着色器示例:使用OpenGL渲染三角形 【OpenGL学习】(二)OpenGL渲染简单图形 OpenGL渲…...
学习深度学习是否要先学习机器学习?
有小伙伴问我,最近做毕设要做一个神经网络的课题,想请教一下需不需要把机器学习也都学习一遍? 永远正确的回答是:建议先学机器学习,再学深度学习。 上面那句你从哪都挑不出毛病,毕竟机器学习是深度学习的基…...
六、绘制图片
文章目录 1.创建一个红色图片2.加载bmp图片3.加载png、jpg图片 前面的几个示例,我们已经展示过如果在Linux系统下使用xlib接口向窗口中绘制文本、线、矩形;并设置文本、线条的颜色。并利用xlib提供的接口结合事件处理机制完成了一个自绘按钮控件功能。有…...
【OpenCV】基本数据类型及常见图像模式
是什么?能做什么?解决什么问题?为什么用它? OpenCV:是一个基于开源发行的跨平台计算机视觉库,实现 一、应用场景: 目标识别:人脸、车辆、车牌...自动驾驶医学影像分析视频内容理解与分析&…...
C# WPF .NET Core和.NET5之后引用System.Windows.Forms的解决方案
双击项目名称打开工程文件(.csporj)添加“Microsoft.WindowsDesktop.App.WindowsForms”引用; <Project Sdk"Microsoft.NET.Sdk"><PropertyGroup><OutputType>WinExe</OutputType><TargetFramework&g…...
Mysql 8.0.32 union all 创建视图后中文模糊查询失效
记录问题,最近在使用union all聚合了三张表的数据,创建视图作为查询主表,发现字段值为中文的筛选无法生效.......... sql示例: CREATE OR REPLACE VIEW test_view AS SELECTid,name,location_address AS address,type,"1" AS data_type,COALESCE ( update_time, cr…...
PYTHON训练营DAY28
类 (一)题目1:定义圆(Circle)类 要求: 包含属性:半径 radius。包含方法: calculate_area():计算圆的面积(公式:πr)。calculate_circ…...
pytorch小记(二十一):PyTorch 中的 torch.randn 全面指南
pytorch小记(二十一):PyTorch 中的 torch.randn 全面指南 PyTorch 中的 torch.randn 全面指南一、接口定义二、参数详解三、常见使用场景四、位置参数 vs. Tuple 传参 —— 数值示例五、必须用关键字传入小结 PyTorch 中的 torch.randn 全面指…...
LeetCode 第 45 题“跳跃游戏 II”
好的,我来帮你解释一下 LeetCode 第 45 题“跳跃游戏 II”,这是一道经典的贪心算法题目。 题目描述: 给你一个非负整数数组 nums,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用…...
【leetcode】逐层探索:BFS求解最短路的原理与实践
前言 🌟🌟本期讲解关于力扣的几篇题解的详细介绍~~~ 🌈感兴趣的小伙伴看一看小编主页:GGBondlctrl-CSDN博客 🔥 你的点赞就是小编不断更新的最大动力 🎆那么废话不…...
副业小程序YUERGS,从开发到变现
文章目录 我为什么写这个小程序网站转小程序有什么坑有什么推广渠道个人开发者如何变现简单介绍YUERGS小程序给独立开发者一点小建议 我为什么写这个小程序 关注我的粉丝应该知道,我在硕士阶段就已经掌握了小程序开发技能,并写了一个名为“约球online”…...
Vue-键盘事件
键盘事件 回车事件 回车输出Input控件输入的内容 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>键盘事件</title><!-- 引入Vue --><script type"text/javascript&quo…...
区块链可投会议CCF C--IPCCC 2025 截止6.7 附录用率
Conference:44th IEEE -- International Performance Computing and Communications Conference CCF level:CCF C Categories:计算机网络 Year:2025 Conference time:Nov 21 – 23, 2025 Austin, Texas, USA 录用率…...
Linux `mkdir` 命令深度解析与高阶应用指南
Linux `mkdir` 命令深度解析与高阶应用指南 一、核心功能解析1. 基本作用2. 与类似工具对比二、选项系统详解1. 常用基础选项2. 高级选项组合三、高阶应用场景1. 自动化部署系统2. 安全审计合规3. 容器环境初始化4. 多用户协作体系四、特殊文件处理1. 符号链接处理2. 挂载点管理…...
JVM 调优实战入门:从 GC 日志分析到参数调优
手把手教你理解 GC 日志、识别性能瓶颈并合理配置 JVM 参数! 你是否曾遇到线上系统莫名卡顿、内存暴涨甚至频繁 Full GC? 本篇文章将带你从实际 GC 日志出发,深入剖析 JVM 性能问题,并学会如何通过参数调优提升系统稳定性和吞吐能…...
论文解读:ICLR2025 | D-FINE
[2410.13842] D-FINE: Redefine Regression Task in DETRs as Fine-grained Distribution Refinement D-FINE 是一款功能强大的实时物体检测器,它将 DETRs 中的边界框回归任务重新定义为细粒度分布细化(FDR),并引入了全局最优定位…...
Kafka 生产者工作流程详解
以下是 Kafka 生产者工作流程的清晰分步解释,结合关键机制与用户数据: 1. 生产者初始化与数据发送 主线程创建生产者对象,调用 send(ProducerRecord) 发送消息。 拦截器(可选):可添加自定义逻辑(…...
leetcode 239. 滑动窗口最大值
暴力解法是一种简单直接的方法,虽然效率较低,但可以帮助你更好地理解问题的逻辑。以下是使用暴力解法解决“滑动窗口最大值”问题的 C 实现。 暴力解法的思路 遍历每个滑动窗口: 使用一个外层循环,从数组的起始位置开始ÿ…...
第3章 自动化测试:从单元测试到硬件在环(HIL)
在前两章中,我们已完成从环境搭建到流水线编译的自动化配置。为了真正保障软件质量、降低回归风险,本章将聚焦测试自动化,涵盖从最基础的单元测试,到集成测试,再到硬件在环(Hardware-in-the-Loop, HIL)测试的全流程。通过脚本驱动、测试报告可视化和与 CI 平台深度集成,…...
flutter 配置 安卓、Ios启动图
android 配置启动图 launch_background.xml <?xml version"1.0" encoding"utf-8"?> <!-- Modify this file to customize your launch splash screen --> <layer-list xmlns:android"http://schemas.android.com/apk/res/android&…...
实验八 基于Python的数字图像问题处理
一、实验目的 培养利用图像处理技术解决实际问题的能力。 培养利用图像处理技术综合设计实现的能力。 掌握在Python环境下解决实际问题的能力。 熟练掌握使用cv2库对图像进行处理 熟练掌握使用区域生长法提取图片中感兴趣的区域 二、实验内容 本次实验内容为…...
Dockerfile学习指南
目录 一、Dockerfile 本质与价值 二、基础语法结构 1. 指令格式 2. 核心指令详解 三、构建流程解析 1. 典型构建过程 2. 分层构建原理 四、高级特性 1. 多阶段构建 2. 环境变量管理 3. 健康检查 五、最佳实践指南 1. 优化建议 2. 安全实践 六、典型应用场景 1. …...
数据库原理及其应用 第六次作业
题目 参考答案 题目1. 教材P148第1题 问题:什么是数据库的安全性? 答案:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏 。它通过用户身份鉴别、存取控制(包括自主存取控制和强制存取控制&#x…...
c/c++的opencv的轮廓匹配初识
OpenCV 轮廓匹配:形状识别与比较 📐✨ 轮廓匹配是计算机视觉中一个重要的技术,它允许我们比较两个形状的相似度。OpenCV 提供了强大的函数来实现这一功能,核心是 cv::matchShapes()。本文将引导你了解轮廓匹配的基本原理、OpenCV…...
Oracle APEX IR报表下载CSV文件的方法
目录 0. 准备工作 1. 下载--自定义SQL 2. 下载--检索结果 0. 准备工作 -- 建表 CREATE TABLE T_DL_EMP(EMPNO NUMBER(4) NOT NULL -- 雇员编号,由四个数字组成。, ENAME VARCHAR2(10) -- 雇员姓名,由10个字符组成。, JOB …...
JVM 双亲委派机制
一、从 JDK 到 JVM:Java 运行环境的基石 在 Java 开发领域,JDK(Java Development Kit)是开发者的核心工具包。它不仅包含了编译 Java 代码的工具(如 javac),还内置了 JRE(Java Run…...
shell脚本之条件判断,循环控制,exit详解
if条件语句的语法及案例 一、基本语法结构 1. 单条件判断 if [ 条件 ]; then命令1命令2... fi2. 双分支(if-else) if [ 条件 ]; then条件为真时执行的命令 else条件为假时执行的命令 fi3. 多分支(if-elif-else) if [ 条件1 ]…...
什么是私有IP地址?如何判断是不是私有ip地址
在互联网的世界中,IP地址是设备之间通信的基础标识。无论是浏览网页、发送邮件还是在线游戏,IP地址都扮演着至关重要的角色。然而,并非所有的IP地址都是公开的,有些IP地址被保留用于内部网络,这就是我们所说的私有IP地…...
BGP路由策略 基础实验
要求: 1.使用Preva1策略,确保R4通过R2到达192.168.10.0/24 2.用AS_Path策略,确保R4通过R3到达192.168.11.0/24 3.配置MED策略,确保R4通过R3到达192.168.12.0/24 4.使用Local Preference策略,确保R1通过R2到达192.168.1.0/24 …...
Java 原生网络编程(BIO | NIO | Reactor 模式)
1、基本常识 Socket 是应用层与 TCP/IP 协议族通信的中间软件抽象层,是一组接口,使用了门面模式对应用层隐藏了传输层以下的实现细节。TCP 用主机的 IP 地址加上主机端口号作为 TCP 连接的端点,该端点叫做套接字 Socket。 比如三次握手&…...
大语言模型 11 - 从0开始训练GPT 0.25B参数量 MiniMind2 准备数据与训练模型 DPO直接偏好优化
写在前面 GPT(Generative Pre-trained Transformer)是目前最广泛应用的大语言模型架构之一,其强大的自然语言理解与生成能力背后,是一个庞大而精细的训练流程。本文将从宏观到微观,系统讲解GPT的训练过程,…...
【Java ee初阶】HTTP(4)
构造HTTP请求 1)开发中,前后端交互。浏览器运行的网页中,构造出HTTP请求 2)调试阶段,通过构造HTTP请求测试服务器 朴素的方案: 通过tcp socket 的方式构造HTTP请求 按照HTTP请求格式,往TCP…...
永久免费!专为 Apache Doris 打造的可视化数据管理工具 SelectDB Studio V1.1.0 重磅发布!
作为全球领先的开源实时数据仓库, Apache Doris Github Stars 已超过 13.6k,并在 5000 余家中大型企业生产环境得到广泛应用,支撑业务核心场景,成为众多企业数据分析基础设施不可或缺的重要基座。过去,Apache Doris 用…...
React中useDeferredValue与useTransition终极对比。
文章目录 前言一、核心差异对比二、代码示例对比1. useDeferredValue:延迟搜索结果更新2. useTransition:延迟路由切换 三、应用场景总结四、注意事项五、原理剖析1. 核心机制对比2. 关键差异3. 代码实现原理 总结 前言 在React的并发模式下,…...
Git 项目切换到新的远程仓库地址
已存在的 Git 项目切换到新的远程仓库地址,比如你要换成: gitgithub.com:baoing/test-app.git步骤如下: 查看当前的远程仓库地址(可选) git remote -v你会看到类似: origin gitgithub.com:old-user/old…...
科技晚报 AI 速递:今日科技热点一览 丨 2025 年 5 月 17 日
科技晚报AI速递:今日科技热点一览 丨2025年5月17日 我们为您汇总今日的科技领域最新动向,带您快速了解前沿技术、突破性研究及行业趋势。 黄仁勋劝特朗普:AI 芯片出口规则得改,中国紧追其后:英伟达 CEO 黄仁勋在华盛顿 “山与谷论…...
基于OpenCV的SIFT特征和FLANN匹配器的指纹认证
文章目录 引言一、概述二、代码解析1. 图像显示函数2. 核心认证函数3. 匹配点筛选4. 认证判断 三、主程序四、技术要点五、总结 引言 在计算机视觉领域,图像特征匹配是一个非常重要的技术,广泛应用于物体识别、图像拼接、运动跟踪等场景。今天将介绍一个…...
【Linux】共享内存
🌻个人主页:路飞雪吖~ 🌠专栏:Linux 目录 ☃️共享内存 🪄 shmget函数 用来创建共享内存 ✨共享内存的管理指令: 🌠 shmid VS key ✨共享内存函数 🍔 shmget() 创建共享内存 &a…...
Cookie、Session、Token
Cookie 1. 什么是cookie? Cookie 是一种由服务器发送到客户端浏览器的小数据片段,用于存储用户的状态信息。例如,用户登录状态或用户偏好设置可以通过Cookie进行管理。计算机cookie更正式地称为 HTTP cookie、网络 cookie、互联网 cookie 或浏览器 coo…...
设计模式Java
UML类图 概述 类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。类图不显示暂时性的信息。类图是面向对象建模的主要组成部分。 类图的作用 在软件工程中,类图是一种静态的结构图,…...