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

【图像大模型】Hunyuan-DiT:腾讯多模态扩散Transformer的架构创新与工程实践

在这里插入图片描述

Hunyuan-DiT:腾讯多模态扩散Transformer的架构创新与工程实践

  • 一、架构设计与技术创新
      • 1.1 核心架构解析
      • 1.2 关键技术突破
        • 1.2.1 多粒度训练策略
        • 1.2.2 动态路由MoE
  • 二、系统架构解析
      • 2.1 完整生成流程
      • 2.2 性能对比
  • 三、实战部署指南
      • 3.1 环境配置
      • 3.2 基础推理代码
      • 3.3 高级控制生成
  • 四、典型问题解决方案
      • 4.1 中文分词异常
      • 4.2 显存优化策略
      • 4.3 多GPU并行
  • 五、理论基础与算法解析
      • 5.1 改进的扩散损失函数
      • 5.2 动态温度调节
  • 六、进阶应用开发
      • 6.1 视频生成扩展
      • 6.2 3D生成应用
  • 七、参考文献与扩展阅读
  • 八、性能优化与生产部署
      • 8.1 模型量化压缩
      • 8.2 ONNX Runtime部署
  • 九、未来发展方向

一、架构设计与技术创新

1.1 核心架构解析

在这里插入图片描述
Hunyuan-DiT采用分阶段的多模态扩散架构,其整体流程可形式化表示为:

p θ ( x ∣ c ) = ∏ t = 1 T p θ ( x t ∣ x t + 1 , MM-Enc ( c ) ) p_\theta(x|c) = \prod_{t=1}^T p_\theta(x_t|x_{t+1}, \text{MM-Enc}(c)) pθ(xc)=t=1Tpθ(xtxt+1,MM-Enc(c))

其中多模态编码器实现:

class MultiModalEncoder(nn.Module):def __init__(self, text_dim=1024, image_dim=768, hidden_dim=2048):super().__init__()self.text_proj = nn.Linear(text_dim, hidden_dim)self.image_proj = nn.Linear(image_dim, hidden_dim)self.fusion_attn = nn.MultiheadAttention(hidden_dim, 8)def forward(self, text_emb, image_emb):# 模态对齐投影h_text = self.text_proj(text_emb)  # [B, L, D]h_image = self.image_proj(image_emb)  # [B, N, D]# 交叉注意力融合fused = self.fusion_attn(query=h_text, key=h_image,value=h_image)[0]return fused.mean(dim=1)  # 全局池化

1.2 关键技术突破

1.2.1 多粒度训练策略
def train_step(batch, stage):if stage == 1:  # 基础生成loss = dit(batch["images"], text=batch["text"])elif stage == 2:  # 超分辨率hr_images = augment_hr(batch)loss = dit(hr_images, text=batch["text"], resolution=1024)elif stage == 3:  # 多模态对齐loss = contrastive_loss(dit.text_encoder(batch["text"]),dit.image_encoder(batch["images"]))
1.2.2 动态路由MoE
class DynamicMoE(nn.Module):def __init__(self, dim, num_experts=8):super().__init__()self.experts = nn.ModuleList([nn.Linear(dim, dim) for _ in range(num_experts)])self.gate = nn.Linear(dim, num_experts)def forward(self, x):gates = F.softmax(self.gate(x), dim=-1)  # [B, N]expert_outputs = [e(x) for e in self.experts]return sum(g[..., None] * o for g, o in zip(gates, expert_outputs))

二、系统架构解析

2.1 完整生成流程

输入文本
多模态编码器
输入图像
扩散过程调度器
DiT主干网络
多专家解码器
迭代去噪
输出高分辨率图像

2.2 性能对比

指标Hunyuan-DiTStable Diffusion 3DALL-E 3
中文理解准确率92.3%78.5%65.2%
1024px生成时间2.8s3.5s4.2s
CLIP-T中文得分0.810.680.59
FID-50008.712.315.6

三、实战部署指南

3.1 环境配置

