通向AGI的未来之路!首篇2D/视频/3D/4D统一生成框架全景综述(港科大中山等)

文章链接: https://arxiv.org/pdf/2503.04641
摘要
理解并复现现实世界是人工通用智能(AGI)研究中的一个关键挑战。为实现这一目标,许多现有方法(例如世界模型)旨在捕捉支配物理世界的基本原理,从而实现更精确的模拟和有意义的交互。然而,当前的方法通常将不同模态(包括2D(图像)、视频、3D和4D表示)视为独立领域,忽略了它们之间的相互依赖性。此外,这些方法通常专注于现实的孤立维度,而没有系统地整合它们之间的联系。在本综述中,我们提出了一种多模态生成模型的统一综述,探讨了现实世界模拟中数据维度的演进。具体而言,本综述从2D生成(外观)开始,随后转向视频(外观+动态)和3D生成(外观+几何),最后以整合所有维度的4D生成为终点。据我们所知,这是首次尝试在单一框架内系统性地统一2D、视频、3D和4D生成的研究。为指导未来研究,我们全面回顾了数据集、评估指标和未来方向,并为新研究者提供了启发。本综述作为桥梁,推动了多模态生成模型和现实世界模拟在统一框架内的研究进展。
1 引言
几十年来,研究界一直致力于开发能够封装物理世界基本原理的系统,这是实现人工通用智能(AGI)的关键基石。这一努力的核心是通过机器模拟现实世界,旨在通过多模态生成模型的视角捕捉现实的复杂性。由此产生的世界模拟器有望推动对现实世界的理解,并解锁诸如虚拟现实 、游戏、机器人和自动驾驶 等变革性应用。
“世界模拟器”一词最早由 Ha David提出,借鉴了认知科学中的心理模型概念。基于这一视角,现代研究将模拟器定义为一个抽象框架,使智能系统能够通过多模态生成模型模拟现实世界。这些模型将现实世界的视觉内容和时空动态编码为紧凑的表示形式。由于几何、外观和动态共同决定了生成内容的真实感,这三个方面得到了广泛研究。传统的现实世界模拟方法长期以来依赖于结合几何、纹理和动态的图形技术。具体而言,几何和纹理建模用于创建物体,而关键帧动画和基于物理的模拟等方法则用于模拟物体随时间的运动和行为。
尽管取得了巨大进展,但这些传统方法通常需要大量的手动设计、启发式规则定义和计算密集型处理,限制了其可扩展性和对多样化场景的适应性。近年来,基于学习的方法,特别是多模态生成模型,通过提供数据驱动的现实模拟方法,彻底改变了内容创作。这些方法减少了对人工努力的依赖,提高了跨任务的泛化能力,并实现了人与模型之间的直观交互。例如,Sora 因其逼真的模拟能力而备受关注,展示了早期对物理定律的理解。此类生成模型的出现引入了新的视角和方法,通过减少对大量手动设计和计算密集型建模的需求,同时增强多样化模拟场景中的适应性和可扩展性,解决了传统方法的局限性。
尽管现有的生成模型为合成不同数据维度中的逼真内容提供了强大的技术,但现实世界表现出固有的高维复杂性,目前仍缺乏一项系统整合这些跨维度进展的全面综述。本综述旨在通过从数据维度增长的角度统一现实世界模拟的研究,填补这一空白,如下图 1 所示。具体而言,我们从 2D 生成(仅外观)开始,然后通过分别引入动态和几何维度,扩展到视频和 3D 生成。最后,我们通过整合所有维度,以 4D 生成为终点。

