【字节跳动AI论文】Seaweed-7B:视频生成基础模型的高成本效益培训
摘要:本技术报告介绍了一种经济有效的视频生成基础模型训练策略。 我们提出了一种中等规模的研究模型,大约有70亿个参数(7B),称为Seaweed-7B,使用665,000个H100 GPU小时从头开始训练。 尽管使用适度的计算资源进行训练,但与更大规模的当代视频生成模型相比,Seaweed-7B 表现出极具竞争力的性能。 在资源有限的环境中,设计选择尤为重要。 本技术报告重点介绍了提高中型扩散模型性能的关键设计决策。 根据经验,我们观察到两点:(1)Seaweed-7B的性能可与在大量GPU资源上训练的大型模型相媲美,甚至超过它们;(2)我们的模型具有很强的泛化能力,可以通过轻量级微调或继续训练,有效地适应各种下游应用。 请访问项目页面Seaweed。Huggingface链接:Paper page,论文链接:2504.08685
研究背景和目的
研究背景
随着数字娱乐、通信和现实世界模拟中视频作为主导媒介的中心地位日益凸显,视频生成模型的研究成为了一个引人注目的领域。视频生成模型的基础性研究对于提升一系列下游视频应用的性能具有重要意义,如图像动画、视频编辑和视频叙事等。近年来,视频生成模型取得了快速进展,多种训练方法被提出,如MovieGen、Cosmos和Wan-2.1等。这些方法普遍采用扩散变换器(Diffusion Transformers,DiT),并遵循着扩大模型规模和GPU资源以提高性能的趋势。然而,这种扩展策略带来了巨大的训练成本,例如MovieGen使用了6000多个NVIDIA H100 GPU。这种高昂的训练成本严重阻碍了视频生成模型的创新和发展。
在自然语言处理、视觉语言模型和音频基础模型等领域,研究人员已经发现,通过架构改进和优化训练策略,小到中型模型可以在基准测试中超越大型语言模型(LLMs)。例如,Mistral7B在多个基准测试中超过了Llama2-13B,DeepSeek v3证明了使用370亿参数的激活模型可以超越720亿和4200亿参数的密集模型,而只需一小部分GPU资源。这些成果启发我们探索视频生成领域中的类似效率提升。
研究目的
本研究旨在提出一种经济高效的视频生成基础模型训练策略。我们训练了一个中等规模的模型,称为Seaweed-7B(简称Seed Video),它包含大约70亿个参数的扩散变换器。通过使用665,000个H100 GPU小时(相当于在1000个H100 GPU上训练27.7天)进行从头开始训练,我们旨在展示在资源有限的环境下,通过精心设计的数据处理、模型架构和训练策略,中型模型也能实现与大型模型相媲美甚至超越的性能。此外,我们还希望验证Seaweed-7B作为视频生成基础模型的潜力,即其能否支持广泛的下游应用。
研究方法
数据处理
在资源受限的计算环境中,数据质量和多样性比数量更为重要。我们构建了一个可扩展的基础设施来大规模处理视频数据,并使用各种数据处理器来有效扫描高质量视频数据。我们的数据管道从多种来源收集视频数据,并通过时间分割、空间裁剪、质量过滤、多方面数据平衡、视频去重和视频标注等步骤来转化为高质量的训练数据。特别是,我们通过混合分辨率训练来提高模型对高分辨率和长持续时间视频的重建质量。
模型架构
Seaweed-7B由变分自编码器(VAE)和潜在扩散变换器(DiT)组成。我们采用了具有因果3D卷积编码器和解码器的VAE架构,该架构能够统一图像和视频编码,并支持任意长视频的编码和解码。在DiT方面,我们采用了双流结构,并通过使用SwiGLU激活函数、AdaSingle时步调制和共享更深层FFN参数来优化参数效率和减少内存成本。此外,我们还探索了不同的注意力机制,包括全注意力、空间全注意力和窗口注意力,以平衡训练可扩展性和计算成本。
训练策略
我们采用了从低分辨率到高分辨率的多阶段训练策略。在预训练阶段,我们首先使用低分辨率图像进行训练,以建立文本提示与常见视觉概念之间的对齐。然后,我们启动联合图像和视频训练,其中图像和视频令牌在每个批次中以固定比例混合。在后训练阶段,我们应用监督微调(SFT)和来自人类反馈的强化学习(RLHF)来进一步提高输出视频的美学质量、运动一致性和结构连贯性。
优化技术
为了提高训练效率,我们采用了多种优化技术,包括并行性策略、运行时平衡策略、多级激活检查点(MLAC)和融合CUDA内核。这些技术共同作用,使得Seaweed-7B在分布式训练中的模型浮点运算利用率(MFU)达到38%。
研究结果
定量分析
我们在文本到视频和图像到视频生成任务上评估了Seaweed-7B的性能。通过使用MagicArena平台的人类评估,我们发现Seaweed-7B在图像到视频任务中的Elo评分排名第二,仅次于Kling1.6(HD),但超越了包括Sora、Wan-2.1和HunyuanVideo在内的多个大型模型。在文本到视频任务中,Seaweed-7B也位列前2-3名,性能与Veo 2.0相当,并优于Wan-2.1和Kling1.6(HD)。这些结果表明,尽管使用有限的计算资源进行训练,Seaweed-7B仍然表现出与大型模型相媲美甚至超越的性能。
定性分析
我们还对Seaweed-7B在各种下游应用中的表现进行了定性分析,包括图像到视频生成、人类视频生成、主题一致的视频生成、视频音频联合生成、长视频生成和叙事、实时生成、超分辨率生成和相机控制生成等。结果表明,Seaweed-7B能够支持广泛的下游应用,并通过轻量级微调或继续训练有效适应这些应用。
推理效率
与Wan-2.1模型相比,我们的模型在推理效率方面表现出色。在单个H100 GPU上,Seaweed-7B的推理时间仅为29.6秒,而Wan-2.1则需要1837.9秒。这表明我们的模型不仅在生成质量上具有竞争力,而且在推理速度上也具有显著优势。
VAE重建质量
我们的VAE模型在重建质量方面也表现出色。与最先进的VAE模型相比,我们的模型在rFVD、LPIPS、PSNR和SSIM等指标上均取得了优异的成绩。特别是对于高分辨率和长持续时间的真实世界视频,我们的模型实现了最低的LPIPS值。
研究局限
尽管Seaweed-7B在多个方面表现出色,但其仍存在一些局限性。首先,与大型模型相比,Seaweed-7B在生成精细细节(如小面孔或精细图案)方面仍有提升空间。这可能是由于计算资源有限导致的。其次,尽管我们采取了多种措施来提高模型的安全性和公平性,但确保负责任的视频生成仍然是一个重要的研究领域。未来需要更多努力来增强视频生成中的安全性、公平性和伦理考虑。
未来研究方向
提升模型性能
未来的研究可以进一步探索如何通过改进模型架构、训练策略和优化技术来提升Seaweed-7B的性能。特别是,可以尝试引入更先进的注意力机制和生成对抗网络(GAN)技术来提高生成视频的质量和多样性。
扩展应用场景
随着视频生成技术的不断发展,我们可以期待Seaweed-7B在更多应用场景中发挥重要作用。例如,在虚拟现实(VR)和增强现实(AR)领域,Seaweed-7B可以生成逼真的虚拟环境和交互内容;在电影和游戏制作中,它可以用于快速生成场景和角色动画;在社交媒体和短视频平台中,它可以用于自动生成高质量的视频内容。
增强安全性和公平性
为了确保视频生成技术的负责任使用,未来的研究应重点关注如何增强模型的安全性和公平性。这包括开发更先进的过滤和检测技术来识别和移除有害内容、探索如何确保生成内容的多样性和包容性以及制定相关政策和法规来规范视频生成技术的使用。
降低训练成本
尽管本研究已经展示了一种经济高效的视频生成基础模型训练策略,但未来的研究仍可以进一步探索如何降低训练成本。例如,可以尝试使用更高效的计算硬件和分布式训练技术来减少训练时间和成本;同时,也可以探索如何通过知识蒸馏和迁移学习等方法来利用预训练模型的知识来加速新模型的训练过程。
综上所述,本研究提出了一种经济高效的视频生成基础模型训练策略,并展示了Seaweed-7B模型在多个方面的出色表现。尽管存在一些局限性,但本研究为视频生成领域的发展提供了新的思路和方法,并为未来的研究指明了方向。
相关文章:
【字节跳动AI论文】Seaweed-7B:视频生成基础模型的高成本效益培训
摘要:本技术报告介绍了一种经济有效的视频生成基础模型训练策略。 我们提出了一种中等规模的研究模型,大约有70亿个参数(7B),称为Seaweed-7B,使用665,000个H100 GPU小时从头开始训练。 尽管使用适度的计算资…...
java 线程池:IO密集型的任务(CPU核数 * 2 + 1),为什么这么设置,计算密集型任务( CPU核数+1 ),为什么这么设置
文章目录 1. IO密集型任务:`CPU核数 2 + 1`为什么这样设置?示例场景:2. CPU密集型任务:`CPU核数 + 1`为什么这样设置?示例场景:3. 两者的核心差异4. 实际应用中的注意事项5. 总结在Java线程池的配置中, IO密集型和 CPU密集型任务的线程数设置逻辑存在显著差异,核心原…...
RabbitMQ消息的可靠性
生产者的可靠 首先,我们一起分析一下消息丢失的可能性有哪些。 消息从发送者发送消息,到消费者处理消息,需要经过的流程是这样的: 消息从生产者到消费者的每一步都可能导致消息丢失: ● 发送消息时丢失:…...
涵盖通算、智算、超算、量算!“四算合一”算力网络投入使用,效率提升20%
近日,由中国移动承建的全国首个“四算合一”算力网络调度平台日前正式投入使用。这座“数字三峡”的诞生,标志着我国算力基建完成从“单兵作战”到“军团协同”的跃迁。 什么是“四算合一”? “四算合一”是指将通用算力、智能算力、超级算…...
【Redis】数据结构和内部编码
先来复习一下之前学过的几个基本的全局命令: keys:用来查看匹配规则的keyexists:用来判定执行key是否存在del:删除指定的keyexpire:给key设置过期时间ttl:查询key的过期时间type:查询key对应的…...
考研数据结构之二叉树(一)(包含真题及解析)
考研数据结构之二叉树(一) 下期预告:后续文章将深入探讨二叉树的遍历算法与高频考点(如平衡二叉树、线索二叉树)。 二叉树是数据结构中的核心内容之一,也是考研高频考点。本文将从定义和存储结构两方面展开…...
linux多线(进)程编程——番外1:内存映射与mmap
前言 在修真世界之外,无数异世界,其中某个叫地球的异世界中,一群人对共享内存的第二种使用方式做出了讲解。 内核空间与用户空间 内存空间的划分 Linux操作系统下一个进程的虚拟地址空间被分为用户空间与内核空间 Linux 内核空间在内存管…...
旧版 VMware 虚拟机迁移至 KVM 平台-案例2
项目背景 需将一台旧版 VMware 虚拟机(VMDK 格式)迁移至 KVM 虚拟化平台,具体要求如下: 格式转换:将 VMDK 转换为 QCOW2 格式。磁盘扩容:将原 40GB 磁盘扩展至 60GB。密码重置:修改 aiden 用户…...
六、adb通过Wifi连接
背景 收集是荣耀X40,数据线原装全新的,USB连上之后,老是断,电脑一直叮咚叮咚的响个不停,试试WIFI 连接是否稳定,需要手机和电脑用相同的WIFI. 连接 1.通过 USB 连接手机和电脑(打开USB调试等这些都略过) adb device…...
Kafka使用方式与底层原理解析
一、Kafka简介 Apache Kafka是一个分布式流处理平台,由LinkedIn开发并开源,现已成为实时数据管道和流应用的核心组件。它具备高吞吐量、低延迟、高可扩展性等特点,广泛应用于日志收集、消息系统、流处理等领域。 1.1 Kafka核心概念 Topic&…...
【Python内置函数的深度解析与应用】id
目录 前言:技术背景与价值当前技术痛点解决方案概述目标读者说明 一、技术原理剖析核心概念图解关键技术模块技术选型对比 二、实战演示环境配置要求核心代码实现1. 基础身份验证2. 不可变对象优化3. 对象生命周期追踪 运行结果验证 三、性能对比测试方法论量化数据…...
【Pandas】pandas DataFrame keys
Pandas2.2 DataFrame Indexing, iteration 方法描述DataFrame.head([n])用于返回 DataFrame 的前几行DataFrame.at快速访问和修改 DataFrame 中单个值的方法DataFrame.iat快速访问和修改 DataFrame 中单个值的方法DataFrame.loc用于基于标签(行标签和列标签&#…...
探索QEMU-KVM虚拟化:麒麟系统下传统与云镜像创建虚拟机的最佳实践
随着云计算和虚拟化技术的不断进步,虚拟化在管理服务器、隔离资源以及提升性能方面的好处越来越明显。麒麟操作系统Kylin OS是我们国家自己开发的操作系统,在政府机构和企业中用得很多。这篇文章会教你如何在麒麟操作系统上设置QEMU-KVM虚拟化环境&#…...
pycharm中调试功能讲解
一、调试前的准备工作 1. 准备一段测试代码 先写一个简单的Python脚本(比如计算阶乘),故意留点问题: def factorial(n):result 1for i in range(n):result * ireturn resultprint(factorial(5)) # 预期输出120࿰…...
SimpleITK (sitk) 中查看 DICOM 文件的像素位深(8位或16位)
在 SimpleITK (sitk) 中查看 DICOM 文件的像素位深(8位或16位),可以通过以下方法实现: 方法一:通过 图像像素数组的数据类型 判断 读取 DICOM 文件: 使用 sitk.ReadImage() 加载文件,生成图像对…...
day28图像处理OpenCV
文章目录 一、图像预处理4 边缘填充4.1 边界复制(BORDER_REPLICATE)4.2 边界反射(BORDER_REFLECT)4.3 边界反射101(BORDER_REFLECT_101)4.4 边界常数(BORDER_CONSTANT)4.5 边界包裹&…...
【NLP】 自然语言处理笔记
NLP的全称是Natuarl Language Processing,中文意思是自然语言处理,是人工智能领域的一个重要方向。自然语言处理(NLP)就是在机器语言和人类语言之间沟通的桥梁,以实现人机交流的目的。 人类语言是抽象的信息符号,其中蕴含着丰富的语义信息,人类可以很轻松地理解其中的含…...
LaTeX 的pstricks-add宏绘图练习
练习。 \documentclass[10pt]{article} \usepackage{pstricks-add} \pagestyle{empty} \begin{document} \psset{xunit1.0cm,yunit1.0cm,algebraictrue,dimenmiddle,dotstyleo,dotsize5pt 0,linewidth2.pt,arrowsize3pt 2,arrowinset0.25} \begin{pspicture*}(-16.5581463…...
WITRAN_2DPSGMU_Encoder 类中,门机制
WITRAN_2DPSGMU_Encoder 类中的门机制详解 在 WITRAN_2DPSGMU_Encoder 类中,门机制是核心部分,类似于 LSTM 或 GRU 的门控机制,用于控制隐藏状态的更新和输出。以下是对门机制的详细解析。 1. 门机制的作用 门机制的主要作用是:…...
OSI参考模型和TCP/IP模型
1.OSI参考模型 OSI模型: OSI参考模型有7层,自下而上依次为物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。(记忆口诀:物联网叔会用)。低…...
3D版的VLA:从3D VLA、SpatialVLA到PointVLA——3D点云版的DexVLA,在动作专家中加入3D数据
前言 之前写这篇文章的时候,就想解读下3D VLA来着,但一直因为和团队并行开发具身项目,很多解读被各种延后 更是各种出差,比如从25年3月下旬至今,连续出差三轮,绕中国半圈,具身占八成 第一轮 …...
java: 需要‘)‘ java: 未结束的字符串文字,java: 不是语句,怎么解决
java: 需要’)’ IDE运行当中因为字符串中的JSON串,导致编码不对,IDEA编码识别错误,编译不过,程序运行不起来,解决办法。 第一步,进行修改编码进行尝试 第二步,继续修改编码...
HarmonyOS:使用Refresh组件实现页面下拉刷新上拉加载更多
一、前言 可以进行页面下拉操作并显示刷新动效的容器组件。 说明 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。该组件从API Version 12开始支持与垂直滚动的Swiper和Web的联动。当Swiper设置loop属性为true时&…...
HarmonyOS应用开发的工程目录结构
AppScope > app.json5 应用级的配置信息 AppScope > resources 这个目录下的base>element用于存放全局使用的基本元素,如字符串、颜色和布尔值。base>media目录则存储媒体、动画和布局等资源文件。如果模块下的resources的有同样的资源,那么…...
详解关于VS配置好Qt环境之后但无法打开ui界面
目录 找到Qt安装目录中designer.exe的路径 找到vs中的解决方案资源管理器 右键ui文件,找到打开方式 点击添加 然后把前面designer.exe的路径填到程序栏中,点击确定 然后设置为默认值,并点击确定 当在vs中配置好Qt环境之后,但…...
【JDBC-54.2】深入理解SQL注入攻击及JDBC防护方案
1. SQL注入攻击概述 SQL注入(SQL Injection)是当今Web应用程序中最常见、最危险的安全漏洞之一。它利用了应用程序对用户输入数据处理不当的缺陷,攻击者通过在输入字段中插入恶意的SQL代码片段,欺骗服务器执行非预期的SQL命令。 …...
PCDN通过个人路由器,用更靠近用户的节点来分发内容,从而达到更快地网络反应速度
PCDN(P2P CDN)的核心思想正是利用个人路由器、家庭宽带设备等分布式边缘节点,通过就近分发内容来降低延迟、提升网络响应速度,同时降低传统CDN的带宽成本。以下是其技术原理和优势的详细分析: 1. 为什么PCDN能更快&…...
【软件测试】bug 篇
本章思维导图: 1. 软件测试的生命周期 软件测试贯穿于整个软件的生命周期 流程阶段需求分析测试计划测试设计/开发测试执行测试评估上线运行维护具体工作内容1. 阅读需求文档 2. 标记可测试需求 3. 确定测试类型1. 制定测试范围 2. 选择测试工具 3. 分配资源1. 编写…...
java -jar指定类加载
在 Java 中,使用 java -jar 命令运行 JAR 文件时,默认会加载 JAR 文件的 MANIFEST.MF 文件中指定的 Main-Class。如果你想在运行时指定一个类来加载,可以通过以下方式实现: 方法 1:直接指定类路径和类名 如果你不想使用…...
MVC 模式深度解析与 Spring 框架实践研究
MVC 模式深度解析与 Spring 框架实践研究 摘要 MVC(Model-View-Controller)模式作为软件工程中最重要的架构模式之一,通过将应用逻辑划分为模型、视图和控制器三个独立组件,实现了代码的高内聚低耦合,显著提升了软件的可维护性和可扩展性。本文从 MVC 模式的核心思想出发…...
驱动开发硬核特训 · Day 11(下篇):从 virtio_blk 看虚拟总线驱动模型的真实落地
🔍 B站相应的视屏教程: 📌 内核:博文视频 - 总线驱动模型实战全解析 敬请关注,记得标为原始粉丝。 🔧 在上篇中,我们已经从理论视角分析了“虚拟总线驱动模型”在 Linux 驱动体系中的独特定位。…...
Java实现快速排序算法
用「整理书架」理解快速排序原理 想象你有一堆杂乱的书需要按大小排序,快速排序的步骤可以类比为: 1. 选一本“基准书”(比如最右侧的书) 2. 把书分成三堆: - 左边:比基准小的书 - 中间:基…...
3.3.2 应用层协议设计protobuf(二进制序列化协议)
文章目录 3.3.2 应用层协议设计protobuf(二进制序列化协议)1. 什么是协议设计什么是协议为什么说进程间通信就需要协议,而不是客户端与服务端之间为什么需要自己设计协议 2. 判断消息的完整性->区分消息的边界1.固定长度2. 特定符号3. 固定…...
软件测试过程模型:v模型、w模型、x模型、H模型
软件测试流程 获取测试需求编写测试计划制定测试方案开发和设计测试用例执行测试提交缺陷报告测试分析与评审提交测试报告准备下一版本测试 软件测试过程模型 v模型 【V模型是线性的操作方式】 优点: 验收测试的标准是用户的需求,用户需求对应指导…...
设计模式-代理模式
虚代理 根据需要创建对象...
cocos Spine资源及加载
COCOS Spine 资源加载 创建 Canvas 以及Camera 再进行spine 拖入 提供40个实战酷炫技能spine文件: Spine文件下载...
约翰·麦卡锡:我的人工智能之梦
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 约翰麦卡锡:我的人工智能之梦 一、引言:计算机科学的传奇人物…...
Scrapy结合Selenium实现搜索点击爬虫的最佳实践
一、动态网页爬取的挑战 动态网页通过JavaScript等技术在客户端动态生成内容,这使得传统的爬虫技术(如requests和BeautifulSoup)无法直接获取完整的内容。具体挑战包括: 数据加载异步化:数据并非一次性加载ÿ…...
Oracle数据库数据编程SQL<9.3 数据库逻辑备份和迁移Data Pump (EXPDP/IMPDP) 导出、导入补充>
Oracle Data Pump 是 Oracle 10g 引入的高效数据迁移工具,相比传统的 EXP/IMP 工具,它提供了更强大的功能和显著的性能提升。以下是对 EXPDP 和 IMPDP 工具的全面讲解。 目录 一、高级功能扩展 1. 数据过滤与转换 2. 加密与安全 二、性能调优进阶 1. 并行处理优化 2. …...
Vue 3 + TypeScript 实现一个多语言国际化组件(支持语言切换与内容加载)
文章目录 一、项目背景与功能概览二、项目技术架构与依赖安装2.1 技术栈2.2 安装依赖 三、国际化组件实现3.1 创建 i18n 实例3.2 配置 i18n 到 Vue 应用3.3 在组件中使用国际化内容3.4 支持语言切换 四、支持类型安全4.1 添加类型支持4.2 自动加载语言文件 一、项目背景与功能概…...
RK3506+net9+VS2022跨平台调试C#程序
下载GetVsDbg.sh ,这脚本会下载一个压缩包,然后解压缩,设置x权限等等。但是目标板子连不上,就想办法获取到下载路径,修改这个脚本,显示这个下载链接后,复制一下,用电脑下下来 修改好…...
c# 反射及优缺点
在C#中,反射(Reflection)是一种强大的机制,允许程序在运行时检查其自身的结构(如类型、属性、方法等),以及动态地调用对象的方法或访问其属性。反射主要用于那些在编译时不知道具体类型信息&…...
基于SpringBoot的在线教育系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…...
吴恩达深度学习复盘(16)决策树|节点纯度与熵
决策树简介 决策树算法在很多应用中被使用,机器学习比赛中会经常见到,但在流行病学领域未受到太多关注。 决策树示例 —— 猫的分类 以经营猫收养中心为例,通过动物的耳朵形状、脸型、是否有胡须等特征,来训练一个分类器判断动…...
C++基础精讲-07
文章目录 1. const对象2. 指向对象的指针3. 对象数组4. c中const常见用法总结4.1 修饰常量4.2 修饰指针4.3 修饰函数参数4.4 修饰函数返回值4.5 修饰成员函数4.6 const对象 5. 赋值运算符函数(补充)5.1 概念5.2 默认赋值运算符函数局限5.3 解决办法 1. c…...
100个有用的AI工具 之 生成透明图像LayerDiffuse
Stable Diffusion是开源图像生成界的扛把子,最强的地方在于它的可控性,通过ControlNet,和一系列插件,可以非常精准地控制图像生成的需求。 今天介绍的是SD的一个插件LayerDiffuse,它可以帮助我们用SD生成透明的png图层。我们在用PS抠图的时候,对于头发、毛绒边这种图是非…...
springboot和springcloud的区别
1. 目的与功能 1)Spring Boot: 主要用于快速构建独立的、生产级的 Spring 应用程序。它通过自动配置和嵌入式服务器等特性,简化了微服务的开发、启动和部署,使开发者能够专注于业务逻辑而非繁琐的配置。Spring Boot是一个快速开发的框架,旨在简化Java应用程序的开…...
前端操作document的小方法,主要功能-获取当前页面全部的a标签页,并根据链接中必要的字段进行判断,然后把这些链接放入iframe去打开
首先是一些小方法,有一个问题就是在不同源的页面中无法获取iframe中的dom const isInIframe window.parent ! window.self; console.log(是否在 iframe 中:, isInIframe); console.log(来源页面:, document.referrer); const isSame new URL(document.referrer).o…...
RocketMQ 03
今天是2025/04/14 21:58 day 20 总路线请移步主页Java大纲相关文章 今天进行RocketMQ 6,7,8 个模块的归纳 最近在忙毕设,更新有点慢,见谅 首先是RocketMQ 的相关内容概括的思维导图 6. 安全机制 6.1 ACL 访问控制 核心功能 权限分级:通过…...
基于项目管理的轻量级目标检测自动标注系统【基于 YOLOV8】
🐱 AILabeler 是一个轻量级目标检测标注系统,专为 YOLO 系列模型设计,支持图像上传、标注框管理、类别设置、自动标注(YOLOv8)、导出多格式训练数据等功能。 项目已经发布至https://github.com/as501226107/AILabeler&…...