# 创建虚拟环境
conda create -n hunyuan python=3.10
conda activate hunyuan# 安装基础依赖
pip install torch==2.3.0 torchvision==0.18.0 -f https://download.pytorch.org/whl/cu121
git clone https://github.com/Tencent/HunyuanDiT
cd HunyuanDiT
pip install -r requirements.txt# 编译自定义算子
python setup.py build_ext --inplace

3.2 基础推理代码

from hunyuan import HunyuanDiTPipeline# 初始化管道
pipe = HunyuanDiTPipeline.from_pretrained("Tencent/HunyuanDiT-Large",torch_dtype=torch.bfloat16,use_safetensors=True
).to("cuda:0")# 多模态生成示例
prompt = "中国山水画风格的未来城市,充满悬浮交通工具"
negative_prompt = "低质量,模糊,卡通风格"image = pipe(prompt=prompt,negative_prompt=negative_prompt,height=1024,width=1024,num_inference_steps=30,guidance_scale=7.5,generator=torch.Generator().manual_seed(42)
).images[0]image.save("output.png")

3.3 高级控制生成

# 图像修复示例
mask = Image.open("damage_mask.png")
init_image = Image.open("corrupted_image.jpg")repaired_img = pipe(prompt="修复破损的古建筑图像",image=init_image,mask_image=mask,strength=0.8,inpaint_resolution=1024
).images[0]

四、典型问题解决方案

4.1 中文分词异常

# 自定义分词器配置
from hunyuan.tokenization import ChineseCLIPTokenizertokenizer = ChineseCLIPTokenizer.from_pretrained("Tencent/HunyuanDiT",use_fast=False,wordpieces_prefix="##"
)
pipe.tokenizer = tokenizer

4.2 显存优化策略

# 启用分块注意力
pipe.enable_attention_slicing(slice_size=4)# 混合精度推理
pipe.unet = pipe.unet.to(torch.bfloat16)
pipe.text_encoder = pipe.text_encoder.to(torch.float16)# 梯度检查点
pipe.unet.enable_gradient_checkpointing()

4.3 多GPU并行

# 启动分布式推理
accelerate launch --num_processes 4 \--mixed_precision bf16 \inference.py \--prompt "科幻场景" \--output_dir ./results

五、理论基础与算法解析

5.1 改进的扩散损失函数

Hunyuan-DiT提出混合损失函数:

L = λ 1 L simple + λ 2 L vlb + λ 3 L align \mathcal{L} = \lambda_1\mathcal{L}_{\text{simple}} + \lambda_2\mathcal{L}_{\text{vlb}} + \lambda_3\mathcal{L}_{\text{align}} L=λ1Lsimple+λ2Lvlb+λ3Lalign

其中对齐损失:

L align = − E [ log ⁡ exp ⁡ ( s ( z t , c ) / τ ) ∑ c ′ exp ⁡ ( s ( z t , c ′ ) / τ ) ] \mathcal{L}_{\text{align}} = -\mathbb{E}[\log \frac{\exp(s(z_t,c)/\tau)}{\sum_{c'}\exp(s(z_t,c')/\tau)}] Lalign=E[logcexp(s(zt,c)/τ)exp(s(zt,c)/τ)]

5.2 动态温度调节

采样过程中温度参数动态调整:

τ t = τ min ⁡ + ( τ max ⁡ − τ min ⁡ ) ⋅ e − 5 t / T \tau_t = \tau_{\min} + (\tau_{\max} - \tau_{\min}) \cdot e^{-5t/T} τt=τmin+(τmaxτmin)e5t/T

六、进阶应用开发

6.1 视频生成扩展

from hunyuan.video import VideoDiTPipelinevideo_pipe = VideoDiTPipeline.from_pretrained("Tencent/HunyuanDiT-Video",torch_dtype=torch.float16
)video_frames = video_pipe(prompt="水墨风格的花开过程",num_frames=24,num_inference_steps=50,motion_scale=1.2
).frames

6.2 3D生成应用

from hunyuan3d import Hunyuan3DPipelinepipe_3d = Hunyuan3DPipeline.from_pretrained("Tencent/HunyuanDiT-3D"
)mesh = pipe_3d(prompt="青铜器造型的机器人",num_views=8,texture_resolution=2048
).export("robot.glb")