总结而言,本综述做出了三项关键贡献。首先,它从数据维度增长的角度,通过多模态生成模型的视角,系统性地回顾了现实世界模拟的方法。据我们所知,这是首次统一 2D、视频、3D 和 4D 生成研究的综述,为该研究领域提供了结构化和全面的概述。其次,它从多个角度调查了常用数据集、其特性以及相应的评估指标。第三,它指出了开放的研究挑战,旨在为该领域的进一步探索提供指导。
我们希望本综述能够为新研究者提供有价值的见解,并促进经验丰富的研究者进行批判性分析。本综述的组织结构如下:第 2 节介绍了深度生成模型的基础概念;第 3 节介绍了 2D、视频、3D 和 4D 生成四个关键范式;第 4 节回顾了这些范式的数据集和评估指标;第 5 节概述了未来方向;第 6 节总结了本综述。
2 预备知识
深度生成模型借助深度神经网络学习复杂且高维的数据分布。将数据样本表示为 ,其分布为 ,深度生成模型的目标是用 近似 ,其中 是模型的参数。在本节中,我们简要回顾了几种主流的生成模型(下表 1),包括生成对抗网络(GANs)、变分自编码器(VAEs)、自回归模型(AR Models)、归一化流(NFs)和扩散模型。

2.1 生成对抗网络(GANs)
GANs 避免了 的参数化形式,而是将 表示为生成器生成的样本的分布。研究表明,在一定条件下, 会收敛到 。
生成器以噪声向量 作为输入,合成数据样本 。 被定义为 的分布,其中 。与此同时,判别器 判断输入数据样本是真实的还是合成的。在训练过程中,判别器被训练以区分生成样本和真实数据,而生成器则被训练以欺骗判别器。该过程可以表示为:

2.2 变分自编码器(VAEs)
变分自编码器(VAEs)将 表述为:

其中, 是 的先验分布, 是给定 下 的条件分布。然而,由于这个积分通常是难以计算的,VAEs 转而最大化 的下界:
其中, 是 和 之间的 KL 散度, 通过随机梯度变分贝叶斯估计器计算。
2.3 自回归模型(AR Models)
自回归模型(AR Models)将 分解为条件概率的乘积,以缓解建模多元联合概率的困难:

其中, 是序列长度。
最近,许多研究致力于使用自回归模型对图像中的像素进行顺序建模 [19]–[21]。
2.4 归一化流(Normalizing Flows, NFs)
归一化流(NFs)使用一个可逆的神经网络 将 从一个已知且易于处理的分布映射到真实数据分布。通过这种方式, 可以表示为:

其中, 是 的逆函数, 是 的雅可比矩阵。归一化流通过组合一组 个双射函数来构建任意复杂的非线性可逆函数,并定义 。
2.5 扩散模型
扩散模型是一类概率生成模型,通过逐步引入噪声来破坏数据,随后学习逆转这一过程以生成样本。我们通过能量项 定义 :

