论文笔记——QWen2.5 VL
目录
- 引言
- 架构创新
- 数据整理与训练策略
- 性能与基准测试
- 精细感知能力
- 应用与现实世界影响
- 与现有模型比较
- 结论
引言
视觉理解和自然语言处理的集成一直是人工智能研究的一个重要焦点,促成了日益复杂的视觉语言模型 (VLMs) 的发展。由阿里巴巴集团 Qwen 团队开发的 Qwen2.5-VL 代表了该领域的重大进步,尤其侧重于增强精细感知能力。
图 1:Qwen2.5-VL 架构,展示了视觉编码器与 Qwen2.5 LM 解码器的集成,突出了原生分辨率输入处理和视频的动态 FPS 采样。
虽然最近的多模态大型语言模型在各种任务中都表现出了令人印象深刻的能力,但它们在卓越性能方面通常表现不足,尤其是在需要详细视觉理解和复杂推理的领域。Qwen2.5-VL 通过专注于研究人员认为的强大视觉语言模型的“基础层”来解决这些限制:精细感知。
该模型建立在 Qwen 系列前辈的优势之上,同时引入了重大的架构改进和训练方法。作为对 AI 社区的开源贡献,Qwen2.5-VL 不仅旨在推进视觉语言理解的最新技术水平,而且还为从事实际应用的的研究人员和开发人员提供宝贵的资源。
架构创新
Qwen2.5-VL 引入了几项关键的架构创新,使其与之前的模型区分开来,并使其能够增强功能:
重新设计的视觉转换器 (ViT)
Qwen2.5-VL 中的视觉编码器采用了一种完全重新设计的视觉转换器,具有以下几个重要的修改:
-
窗口注意力机制:在大多数层中实现,以降低计算复杂性并实现随图像块数量线性缩放。这种方法允许模型更有效地处理高分辨率图像。
-
2D 旋转位置嵌入 (RoPE):与传统的位置嵌入不同,2D RoPE 捕获二维空间中的空间关系,从而增强了模型对视觉布局和空间排列的理解。
-
归一化和激活:该模型采用 RMSNorm 进行归一化,采用 SwiGLU 作为激活函数,从而提高了计算效率和与底层语言模型的兼容性。
2D RoPE 的数学公式可以表示为:
(cos(mθi,j)−sin(mθi,j)sin(mθi,j)cos(mθi,j))(qmqm+d/2)(cos(mθi,j)sin(mθi,j)−sin(mθi,j)cos(mθi,j))(qmqm+d/2)
其中 (i,j)(i,j) 表示图块的二维位置,θi,jθi,j 是对应的角频率。
原生动态分辨率处理
Qwen2.5-VL 最重要的创新之一是它能够处理不同尺寸的图像和具有可变帧率的视频,而无需依赖传统的归一化技术。这是通过以下方式实现的:
- 以其原生分辨率直接处理图像
- 基于输入尺寸的动态窗口分区
- 绝对时间编码,将时间 ID 与视频处理的时间戳对齐
对于视频处理,该模型实现了一种动态帧率采样方法,其中:
# 动态FPS采样伪代码
def sample_frames(video, target_fps=None):if target_fps is None:# 基于视频内容的自适应采样target_fps = determine_optimal_fps(video)timestamps = np.arange(0, video.duration, 1/target_fps)sampled_frames = [video.get_frame(t) for t in timestamps]return sampled_frames, timestamps
跨模态整合
视觉和语言组件通过一个基于MLP的视觉-语言融合器连接,该融合器有效地将视觉特征投影到语言模型的嵌入空间中。这种方法在保持两种模态完整性的同时,实现了无缝集成。
数据整理和训练策略
Qwen2.5-VL成功的根本在于其细致的数据整理和全面的训练方法:
数据规模和多样性
预训练语料库从1.2万亿扩展到惊人的4.1万亿tokens,包括:
- 交错的图像-文本数据: 经过仔细评分和清理,以确保质量
- 定位数据: 包括用于空间推理的绝对位置坐标
- 文档数据: 结构化的HTML格式,用于文档理解
- OCR数据: 来自不同来源和语言,以增强图像中的文本识别
- 视频数据: 具有动态FPS采样和详细字幕
- Agent数据: 带有UI元素注释的屏幕截图,用于交互式应用程序
多阶段训练方案
训练过程遵循一个复杂的三阶段方法:
- 第一阶段: 专注于使用图像-文本配对数据的基本视觉理解
- 第二阶段: 引入更复杂的数据类型和任务,包括文档理解
- 第三阶段: 集成用于定位、Agent能力和视频理解的专门数据
为了优化计算效率,数据样本根据其相应的输入序列长度进行打包,以确保训练期间一致的计算负载。
训练后对齐
在主要训练阶段之后,Qwen2.5-VL 经历了:
- 监督式微调 (SFT):以增强指令遵循能力
- 直接偏好优化 (DPO):使模型与人类偏好和期望保持一致
这种全面的训练策略使 Qwen2.5-VL 能够在各种任务中实现卓越的性能,同时保持连贯且上下文相关的响应。
性能和基准
Qwen2.5-VL 在各种基准测试中表现出卓越的性能,使其成为视觉语言模型领域的领先竞争者:
图 2:基准比较显示了 Qwen2.5-VL-72B 在各种任务中与其他领先模型(包括 GPT-4o、Claude-3.5-Sonnet 和之前的 Qwen 模型)的性能比较。
学术和复杂推理任务
- MMMU 和 MMMU-Pro:该模型擅长大学水平的问题,表现出强大的推理能力。
- MathVista、MATH-Vision、MathVerse:在数学相关任务中表现出色,表明该模型能够处理和推理视觉环境中的数学概念。
通用视觉理解
- MegaBench:对各种视觉任务的综合评估
- MMBench 系列:在多语言视觉问答中表现出色
- MuirBench 和 BLINK:展示了强大的通用视觉理解能力
文档理解和 OCR
该模型在以下方面表现出特别强大的能力:
- AI2D:图表解释
- TextVQA 和 DocVQA:文档中的文本识别和理解
- InfoVQA、ChartQA、OCRBench:专门的文档分析任务
空间理解和定位
Qwen2.5-VL 在以下方面展现了令人印象深刻的空间推理能力:
- RefCOCO: 通过自然语言进行对象指代
- ODinW: 多样化语境下的对象检测
- PointGrounding: 精确的空间定位
- CountBench: 场景中对象的准确计数
视频理解
该模型在以下方面展示了强大的时间推理能力:
- Video-MME 和 Video-MMMU: 通用视频理解
- LVBench: 长视频理解
- Charades-STA: 动作识别和时间定位
细粒度感知能力
Qwen2.5-VL 的核心进步在于其细粒度感知能力,这是其在各种任务中表现的基础:
框和点定位
该模型可以精确地定位和识别图像中的特定区域或点,从而实现:
- 图像组件的详细分析
- 指代理解(“左边的红色物体”)
- 对空间关系进行视觉推理
文档结构理解
Qwen2.5-VL 可以理解复杂的文档结构,包括:
- 具有复杂布局的表格
- 包含数值数据的图表
- 具有各种字段和注释的表单
多层次视觉推理
该模型展示了以下能力:
- 提取低级视觉特征(颜色、形状、纹理)
- 识别中级模式和对象
- 对关系和含义进行高级推理
这种分层理解使 Qwen2.5-VL 能够处理复杂的视觉推理任务,这些任务需要详细的感知和抽象思维。
应用和实际影响
Qwen2.5-VL 增强的功能开启了众多实际应用:
文档处理和分析
该模型强大的 OCR 和文档理解能力使其适用于:
- 自动文档分类
- 从表单和发票中提取信息
- 合同分析和合规性检查
交互式代理和 UI 导航
凭借其在以下基准测试中展示的代理能力:
- ScreenSpot: UI 元素识别
- Android Control: 移动界面导航
- OSWorld: 操作系统交互
Qwen2.5-VL 可以为能够与用户界面交互的虚拟助手提供支持,从而可能彻底改变辅助功能工具和自动化系统。
教育应用
该模型在学术基准测试中的表现表明其在以下方面具有应用前景:
- 交互式辅导系统
- 视觉作业的自动评分
- 创建具有视觉解释的教育内容
内容分析和创作
Qwen2.5-VL 可以协助:
- 视觉内容审核
- 基于详细描述的图像和视频搜索
- 使用精确的视觉规格进行创意内容生成
与现有模型的比较
Qwen2.5-VL 在开源和闭源模型中都具有竞争优势:
对比闭源模型
旗舰版 Qwen2.5-VL-72B 模型在多个基准测试中实现了与顶级闭源模型(如 GPT-4o 和 Claude 3.5 Sonnet)相当甚至超越的性能。考虑到以下几点,这一点尤其令人印象深刻:
- 闭源模型通常具有更大的资源和专有优势
- Qwen2.5-VL 的透明方法和可复制方法
- 模型权重和代码完全可用于研究目的
对比以前的开源模型
与以前的版本(Qwen2-VL)和其他开源 VLM 相比,Qwen2.5-VL 表现出显着改进:
- 更强大的细粒度感知
- 更好地处理可变分辨率输入
- 增强了在文档理解和空间推理等专业任务中的性能
可扩展性优势
规模较小的 Qwen2.5-VL-7B 和 Qwen2.5-VL-3B 模型优于同类竞争对手,即使在资源受限的环境中也提供强大的功能。这种可扩展性使该技术可在各种部署场景中使用,从边缘设备到云基础设施。
结论
Qwen2.5-VL 代表了视觉语言模型的重大进步,其主要贡献在于增强了细粒度感知能力。通过重新设计视觉编码器架构、实施原生动态分辨率处理以及采用精细的数据管理和训练策略,该模型在各种基准测试中均取得了显著的性能。
该模型理解文档、定位视觉元素、处理视频以及作为交互式代理的能力,使其成为众多实际应用的多功能工具。它在保持开源理念的同时,与闭源模型相比具有竞争力的性能,这为先进人工智能能力的民主化做出了重大贡献。
随着视觉语言模型的不断发展,Qwen2.5-VL 为未来的发展奠定了重要的原则,特别是在强调细粒度感知作为强大的多模态理解的基础方面。该模型的成功表明,有针对性的架构改进,结合周到的数据管理和训练策略,可以显著提高人工智能能力。
通过解决现有模型中的关键限制并为视觉语言理解提供全面的解决方案,Qwen2.5-VL 为更复杂的 AI 系统铺平了道路,这些系统能够以空前的细节和准确性感知和推理视觉世界。
——————————————————————————————
Qwen VL2.5 与 InternVL3 的OCR能力对比
以下从技术实现、多语言支持、结构化输出等维度总结二者的核心差异:
一、OCR技术特性对比
特性 | Qwen VL2.5 | InternVL3 |
---|---|---|
动态分辨率支持 | 原生支持任意分辨率输入,无需分割图像块,保持图像信息完整性26 | 未明确提及动态分辨率设计,依赖传统预处理方法1 |
多语言OCR能力 | 支持任意方向、多语言文本识别(如中文、英文、日文等),文档理解能力突出36 | 通过原生多模态预训练提升整体文本性能,但未具体说明多语言覆盖范围18 |
结构化输出 | 支持发票、表格等结构化数据的高精度抽取与JSON格式输出,适配金融、商业场景36 | 未明确提及结构化输出能力,更侧重通用文本理解与幻觉抑制1 |
长文本解析 | 支持百万级Token长文档解析,精准还原版面格式(如PDF、表格)67 | 未提及长文本处理能力,主要聚焦多模态推理与工具交互1 |
二、性能表现差异
-
基准测试
- Qwen VL2.5:在OCRBenchV2评测中位列榜首,擅长图表解析与文档问答(如DocVQA)67。
- InternVL3:整体文本性能优于Qwen2.5系列,但在OCR专项评测中未公开具体排名1。
-
实际应用
- Qwen VL2.5:支持精准定位图像中的物体(如生成Bounding Boxes),适配安防、工业质检领域36。
- InternVL3:强调多模态联合推理能力,更适合复杂场景的图文混合任务(如GUI代理操作)1。
Qwen VL系列开源地址总结
以下是Qwen VL系列模型的官方开源仓库(截至2025年5月):
- Qwen2.5-VL系列(含3B/7B/72B):
- Hugging Face仓库:
https://huggingface.co/Qwen/Qwen2.5-VL
36 - ModelScope仓库:
https://modelscope.cn/organization/qwen
46
- Hugging Face仓库:
- 部署工具支持:
- 本地部署推荐使用
transformers
库(需安装开发测试版)4,或通过vLLM
、Ollama
框架加速推理8。
- 本地部署推荐使用
总结:Qwen VL2.5在动态分辨率适配、多语言OCR、结构化数据抽取等场景表现更优,而InternVL3在整体文本理解与多模态联合推理上更具优势16。开发者可根据任务需求选择模型:
- 优先Qwen VL2.5:需高精度文档解析、工业级结构化输出的场景;
- 优先InternVL3:需复杂多模态交互(如GUI操作)或跨模态对齐的场景。
相关文章:
论文笔记——QWen2.5 VL
目录 引言架构创新数据整理与训练策略性能与基准测试精细感知能力应用与现实世界影响与现有模型比较结论 引言 视觉理解和自然语言处理的集成一直是人工智能研究的一个重要焦点,促成了日益复杂的视觉语言模型 (VLMs) 的发展。由阿里巴巴集团 Qwen 团队开发的 Qwe…...
前端HTML基础知识
1.HTML介绍 HTML(HyperText Markup Language,超文本标记语言)是构成网页的基本元素,是一种用于创建网页的标准化标记语言。HTML不是一种编程语言,而是一种标记语言,通过标签来描述网页的结构和内容。 超文本:超文本是…...
程序代码篇---ESP32云开发
文章目录 前言 前言 本文简单介绍了实现 ESP32-S3 传感器数据上传至云平台 手机远程控制电机 的完整方案,涵盖推荐的云平台、手机端。 一、推荐云平台及工具 云平台选择 阿里云 IoT 平台 优势:国内稳定、支持大规模设备接入、提供完整设备管理及安全…...
【C语言】文本操作函数fseek、ftell、rewind
一、fseek int fseek ( FILE * stream, long int offset, int origin ); 重新定位文件指针的位置,使其指向以origin为基准、偏移offset字节的位置。 成功返回0,失败返回非零值(通常为-1)。 origin有如下三种:分别是…...
ARM ASM
ARM ASM ARM寄存器集 列出了ARM的16个程序员可见寄存器(r0~r15)以及它的状态寄存器。 ARM共有14个通用寄存器r0~r13。寄存器r13被保留用作栈指针,r14存放子程 序返回地址,r15为程序计数器。 由于r15能够被程序员访问,…...
【五一培训】Day1
注: 1. 本次培训内容的记录将以“Topic”的方式来呈现,用于记录个人对知识点的理解。 2. 由于培训期间,作者受限于一些现实条件,本文的排版及图片等相关优化,需要过一段时间才能完成。 Topic 1:使用DeepS…...
SpringBoot使用分组校验解决同一个实体对象在不同场景下需要不同校验规则的问题
背景 添加分类的接口不需要id字段,但更新分类的接口需要id字段,当在id字段上使用NotNull注解时,会导致使用添加分类接口报id字段不能为空的错误 解决 定义分组 pojo/Category.java // 如果没有指定分组,则默认属于Default分组…...
Hibernate与MybatisPlus的混用问题(Invalid bound statement (not found))
当项目里已经有了Hibernate后: spring:jpa:hibernate:ddl-auto: updateshow-sql: trueproperties:hibernate:format_sql: true 再配置yml文件就会失效: mybatis-plus:mapper-locations: classpath:mapper/*.xml# 全局策略global-config:db-config:# 自…...
【音视频】ffplay数据结构分析
struct VideoState 播放器封装 typedef struct VideoState {SDL_Thread *read_tid; // 读线程句柄AVInputFormat *iformat; // 指向demuxerint abort_request; // 1时请求退出播放int force_refresh; // 1时需要刷新画⾯,请求⽴即刷新画⾯的意思int paused; // 1时…...
PV操作:宣帧闯江湖武林客栈版学习笔记【操作系统】
P,V,S江湖话翻译 P(申请) 江湖侠客拔剑大喊“掌柜的,给我一间上房!”(申请资源,房不够就蹲门口等)-要房令牌 V(释放) 江湖侠客退房时甩出一锭银子,大喊“…...
精品推荐-湖仓一体电商数据分析平台实践教程合集(视频教程+设计文档+完整项目代码)
精品推荐,湖仓一体电商数据分析平台实践教程合集,包含视频教程、设计文档及完整项目代码等资料,供大家学习。 1、项目背景介绍及项目架构 2、项目使用技术版本及组件搭建 3、项目数据种类与采集 4、实时业务统计指标分析一——ODS分层设计与…...
对计网考研中的信道、传输时延、传播时延的理解
对计网考研中的信道、传输时延、传播时延的理解 在学习数据链路层流量控制和可靠传输那一节的三个协议的最大信道利用率时产生的疑惑 情景: 假如A主机和B主机通过集线器连接,A和集线器是光纤连接,B和集线器也是光纤连接,A给B发…...
RAGFlow报错:ESConnection.sql got exception
环境: Ragflowv0.17.2 问题描述: RAGFlow报错:ESConnection.sql got exception _ming_cheng_tks, 浙江, operatorOR;minimum_should_match30%) 2025-04-25 15:55:06,862 INFO 244867 POST http://localhost:1200/_sql?formatjson […...
报错:函数或变量 ‘calcmie‘ 无法识别。
1、具体报错 运行网上一个开源代码,但是运行报如下错: TT_para_gen 函数或变量 calcmie 无法识别。 出错 TT_para_gen>Mie (第 46 行) [S, C, ang,~] calcmie(rad, ns, nm, lambda, nang, ... 出错 TT_para_gen (第 17 行) [~,ang,Miee,C] …...
蓝桥杯获奖后心得体会
文章目录 获奖项备考心得📖 蓝桥杯 Java 研究生组备考心得📌 一、备考规划📌 二、考试技巧📌 三、心理调整📌 四、总结 获奖项 JAVA研究生组省二 备考心得 好!我来给你写一篇蓝桥杯研究生组Java方向的备…...
大鱼吃小鱼开源
因为知道一些学校也有相关C语言课设 所以这里对代码开源(如果没有csdn会员请用夸克) 我用夸克网盘分享了「大鱼吃小鱼-程序.zip」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速࿰…...
深度学习框架搭建(Vscode/Anaconda/CUDA/Pytroch)
目录 一 Vscode安装 二、Anaconda安装 三、更新显卡驱动 四、安装CUDA 五、安装Pytorch 六、Vscode配置 七、出现的问题汇总 一 Vscode安装 在 Windows 上安装 访问 VS Code 官网 https://code.visualstudio.com/,点击 "Downl…...
免费实用的图像处理工具箱
提到图像处理,一般会想到Photoshop。的确PS比较专业,但是学习成本比较高。其实,针对具体的应用场景,选些简单的工具软件会更方便。 今天就给大家分享一款“洋芋田图像工具箱”软件。它支持Windows和Mac电脑。 用这款软件&#x…...
范式演进:从ETL到ELT及未来展望
范式演进:从ETL到ELT及未来展望 引言 随着数据规模与实时分析需求的爆发,传统的集中式 ETL(Extract-Transform-Load)已难以为继,ELT(Extract-Load-Transform)凭借云原生仓库的弹性计算与分析工程的兴起逐步成为主流。2025 年,数据团队正加速从“先变换再加载”走向“…...
定义一个3D cube,并计算cube每个顶点的像素坐标
定义一个3D cube,并计算cube每个顶点的像素坐标 scratch a pixel课程:Your Starting Point! 3D场景中物体所有点与坐标系原点的连线,该连线与像素平面canvas的交点就是场景中3D点其投影点的位置 3D场景中的点均由这个坐标系描述 相似三角形ABC和A’B’…...
Python学习笔记(第二部分)
接续 Python.md 文件的第二部分 字典 字典的基本操作 字典是一系列 键—值 对,每一个键都与一个值关联,值可以是数字,字符串,甚至是列表或字典,可以把任何python对象都作为字典中的值 alien {color:green,points:5}键…...
ZYNQB笔记(十六):AXI DMA 环路测试
版本:Vivado2020.2(Vitis) 任务:使用 PL 端的 AXI DMA IP 核实现对 DDR3 中数据的读取与写入,实现数据环回,具体流程为: PS 端产生测试数据并写入到 DDR3 中,然后 PL 端的 AXI DMA I…...
Java学习手册:Spring 数据访问
一、Spring JDBC JdbcTemplate :Spring JDBC 提供了 JdbcTemplate 类,它简化了数据库操作,提供了丰富的 API 来执行数据库访问任务。JdbcTemplate 可以自动处理数据库连接的获取、释放,SQL 语句的执行,结果集的处理等…...
第二章 日志分析-apache日志分析(玄机系列)
简介 账号密码 root apacherizhi ssh rootIP 1、提交当天访问次数最多的IP,即黑客IP: 2、黑客使用的浏览器指纹是什么,提交指纹的md5: 3、查看包含index.php页面被访问的次数,提交次数: 4、查看黑客IP访问了…...
类比分析AI Agent 技术
引言:AI Agent 的本质与范式转变 在人工智能领域,AI Agent(智能体)代表了一种从传统软件系统到自主性实体的深刻范式转变。不同于仅仅执行预设指令或算法的程序,现代 AI Agent 被设计为能够: 感知 (Perce…...
【业务领域】PCIE协议理解
PCIE协议理解 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 PCIE学习理解。 文章目录 PCIE协议理解[TOC](文章目录) 前言零、PCIE掌握点?一、PCIE是什么?二、PCIE协议总结物理层切速 链路层事务层6.2 TLP的路…...
设计模式简述(十四)组合模式
组合模式 描述基本使用所有节点方法一致使用 叶子无实现子节点使用 添加向上查询使用(没变化) 描述 组合模式用于描述部分与整体的关系,将个体对象与组合对象的行为统一,便于维护整个数据集。 基本使用 所有节点方法一致 定义…...
【Tool】vscode
vscode问题集锦 1 全局搜索失效 ctrl shift f 快捷键失效: 原因:可能与输入法快捷键冲突,重定义输入法快捷键即可 其他 看心情和经历补充~...
文件操作--文件包含漏洞
本文主要内容 脚本 ASP、PHP、JSP、ASPX、Python、Javaweb --# 各种包含函数 检测 白盒 代码审计 黑盒 漏扫工具、公开漏洞、手工看参数值及功能点 类型 本地包含 有限制、无限制 远程包含 无限制、有限制…...
数字智慧方案6156丨智慧医联体信息化解决方案(50页PPT)(文末有下载方式)
资料解读:智慧医联体信息化解决方案 详细资料请看本解读文章的最后内容。 在医疗改革不断深化的大背景下,医联体信息化建设成为推动医疗服务高质量发展的关键力量。《智慧医联体信息化解决方案》这份资料,全面且深入地阐述了医联体信息化建…...
华为eNSP:多区域集成IS-IS
一、什么是多区域集成IS-IS? 多区域集成IS-IS是一种基于中间系统到中间系统(IS-IS)协议优化的网络架构设计,通过多区域协同、路径优化和扩展性增强实现高效路由管理,其核心特征如下: 1、分布式架构与多区…...
RAG技术完全指南(一):检索增强生成原理与LLM对比分析
RAG技术完全指南(一):检索增强生成原理与LLM对比分析 文章目录 RAG技术完全指南(一):检索增强生成原理与LLM对比分析1. RAG 简介2. 核心思想3. 工作流程3.1 数据预处理(索引构建)3.2…...
(持续更新)Ubuntu搭建LNMP(Linux + Nginx + MySQL + PHP)环境
LNMP(Linux Nginx MySQL PHP)环境是在Linux操作系统上构建的一个高性能Web服务器环境。M也可以指代其他数据库,P也可以指代Python 1. 准备Linux系统 确保你已经在一台服务器或虚拟机上安装了Linux操作系统。推荐使用Ubuntu、CentOS或Debi…...
机器人手臂控制器:EMC电磁兼容解决(一)
一、机器人手臂控制器行业标准剖析 GB/T 39004—2020《工业机器人电磁兼容设计规范》 GB/T 37283-2019 服务机器人 电磁兼容 通用标准 抗扰度要求和限值 GB/T 39785-2021 服务机器人 机械安全评估与测试方法 GB/T 40014-2021 双臂工业机器人 性能及其试验方法 GB/T 40013-…...
Qt进阶开发:QSS常用的语法介绍和使用
文章目录 一、什么是QSS?二、QSS的基本语法三、QSS 的使用方式3.1 在代码中设置 QSS3.2 加载外部 QSS 文件四、QSS中选择器的介绍和使用4.1 Type Selector(类型选择器)4.2 ID Selector(ID 选择器)4.2.1 仅使用 ID(常见写法)4.2. 2 类型 + ID(更精确匹配)4.3 Class Sel…...
qemu学习笔记:QOM
2.4 QOM介绍 说明:小白学习qemu的一些学习笔记。主要是学习《QEMU&KVM源码解析与应用》这本书。 参考: 《QEMU&KVM源码解析与应用》作者:李强 Qemu - 百问网嵌入式Linux wiki QOM 定义:QEMU Object Model,是 Q…...
Spring AI开发跃迁指南(第二章:急速上手3——Advisor核心原理、源码讲解及使用实例)
1.Advisor简介 Spring AI 中的 Advisor 是一种核心机制,用于拦截和增强 AI 应用程序中的请求与响应流。其设计灵感来源于 Spring AOP(面向切面编程)中的切面(Aspect)概念,但专门针对 AI 交互场景进行了优化…...
51c嵌入式~单片机~合集9
我自己的原文哦~ https://blog.51cto.com/whaosoft/13884964 一、单片机中hex、bin文件的区别 单片机程序编译之后,除了生成hex文件之外还生成了bin文件,实际它们都是单片机的下载文件,下文介绍它们的区别。 Hex Hex文件包含地址信息。…...
linux学习——数据库API创建
一.API操作 1.int sqlite3_open(char *filename,sqlite3 **db) 功能:打开sqlite数据库 参数: filename:数据库文件路径 db:指向sqlite句柄的指针 (splite3* db;) 返回值…...
21.2Linux中的LCD驱动实验(驱动)_csdn
1、修改设备树 1.1、LCD 屏幕使用的 IO 配置 编译: make uImage LOADADDR0XC2000040 -j8 //编译内核复制给内核的镜像路径:1.2、LDTC 接口节点修改 1.3、输出接口的编写 2、在 panel-simple.c 文件里面添加屏幕参数 显示波浪线是因为alientek_desc 保存参…...
Dubbo(89)如何设计一个支持多语言的Dubbo服务?
设计一个支持多语言的Dubbo服务需要考虑以下几个方面: 服务接口设计:确保服务接口的定义可以被不同语言实现。序列化协议:选择一个支持多语言的序列化协议,例如Protobuf、Thrift、gRPC等。服务注册与发现:确保服务注册…...
油气地震资料数据中“照明”的含义
油气地震资料数据中“照明”的含义 在地震勘探中,“照明”(Illumination)是一个比喻性术语,用于描述地下地质构造被地震波能量覆盖的程度。其核心含义包括: 能量覆盖:指地震波(如人工激发的地…...
[FPGA Video IP] Frame Buffer Read and Write
Xilinx Video Frame Buffer Read and Write IP (PG278) 详细介绍 概述 Xilinx LogiCORE™ IP Video Frame Buffer Read(帧缓冲读取)和 Video Frame Buffer Write(帧缓冲写入)核(PG278)是一对专为视频处理…...
新能源行业供应链规划及集成计划报告(95页PPT)(文末有下载方式)
资料解读:《数字化供应链规划及集成计划现状评估报告》 详细资料请看本解读文章的最后内容。 该报告围绕新能源行业 XX 企业供应链展开,全面评估其现状,剖析存在的问题,并提出改进方向和关键举措,旨在提升供应链竞争力…...
curl详解
curl 是一个常用的命令行工具,用于发送 HTTP 请求,支持包括 GET、POST、PUT、DELETE 等在内的多种 HTTP 方法。它非常适合用来测试 API、下载文件、与后端服务进行交互等。接下来,我会详细讲解 curl 的基本用法以及常见的应用场景。 &#x…...
博客打卡-人类基因序列功能问题动态规划
题目如下: 众所周知,人类基因可以被认为是由4个核苷酸组成的序列,它们简单的由四个字母A、C、G和T表示。生物学家一直对识别人类基因和确定其功能感兴趣,因为这些可以用于诊断人类疾病和设计新药物。 生物学家确定新基因序列功能…...
Runnable组件动态添加默认调用参数
01. bind 函数用途与使用技巧 在使用 LangChain 开发时,某些场景我们希望在一个 Runnable 队列中调用另一个 Runnable 并传递常量参数,这些参数既非前序 Runnable 的输出,也不是用户输入,而是组件自身的部分参数。此时可以使用 R…...
系统架构设计师:设计模式概述
面向对象技术为软件技术带来新的发展。人们运用面向对象的思想分析系统、为系统建模并设计系统,最后使用面向对象的程序语言来实现系统。 但是面向对象的设计并不是一件很简单的事情,尤其是要设计出架构良好的软件系统更不容易。 为了提高系统的复用性…...
天山流域流量数据集(1991-2019)
时间分辨率日空间分辨率/共享方式开放获取数据大小131.67 MB数据时间范围 1901-01-01 — 2019-12-31 元数据更新时间2025-03-24 数据集摘要 由于天山地区数据稀缺和水文条件复杂,中亚水塔的自然径流数据集在各种全球径流数据集(如GMIS、GRDC)…...
Linux 环境下 Mysql 5.7 数据定期备份
目录 一、创建数据备份脚本二、查看备份日志三、数据库数据恢复 备份策略: 系统环境 openEuler 22.03 (LTS-SP4) 单机备份 每天凌晨2点,指定数据库表全量备份,只保留近7次备份数据 每次的脚本执行,将会记录执行结果到日志…...