七、参考文献与扩展阅读

  1. Hunyuan-DiT技术白皮书
    腾讯AI Lab, 2024

  2. 扩散Transformer理论
    Peebles W, et al. DiT: Scalable Diffusion Models with Transformers. arXiv:2212.09748

  3. 多模态对齐方法
    Radford A, et al. Learning Transferable Visual Models From Natural Language Supervision. CVPR 2021

  4. 混合专家系统
    Fedus W, et al. Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity. JMLR 2022

八、性能优化与生产部署

8.1 模型量化压缩

# 动态量化
quantized_model = torch.quantization.quantize_dynamic(pipe.unet,{nn.Linear, nn.Conv2d},dtype=torch.qint8
)# 保存量化模型
torch.save(quantized_model.state_dict(), "hunyuan_quantized.pt")

8.2 ONNX Runtime部署

# 导出ONNX模型
python export_onnx.py \--model-path Tencent/HunyuanDiT-Large \--output hunyuan.onnx# ONNX Runtime推理
onnxruntime-genai generate \--model hunyuan.onnx \--prompt "古典园林中的未来科技场景" \--output result.png

九、未来发展方向

  1. 多语言支持:扩展至日语、韩语等东亚语言
  2. 实时生成:实现100ms级端侧推理
  3. 物理模拟:集成刚体动力学引擎
  4. 跨模态检索:构建万亿级多模态索引系统

Hunyuan-DiT的技术架构在多模态融合、中文理解和生成质量方面树立了新标杆。其创新的动态MoE机制和分阶段训练策略为大规模生成模型的工程实践提供了重要参考,特别是在处理复杂中文语义和细粒度控制方面展现出显著优势。随着计算硬件的持续升级和算法的不断优化,该技术有望推动AIGC应用进入新的发展阶段。

相关文章:

【图像大模型】Hunyuan-DiT:腾讯多模态扩散Transformer的架构创新与工程实践

Hunyuan-DiT:腾讯多模态扩散Transformer的架构创新与工程实践 一、架构设计与技术创新1.1 核心架构解析1.2 关键技术突破1.2.1 多粒度训练策略1.2.2 动态路由MoE 二、系统架构解析2.1 完整生成流程2.2 性能对比 三、实战部署指南3.1 环境配置3.2 基础推理代码3.3 高…...

TASK04【Datawhale 组队学习】构建RAG应用

目录 将LLM接入LangChain构建检索问答链运行成功图遇到的问题 langchain可以便捷地调用大模型,并将其结合在以langchain为基础框架搭建的个人应用中。 将LLM接入LangChain from langchain_openai import ChatOpenAI实例化一个 ChatOpenAI 类,实例化时传入超参数来…...

YOLOv11旋转目标检测Hrsc2016

from ultralytics import YOLOmodel YOLO(/kaggle/input/model-v11-obb/yolo11n-obb.pt) model.train(data/kaggle/input/hrscobb4/HRSC-YOLO/data.yaml, epochs30) 1使用的训练平台为Kaggle 数据集:HRSC的三种形式 一级分类:船 有水平框版本&…...

Debian重装系统后

安装配置java环境 手动安装 下载openJDK:openJDK 设置替代项 sudo update-alternatives --install /usr/bin/java java /opt/jdk-21.0.2/bin/java 1 sudo update-alternatives --install /usr/bin/javac javac /opt/jdk-21.0.2/bin/javac 1 sudo update-alternat…...

野火鲁班猫(arrch64架构debian)从零实现用MobileFaceNet算法进行实时人脸识别(四)安装RKNN Toolkit Lite2

RKNN Toolkit Lite2 是瑞芯微专为RK系列芯片开发的NPU加速推理API。若不使用该工具,计算任务将仅依赖CPU处理,无法充分发挥芯片高达6TOPS的NPU算力优势。 按照官方文档先拉一下官方代码库,然后通过whl文件安装,因为我是python3.1…...

ElasticSearch导读