其中, 是归一化项。
由于 难以计算,扩散模型转而学习得分函数 。
将数据分布转换为标准高斯分布的前向过程定义为:
其中, 是漂移系数, 是扩散系数, 是标准维纳过程,。样本通过相应的反向过程生成,该过程描述为:
其中, 是时间从 1 流向 0 时的标准维纳过程。
3 范式
本节从数据维度增长的角度介绍了模拟现实世界的方法。首先从外观建模的 2D 生成(第 3.1 节)开始,然后通过引入动态和几何维度,扩展到视频生成(第 3.2 节)和 3D 生成(第 3.3 节)。最后,通过整合这三个维度,介绍了 4D 生成(第 3.4 节)的最新进展。
3.1 2D 生成
近年来,生成模型领域取得了显著进展,尤其是在文本到图像生成方面。文本到图像生成因其能够通过捕捉现实世界的外观从文本描述中生成逼真图像而备受关注。利用扩散模型、大语言模型(LLMs)和自编码器等技术,这些模型实现了高质量且语义准确的图像生成。
3.1.1 算法
Imagen基于 GLIDE 的原则,但引入了显著的优化和改进。Imagen 没有从头开始训练任务特定的文本编码器,而是使用预训练并冻结的语言模型,从而减少了计算需求。Imagen 测试了在图像-文本数据集(如 CLIP)上训练的模型,以及在纯文本数据集(如 BERT 和 T5)上训练的模型。这一实践表明,扩大语言模型的规模比扩大图像扩散模型更有效地提高了图像保真度和文本一致性。
DALL-E(版本 1)使用了一种 Transformer 架构,将文本和图像作为单一数据流进行处理。
DALL-E 2 利用了 CLIP 的强大语义和风格能力,采用生成扩散解码器来逆转 CLIP 图像编码器的过程。
DALL-E 3 在 DALL-E 2 的基础上进一步改进,显著提升了图像保真度和文本对齐能力。它增强了文本理解能力,能够从复杂描述中生成更准确和细致的图像。DALL-E 3 与 ChatGPT集成,使用户可以直接在 ChatGPT 界面中构思和完善提示,从而简化生成详细和定制化提示的过程。该模型生成的图像具有更高的真实感,并与提供的文本更好地对齐,使其成为创意和专业应用的强大工具。
DeepFloyd IF
DeepFloyd IF 以其卓越的 photorealism(照片级真实感)和高级语言理解能力而闻名。该系统采用模块化设计,包括一个静态文本编码器和三个顺序的像素扩散模块。首先,基础模型从文本描述生成 64×64 像素的图像,然后通过两个超分辨率模型将其增强到 256×256 像素,最终达到 1024×1024 像素。每个阶段都使用基于 T5 Transformer 的静态文本编码器生成文本嵌入,随后通过集成了交叉注意力和注意力池化机制的 U-Net 架构进行处理。
Stable Diffusion (SD)
Stable Diffusion(SD),也称为 Latent Diffusion Model(LDM),在有限的计算资源上提高了训练和推理效率,同时生成高质量和多样化的图像。去噪过程在预训练自编码器的潜在空间中进行,这些自编码器将图像映射到空间潜在空间。底层的 U-Net 架构通过交叉注意力机制增强,以建模条件分布,条件可以包括文本提示、分割掩码等。它使用 BERT 分词器进行文本编码,并在 LAION-400M数据集上训练,生成分辨率为 256×256 的图像(潜在分辨率为 32×32)。
在 Stable Diffusion 的基础上,SDXL 采用了三倍大的 U-Net 骨干网络,并引入了额外的注意力块和更大的交叉注意力上下文,通过使用第二个文本编码器实现。此外,SDXL 还包含一个细化模型,通过后处理的图像到图像技术增强 SDXL 生成样本的视觉保真度。
FLUX.1
FLUX.1 采用了一种混合架构,集成了多模态和并行扩散 Transformer 块,达到了 120 亿参数的规模。通过使用流匹配(flow matching)这一简单而有效的生成模型训练技术,FLUX.1 超越了之前的最先进扩散模型。该套件还采用了旋转位置嵌入和并行注意力层,极大地提高了模型性能和效率。
3.2 视频生成
文本到视频生成模型通过扩展文本到图像框架来处理现实世界中的动态维度。我们根据不同的生成机器学习架构将这些模型分为三类。下图 2 总结了最近的文本到视频生成技术。如需更详细的综述,读者可以参考该子领域的更多详细综述 [62], [63]。

3.2.1 算法
(1) 基于 VAE 和 GAN 的方法
在扩散模型之前,视频生成研究主要通过两种方法推进:基于 VAE 和基于 GAN 的方法,每种方法都为视频合成的挑战提供了独特的解决方案。基于 VAE 的方法从 SV2P的随机动态发展到 VideoGPT 中 VQ-VAE与 Transformer 的结合,通过分层离散潜在变量高效处理高分辨率视频。FitVid的参数高效架构和对抗训练的引入带来了显著改进。基于 GAN 的方法则从 MoCoGAN开始,通过分解内容和运动组件实现可控生成。StyleGAN-V 通过位置嵌入将视频视为时间连续信号,而 DIGAN引入了隐式神经表示以改进连续视频建模。StyleInV利用预训练的 StyleGAN生成器,结合时间风格调制反演网络,标志着高质量帧合成和时间一致性的又一里程碑。
(2) 基于扩散的方法
文本到视频生成最近取得了显著进展,主要分为两类:基于 U-Net 的架构和基于 Transformer 的架构。
(i) 基于 U-Net 的架构
开创性的视频扩散模型(VDM) 通过扩展图像扩散架构并引入联合图像-视频训练以减少梯度方差,实现了高保真、时间一致的视频生成。Make-A-Video通过利用现有视觉表示和创新时空模块,在没有配对文本-视频数据的情况下推进了文本到视频生成。Imagen Video引入了结合基础生成和超分辨率的扩散模型级联,而 MagicVideo通过在低维空间中的潜在扩散实现了高效生成。GEN-1专注于使用深度估计进行结构保留编辑,而 PYoCo通过精心设计的视频噪声先验展示了在有限数据下的高效微调。Align-your-Latents通过扩展 Stable Diffusion并结合时间对齐技术,实现了高分辨率生成(1280×2048)。Show-1结合了基于像素和基于潜在的方法,以提高质量并减少计算量。VideoComposer通过时空条件编码器引入了一种新的可控合成范式,支持基于多种条件的灵活组合。AnimateDiff提出了一个即插即用的运动模块,具有可迁移的运动先验,并引入了 MotionLoRA 以实现高效适配。PixelDance通过结合首帧和末帧图像指令以及文本提示,增强了生成效果。
(ii) 基于 Transformer 的架构
随着 Diffusion Transformer (DiT)的成功,基于 Transformer 的模型逐渐崭露头角。VDT引入了模块化的时间和空间注意力机制,支持预测、插值和补全等多样化任务。W.A.L.T通过统一的潜在空间和因果编码器架构实现了照片级真实感生成,生成分辨率为 512×896 的高分辨率视频。Snap Video通过处理空间和时间冗余像素,将训练效率提高了 3.31 倍,而 GenTron通过无运动引导扩展到了超过 30 亿参数。Luminia-T2X通过零初始化注意力和标记化的潜在时空空间集成了多种模态。CogVideoX通过专家 Transformer、3D VAE 和渐进训练在长视频生成中表现出色,通过多项指标验证了其最先进的性能。突破性的 Sora是一种先进的扩散 Transformer 模型,专注于生成不同分辨率、宽高比和时长的高质量图像和视频。Sora 通过对潜在时空空间进行标记化,实现了灵活且可扩展的生成能力。
(3) 基于自回归的方法
与基于扩散的方法并行,受大语言模型(LLMs)启发的自回归框架也成为了视频生成的另一种方法。这些方法通常遵循两阶段过程:首先使用 VQ-GAN和 MAGVIT, [71]–[74] 等向量量化自编码器将视觉内容编码为离散的潜在标记,然后在潜在空间中建模标记分布。CogVideo 是一个基于预训练文本到图像模型 CogView 的 90 亿参数 Transformer 模型,代表了这一方向的重大进展。它采用多帧率分层训练策略来增强文本-视频对齐,并作为首批开源的大规模预训练文本到视频模型之一,在机器和人类评估中设立了新的基准。VideoPoet引入了一种仅解码器的 Transformer 架构,用于零样本视频生成,能够处理包括图像、视频、文本和音频在内的多种输入模态。遵循 LLM 训练范式,VideoPoet 在零样本视频生成中实现了最先进的性能,特别是在运动保真度方面表现出色。
3.2.2 应用
(1) 视频编辑
最近,扩散模型显著推动了视频编辑的发展,能够在保持时间一致性的同时实现复杂的修改。该领域通过多种创新方法不断发展,涵盖了视频操作的各个方面。早期的发展包括 Tune-A-Video,它通过时空注意力机制将文本到图像扩散模型扩展到视频生成。VidToMe引入了标记合并以对齐帧,而 EI开发了专门的注意力模块。Ground-A-Video通过接地引导框架处理多属性编辑,而 Video-P2P引入了交叉注意力控制以生成角色。UniEdit和 AnyV2V等最新框架提供了无需调优的方法和简化的编辑流程。CoDeF和 Pix2Video等专门应用引入了创新的时间一致性处理和渐进变化传播技术。这些方法成功平衡了内容编辑和结构保留,标志着视频操作技术的重大进展。
(2) 新视角合成
视频扩散模型彻底改变了新视角合成,通过学习真实世界几何的先验,从有限的输入图像生成高质量视角。ViewCrafter通过将视频扩散模型与基于点的 3D 表示相结合,开创了这一方向,引入了迭代合成策略和相机轨迹规划,从稀疏输入中生成高保真结果。CameraCtrl通过即插即用模块引入了精确的相机姿态控制。ViVid-1-to-3将新视角合成重新定义为相机运动的视频生成,而 NVSSolver引入了一种零样本范式,通过给定视图调制扩散采样。这一趋势表明,利用视频扩散先验的同时保持几何一致性和相机控制,正在推动越来越逼真的合成应用。
(3) 视频中的人类动画
人类动画在视频生成中具有重要意义,正如第 3.2.1 节所述,它在世界模拟器中扮演着关键角色。由于人类是现实世界中最主要的参与者,因此其逼真模拟尤为重要。得益于生成模型的早期成功,一些代表性工作 [37], [89], [90] 引入了生成对抗网络(GAN)来生成视频中的人类动画。尽管取得了这些进展,人类视频动画中最关键的问题仍然是生成视频的视觉保真度。ControlNet 和 HumanSD 是基于基础文本到图像模型(如 Stable Diffusion [31])的即插即用方法,用于参考姿势生成人类动画。此外,为了解决这些方法的泛化问题,animate-anyone 提出了 ReferenceNet 以保持参考视频的更多空间细节,并将野外生成质量推向了新的里程碑。一些后续工作 [94], [95] 尝试简化训练架构和成本。此外,随着计算机图形学中对几何和纹理的深入研究,一些工作将 3D 建模引入人类视频动画。Liquid Warping GAN、CustomHuman 和 LatentMan是早期尝试将 3D 人类先验引入生成循环的成果。最新进展 MIMO 明确分别建模角色、3D 运动和场景,以驱动野外人类动画。这些方法无论是否使用 3D 先验,都为将人类引入世界模拟器循环迈出了重要一步。
参考文献
[1] Simulating the Real World: A Unified Survey of Multimodal Generative Models
相关文章:
通向AGI的未来之路!首篇2D/视频/3D/4D统一生成框架全景综述(港科大中山等)
文章链接: https://arxiv.org/pdf/2503.04641 摘要 理解并复现现实世界是人工通用智能(AGI)研究中的一个关键挑战。为实现这一目标,许多现有方法(例如世界模型)旨在捕捉支配物理世界的基本原理࿰…...
C# BindingFlags 使用详解
总目录 前言 在 C# 编程的世界里,反射(Reflection)是一个强大且灵活的特性,它允许我们在运行时动态地获取和操作类型的信息。而 BindingFlags 枚举类型,作为反射中的核心概念之一,为我们提供了精确控制类型…...
【亚马逊云科技】大模型选型实战(挑选和测评对比最适合业务的大模型)
文章目录 前言1、实验内容2、手册内容 一、环境准备二、Prompt 实战与模型配置2.1 基于 Amazon Bedrock 对比测试不同模型的逻辑推理效果2.2 基于 Amazon Bedrock 对比测试不同模型知识问答能力2.3 Prompt 实战结果分析 三、基于 Amazon Bedrock Evaluations 进行模型评测与自动…...
调用feapder作为子程序时setting.py文件不起作用
feaper 官方文档地址: 简介及安装 - feapder官方文档|feapder-document 问题: 在最近的开发中需要调用feapder作为主程序调用的子程序时发现自动入库时无法入库,通过查看日志信息发现连接数据库时被拒绝连接了,但是我的setting.p…...
神经网络量化3-全连接层实现量化
本节,我们模拟下全连接层实现量化,原理上为了方便计算,全连接矩阵采用动态量化的方法,而输入由于不断在变化,我们采用静态量化的方法,直接给出代码: import torch import numpy as np import m…...
【从零开始学习计算机科学】软件测试(九)Web系统测试 与 数据库测试
【从零开始学习计算机科学】软件测试(九)Web系统测试 与 数据库测试 Web系统测试Web系统基本组成Web系统的服务器端应用特点Web系统测试的分类Web应用系统测试的实施功能测试链接测试表单测试性能测试连接速度测试负载测试压力测试可用性测试导航测试图形测试内容测试表格测试…...
G-Star 校园开发者计划·黑科大|开源第一课之 Git 入门
万事开源先修 Git。Git 是当下主流的分布式版本控制工具,在软件开发、文档管理等方面用处极大。它能自动记录文件改动,简化合并流程,还特别适合多人协作开发。学会 Git,就相当于掌握了一把通往开源世界的钥匙,以后参与…...
笔记:代码随想录算法训练营day58:101.孤岛的总面积、102.沉没孤岛、103.水流问题、104.建造最大岛屿
学习资料:代码随想录 文中含大模型生成内容 101. 孤岛的总面积 卡码网:101. 孤岛的总面积 所以找周边都是水的陆地的方法就是找边缘的陆地然后删除它连同它的连通的陆地 深搜 #include <iostream> #include <vector> using namespac…...
5.0 VisionPro调用USB相机的方法与步骤说明(一)
本文介绍如何在C#中调用visionPro以处理USB相机采集到的图片。示例如下: 主要思路如下: 1. 使用AForge来打开以及采集usb相机照片。 usb相机处于一直运行状态。每隔100ms采集一次照片。且触发一次事件。 public void Start() { this.videoSourcePlayer.Stop(); …...
微信小程序计算属性与监听器:miniprogram-computed
小程序框架没有提供计算属性相关的 api ,但是官方为开发者提供了拓展工具库 miniprogram-computed。 该工具库提供了两个功能: 计算属性 computed监听器 watch 一、安装 miniprogram-computed 在项目的根目录下,使用如下命令,…...
强大的AI网站推荐(第二集)—— V0.dev
网站:V0.dev 号称:前端开发神器,专为开发人员和设计师设计,能够使用 AI 生成 React 代码 博主评价:生成的UI效果太强大了,适合需要快速创建UI原型的设计师和开发者 推荐指数:🌟&…...
整理和总结微信小程序的高频知识点
前言 近期萌生了一些想法,感觉可以做一个小程序作为产出。 但小程序做得比较少,因此边做边复习。整理和总结了一些高频知识点和大家一起分享。 一、模板和组件 1.1模板(Template) 优势 简单灵活:模板定义和使用都较…...
vue中js简单创建一个事件中心/中间件/eventBus
vue中js简单创建一个事件中心/中间件/eventBus 目录结构如下: eventBus.js class eventBus {constructor() {this.events {};}// 监听事件on(event, callback) {if (!this.events[event]) {this.events[event] [];}this.events[event].push(callback);}// 发射…...
01. Linux嵌入式系统学习笔记(一)
一. linux基础操作指令 1. 新建文件和目录 (1) 新建文件 touch 命令:用于创建空文件。 touch filename.txt 如果文件已存在,touch 会更新文件的访问时间和修改时间。 (2) 新建目录 mkdir 命令:用于创建目录。 mkdir directoryname 使…...
【从零开始学习计算机科学】软件测试(十)嵌入式系统测试、游戏开发与测试过程、移动应用软件测试 与 云应用软件测试
【从零开始学习计算机科学】软件测试(十)嵌入式系统测试、游戏开发与测试过程、移动应用软件测试 与 云应用软件测试 嵌入式系统测试测试策略及测试流程嵌入式软件测试问题及测试方法嵌入式软件的测试流程游戏开发与测试过程游戏开发与通用软件的开发过程区别游戏测试主要内容…...
# [RPA] 使用八爪鱼进行高效网页数据采集
在许多行业中,数据是核心资产。然而,虽然许多网站的文本内容可以免费访问,但手动一条一条采集,不仅耗时耗力,还容易出错。这种情况下,使用自动化工具来提高采集效率就显得尤为重要。本文将介绍 八爪鱼 这一…...
K8S学习之基础三十七:prometheus监控node资源
Prometheus v2.2.1 编写yaml文件,包含创建ns、configmap、deployment、service # 创建monitoring空间 vi prometheus-ns.yaml apiVersion: v1 kind: Namespace metadata:name: monitor-sa# 创建SA并绑定权限 kubectl create serviceaccount monitor -n monito…...
#mapreduce打包#maven:could not resolve dependencies for project
打包报错: #报错信息: [ERROR] Failed to execute goal on project mapreduce_teacher1: Could not resolve dependencies for project org.example:mapreduce_teacher1:jar:1.0-SNAPSHOT: Failed to collect dependencies at org.apache.hive:hive-exe…...
QT软件匠心开发,塑造卓越设计服务
在当今这个数字化飞速发展的时代,软件已经成为我们生活中不可或缺的一部分。而QT,作为一款跨平台的C图形用户界面应用程序开发框架,凭借其强大的功能和灵活性,在众多软件开发工具中脱颖而出。我们深知,在软件开发领域&…...
田间机器人幼苗视觉检测与护苗施肥装置研究(大纲)
田间机器人幼苗视觉检测与护苗施肥装置研究 基于多光谱视觉与精准施肥的农业机器人系统设计 第一章 绪论 1.1 研究背景与意义 农业智能化需求: 传统幼苗检测依赖人工,效率低且易遗漏弱苗/病苗施肥不精准导致资源浪费和环境污染 技术挑战:…...
生物化学笔记:医学免疫学原理 免疫系统的组成与功能+克隆选择学说
免疫系统的组成与功能 克隆选择学说 克隆选择学说(Clonal Selection Theory)是免疫学的核心理论之一,由 麦克法兰伯内特(Frank Macfarlane Burnet) 在 1957 年提出,用于解释特异性免疫反应的机制。 基本概…...
Android 15 获取网络切片信息的标准接口
相关术语 简称全称中文说明URSPUE Route Selection Policy用户路由选择策略URSP 是 5G 核心网(PCF)下发给 UE 的策略,用于指导应用流量如何路由到不同的网络切片或 PDU 会话。其包含多个规则,每条规则由 优先级、业务描述符(Traffic Descriptor) 和 路由选择描述符(Rout…...
MySql创建分区表并且按月分区
前言 在mysql中,按月份分区,再使用分区字段时间来查询数据将会很快,因为这样只需要扫描指定的分区。因此,在处理大量数据时,使用分区表是一个非常好的选择。 1、创建表,并使用RANGE COLUMNS分区 按创建时间…...
招聘面试季--一文顿悟,Java中字节流和字符流的区别及使用场景上的差异
一、核心区别 特性字节流字符流数据单位以字节(8-bit)为单位处理数据(如0xA1)以字符(16-bit Unicode)为单位处理数据(如A, 你)基类InputStream / OutputSt…...
使用【docker】+【shell】脚本半自动化部署微服务项目
一.前言 以下是一个基于 Docker Shell脚本 的半自动化部署方案,包含镜像构建、容器管理、网络配置和日志监控等核心功能,适用于大多数Web应用或微服务项目。 二.目录结构 三.脚本代码实现 1.Shell脚本实现 (deploy.sh) #!/bin/bash# 设置颜…...
uni-app——计时器和界面交互API
API 基本概要 概念说明 API(应用程序接口)是预先定义的方法集合,用于实现特定功能。在 uni-app 中,通过全局对象 uni 调用 API,例如 uni.getSystemInfoSync 获取设备信息。 API 分类与调用规则 事件监听型 以 on 开…...
使用 GitHub 可重用工作流和 GitHub Actions 简化 DevOps
在当今的 DevOps 环境中,自动化是开发团队能够更快地交付功能并维护高质量代码库的关键。这就是像 GitHub Actions 这样的工具变得不可或缺的地方,因为它能够直接在存储库中自动化、自定义和执行 GitHub 工作流程。 当然,随着项目的规模和存…...
深入理解MySQL日志机制
目录 1. MySQL日志概述 2. 错误日志(Error Log) 2.1 错误日志的作用 2.2 错误日志的配置 2.3 查看错误日志 3. 二进制日志(Binary Log) 3.1 二进制日志的作用 3.2 二进制日志的配置 3.3 查看二进制日志 3.4 二进制日志的…...
Sql Server 索引性能优化 分析以及分表
定位需优化语句 根据工具 skywking 或者开启慢查询日志 找到 慢sql 的语句根据 执行过程 来 判断 慢的原因 row filter 指标 看查了多少数据 比例多少 type 看下是单表 还是 join联表 比如 执行步骤多 没索引 优化方向 减少执行次数索引 没索引考虑加索引 加索引 尽量选择 i…...
vue使用element-ui自定义样式思路分享【实操】
前言 在使用第三方组件时,有时候组件提供的默认样式不满足我们的实际需求,需要对默认样式进行调整,这就需要用到样式穿透。本篇文章以vue3使用element-ui的Tabs组件,对Tabs组件的添加按钮样式进行客制化为例。 确定需要修改的组…...