ElasticSearch 简介:ElasticSearch简称ES是一个开源的分布式搜素和数据分析引擎。是使用Java开发并且是当前最流行的开源的企业级搜索引擎,能够达到近实时搜索,它专门设计用于处理大规模的文本数据和实现高性能的全文搜索。它基于 Apache Luc…...

【STM32】自定义打印函数

STM32 学习笔记:理解 my_printf 与 va_start 在嵌入式开发中,我们常常需要实现类似标准 C 中 printf 的调试输出功能。为了支持“任意数量参数”的传递,C 语言提供了对 可变参数(variable arguments) 的支持。其中&am…...

基于 STM32 的 PC ARGB 风扇控制器设计与实现

一、项目背景 最近购入的 X99 系列主板,没有风扇的 ARGB 彩灯接口,并且在 Ubuntu 系统上 4pin 的风扇接口调速也是非常的难用,sensor 扫描不到传感器,于是决定手搓一个风扇控制器,来实现转速自定义和彩灯控制。 我控制…...

【软件设计师】计算机网络考点整理

以下是软件设计师考试中 ​​计算机网络​​ 的核心考点总结,帮助您高效备考: ​​一、网络体系结构与协议​​ ​​OSI七层模型 & TCP/IP四层模型​​ 各层功能(物理层-数据链路层-网络层-传输层-会话层-表示层-应用层)对应协…...

在 Qt 中实现动态切换主题(明亮和暗黑)

目录 步骤 1:准备主题文件步骤 2:将 QSS 文件加入资源系统步骤 3:创建主题管理类步骤 4:在应用程序中切换主题步骤 5:处理自定义控件和动态资源步骤 6:保存用户主题偏好步骤 7:处理图片资源切换…...

JavaEE 初阶文件操作与 IO 详解

一、文件操作基础:File 类 作用:操作文件或目录(创建、删除、获取信息)。 核心方法: exists():文件是否存在createNewFile():创建新文件mkdir():创建目录delete():删除…...

基于Qt的app开发第十天

写在前面 笔者昨天刚刚收到课设的截止时间要求,距离写这篇博客的时间还有一个月,我从申请自命题课设到今天已经27天了,先用两周时间学Qt,然后就开始做这个项目,现在已经快把基础功能全部实现了。 目前的打算是完成基础…...

QT中信号和事件的区别

好的,简单来说,Qt 的信号(Signal)和事件(Event)虽然都用于组件间通信和交互,但它们的机制和用途是不同的: 1. 信号(Signal) 概念:信号是对象发出的…...

AUTOSAR图解==>AUTOSAR_SRS_PWMDriver

AUTOSAR PWM驱动模块详解 基于AUTOSAR 4.4.0 SRS 规范文档 目录 1. PWM驱动概述2. PWM驱动架构3. PWM驱动配置4. PWM驱动API接口5. PWM驱动状态管理6. PWM驱动典型应用场景7. 总结1. PWM驱动概述 AUTOSAR PWM驱动是AUTOSAR基础软件中的一个重要组件,属于微控制器抽象层(MCAL)…...

SQL数据处理流程

一、数据处理 1、数据清洗 对空值处理:删除/填充为0 -- 用 0 填充 NULL SELECT COALESCE(sales, 0) AS sales FROM orders;-- 删除含 NULL 的记录 DELETE FROM users WHERE email IS NULL; COALESCE(bonus, 0) 相当于IF(bonus IS NULL, 0, bonus),当…...

Mysql差异备份与恢复

1.练习差异备份 差异备份:备份完全备份后,新产生的数据。 在192.168.88.50主机完成差异备份 步骤一:练习差异备份//周一完全备份 mysql> select * from test.one; --------------------- | name | age | sex | ------------------…...

目标检测 Lite-DETR(2023)详细解读

文章目录 迭代高级特征跨尺度融合高效的低层次特征跨尺度融合KDA:Key-aware Deformable Attention 论文翻译: CVPR 2023 | Lite DETR:计算量减少60%!高效交错多尺度编码器-CSDN博客 DINO团队的 (Lightweight Transfo…...

【Java学习方法】类变量

类变量 引出关键字:static 又名:静态变量,静态字段,类字段(字段又名属性,成员方法),类属性 是什么? 供该(同一个类)的所有对象共享的变量 &am…...

智能手表为什么需要做 EN 18031 认证?

EN 18031 是欧盟针对电磁兼容性(EMC)中人体暴露于电磁场的安全要求制定的标准,全称为 《Electromagnetic compatibility (EMC) - Standards for protective measures against electromagnetic fields with regard to human exposure》&#x…...

什么是 Agent 的 Message

Messages 2.4.1 概述 什么是 Agent 的 Message? 当你和朋友聊天、在网上搜索信息或是对手机语音助手说“帮我查一下天气”时,其实你都在向某个“代理者(Agent)”发送一条“信息(Message)”。这里的“代理者”既可以是一个人,也可以是一个能执…...

如何用JAVA手写一个Tomcat

一、初步理解Tomcat Tomcat是什么? Tomcat 是一个开源的 轻量级 Java Web 应用服务器,核心功能是 运行 Servlet/JSP。 Tomcat的核心功能? Servlet 容器:负责加载、实例化、调用和销毁 Servlet。 HTTP 服务器:监听端口…...

WebRTC与RTSP|RTMP的技术对比:低延迟与稳定性如何决定音视频直播的未来

引言 音视频直播技术已经深刻影响了我们的生活方式,尤其是在教育、医疗、安防、娱乐等行业中,音视频技术成为了行业发展的重要推动力。近年来,WebRTC作为一种开源的实时通信技术,成为了音视频领域的重要选择,它使得浏览…...

COMPUTEX 2025 | 广和通创新解决方案共筑AI交互新纪元

5月20日至23日,广和通携多领域创新解决方案亮相2025年台北国际电脑展(COMPUTEX 2025),台北南港展览馆#K0727a展位。此次展会,广和通围绕“Advancing Connectivity Intelligent Future”为主题,设置四大核心…...

COMPUTEX 2025 | 广和通率先发布基于MediaTek T930 平台的5G模组FG390

5月19日,全球领先的无线通信模组和AI解决方案提供商广和通率先发布基于MediaTek T930平台的5G模组FG390系列。FG390系列模组为以5G固定无线接入(Fixed Wireless Access,FWA)为代表的MBB终端产品而设计,将在CPE&#xf…...

Power Integrations 汽车电源管理方案:为汽车应用增加系统价值

在新能源汽车产业蓬勃发展的当下,高效的电源管理方案成为提升汽车性能与可靠性的关键。近期,Power Integrations 举办线上交流会,介绍了基于其 1700V InnoSwitch3-AQ 反激式开关 IC 的五款全新参考设计,旨在为 800V 纯电动汽车提供…...

汽车转向系统行业2025数据分析报告

汽车转向系统市场概况 2024年全球汽车转向系统市场规模约为2769.4亿元,预计到2031年将增长至3296.3亿元,年均复合增长率(CAGR)为2.5%。这一增长主要得益于汽车行业的持续发展以及转向系统技术的不断进步。 市场驱动因素 汽车转…...

Tiny C 编译器中,如何实现宏展开和头文件包含的预处理逻辑?

首先,预处理的主要功能包括宏展开、头文件包含、条件编译等。用户的问题主要集中在宏展开和头文件包含,所以需要分别考虑这两个部分。 关于宏展开,首先需要解析#define指令。编译器在预处理阶段需要维护一个符号表,用来存储宏的名…...

谈谈 Kotlin 中的构造方法,有哪些注意事项?

在 Kotlin 中,构造方法分为主构造方法(Primary Constructor)和次构造方法(Secondary Constructor)。 1 主构造方法 主构造方法是类的核心构造方法,直接在类头声明,位于类名之后。 1.1 基本语…...

Elasticsearch常用命令

以下是 Elasticsearch 查看集群状态配置和索引完整操作流程的详细命令: 一、查看集群状态与配置 1. 集群健康状态 curl -X GET "localhost:9200/_cluster/health?pretty" 关键参数: level=indices:显示每个索引的健康状态 level=shards:显示每个分片的详细状…...

深入解读RTP协议:RFC 3550的技术分析与应用

引言 实时传输协议(RTP),作为一项重要的技术规范,在多媒体通信中扮演着至关重要的角色。尤其在音视频传输中,RTP为媒体流提供了端到端的传输机制,能够支持高质量、低延迟的音视频数据流传输。随着互联网及…...

使用 electron-builder 打包与发布 Electron 应用

基于 electron-vite-vue 项目结构 本文将基于 electron-vite-vue 脚手架,详细介绍如何使用 electron-builder 实现: ✅ 多平台打包(Windows / macOS / Linux)✅ 自动更新发布配置✅ 常用构建脚本与输出结构 📁 项目结…...

命令行删除node_modules

文章目录 前言一、linux二、windows 前言 最近公司在重构项目,使用的monorepo,这就导致多个项目有多个node_modules。所以在主项目的package.json中写一个清除所有项目的node_modules。第一次研究命令行的代码,记录一下。但我感觉我写的不太…...

naive-ui切换主题

1、在App.vue文件中使用 <script setup lang"ts"> import Dashboard from ./views/dashboard/index.vue import { NConfigProvider, NGlobalStyle, darkTheme } from naive-ui import { useThemeStore } from "./store/theme"; // 获取存储的主题类…...

开源Vue表单设计器FcDesigner中组件联动的配置教程

在用FcDesigner表单开发中&#xff0c;经常需要实现组件之间的联动行为&#xff0c;例如当某个输入框的值满足特定条件时&#xff0c;动态显示或隐藏其他组件。FormCreate 提供了强大的组件联动功能&#xff0c;通过 control 配置项实现组件的加载、显示、禁用和必填等状态控制…...

使用 Shadcn UI 构建 Java 桌面应用

许多桌面应用程序&#xff0c;如 Slack、Notion、Microsoft Teams 和 Linear&#xff0c;都采用基于 Web 的用户界面。这已成为现代软件开发中的常见做法&#xff0c;开发者可以借助熟悉的 Web 技术构建应用&#xff0c;从而简化开发流程。 在本篇文章中&#xff0c;我们将向您…...

25_05_19Linux实战篇、第一章_01若依前后端部署之路(后端)

Linux_实战篇 欢迎来到Linux的世界&#xff0c;看笔记好好学多敲多打&#xff0c;每个人都是大神&#xff01; 题目&#xff1a;若依前后端动静分离(后端 ) 版本号: 1.0,0 作者: 老王要学习 日期: 2025.05.20 适用环境: Rocky9.5 文档说明 本文围绕 Linux 实战展开&#x…...

Python慕课学习记录

中国大学MOOC&#xff08;慕课&#xff09;观看记录&#xff1a; Python123课后相应的练习、考试记录...

2025年渗透测试面试题总结-快手[实习]安全工程师(题目+回答)

网络安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 快手[实习]安全工程师 一面问题分析与详细回答 1. 自我介绍 4. 项目问题与解决 7. 防止SQL注入&…...

【iOS(swift)笔记-10】利用类的继承来实现不同地区语言的显示

XCode项目原生开发有自带的可区分语言的功能体系&#xff0c;建议采用原生开发&#xff0c;此处利用类的继承来实现不同地区语言的显示是为了方便&#xff0c;而且在unity游戏开发中采用此法也挺灵活适用。 // 定义一个语言控制类 class LanguageController { // 根据系统切换…...

C语言中的弱符号 __attribute__((weak)) 的使用方法

以下是一个脱离 CallStack.h 的极简 C 语言示例&#xff0c;通过 弱符号覆盖 和 运行时检查 两个场景&#xff0c;展示 __attribute__((weak)) 的核心用法&#xff1a; 一、代码实现 1. 弱符号定义与覆盖&#xff08;weak_demo.c&#xff09; // weak_demo.c #include <st…...

禁止window安全中心乱删文件

将文件/文件夹添加到 Defender 排除列表 如果你确定文件安全&#xff0c;可以将其添加到 排除列表&#xff0c;防止 Defender 误删&#xff1a; Windows 安全中心 → “病毒和威胁防护” → “管理设置”。 下拉找到 “排除项” → “添加或删除排除项”。 点击 “ 添加排除…...

【JavaScript异步编程终极指南】从回调地狱到Async/Await的实战突围

目录 &#x1f30d; 前言&#xff1a;技术背景与价值&#x1f494; 当前技术痛点&#x1f6e0; 解决方案概述&#x1f465; 目标读者说明&#x1f50d; 一、技术原理剖析&#x1f9e0; 核心作用讲解&#x1f9e9; 关键技术模块说明⚖️ 技术选型对比 &#x1f4bb; 二、实战演示…...

【算法专题十五】BFS解决最短路问题

文章目录 1.最短路问题简介&#xff08;边权为1的最短路问题&#xff09;2.迷宫中离入口最近的出口2.1 题目2.2 思路2.3 代码 3.最小基因变化3.1 题目3.2 思路3.3 代码 4.单词接龙4.1 题目4.2 思路4.3 代码 5.为高尔夫比赛砍树5.1 题目5.2 思路5.3 代码 1.最短路问题简介&#…...

upload-labs通关笔记-第16关 文件上传之exif_imagetype绕过(图片马)

目录 一、exif_imagetype 二、开启exif模块 1、phpstudy设置勾选php_exif模块 2、php.ini文件配置开启php_exif模块 三、源码分析 四、图片马 1、图片马概念 2、图片马制作 五、渗透实战 1、上传图片马 2、利用文件包含访问图片马 &#xff08;1&#xff09;jpg …...

力扣-两数之和

1.题目描述 2.题目链接 LCR 006. 两数之和 II - 输入有序数组 - 力扣&#xff08;LeetCode&#xff09; 3.题目代码 class Solution {public int[] twoSum(int[] numbers, int target) {int[]retnew int[2];int left0,rightnumbers.length-1;while(left<right){if(numbe…...

什么是大数据?

大数据的详细定义 大数据是来自计算机、移动设备和机器传感器的海量数据&#xff08;数万亿字节&#xff09;。企业利用这些数据推动决策、改进流程和政策&#xff0c;并打造以客户为中心的产品、服务和体验。大数据之所以被定义为 “大”&#xff0c;不仅在于其体量&#xff…...

25_05_19Linux实战篇、第一章_02若依前后端部署之路(前端)

Linux_实战篇 欢迎来到Linux的世界&#xff0c;看笔记好好学多敲多打&#xff0c;每个人都是大神&#xff01; 题目&#xff1a;若依前后端动静分离(前端) 版本号: 1.0,0 作者: 老王要学习 日期: 2025.05.21 适用环境: Rocky9.5 文档说明 环境准备 硬件要求 服务器&…...

SuperVINS:应对挑战性成像条件的实时视觉-惯性SLAM框架【全流程配置与测试!!!】【2025最新版!!!!】

一、项目背景及意义 SuperVINS是一个改进的视觉-惯性SLAM&#xff08;同时定位与地图构建&#xff09;框架&#xff0c;旨在解决在挑战性成像条件下的定位和地图构建问题。该项目基于经典的VINS-Fusion框架&#xff0c;但通过引入深度学习方法进行了显著改进。 视觉-惯性导航系…...

【后端】【UV】【Django】 `uv` 管理的项目中搭建一个 Django 项目

&#x1f680; 一步步搭建 Django 项目&#xff08;适用于 uv pyproject.toml 项目结构&#xff09; &#x1f9f1; 第 1 步&#xff1a;初始化一个 uv 项目&#xff08;如果还没建好&#xff09; uv init django-project # 创建项目&#xff0c;类似npm create vue⚙️ 第 …...

sqlsugar查看表结构并导出word文档

前提 SqlSugar 5.1.4 MiniWord 0.9.2 使用 using MiniSoftware; using SqlSugar;namespace ConsoleApp5 {internal class Program{/// <summary>/// 导出数据库表结构和字段信息/// https://www.donet5.com/Home/Doc?typeId1203/// </summary>/// <param n…...