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

MoLe-VLA:通过混合层实现的动态跳层视觉-语言-动作模型实现高效机器人操作

25年3月来自南京大学、香港理工、北大和香港科技大学的论文“MoLe-VLA: Dynamic Layer-skipping Vision Language Action Model via Mixture-of-Layers for Efficient Robot Manipulation”。

多模态大语言模型 (MLLM) 在理解复杂语言和视觉数据方面表现出色,使通用机器人系统能够解释指令并执行具体任务。尽管如此,它们在现实世界中的部署仍受到大量计算和存储需求的阻碍。最近对 LLM 层中同质模式的洞察启发了稀疏化技术来解决这些挑战,例如提前退出(early exit)和 token 修剪。然而,这些方法往往忽略了最终层的关键作用,这些层对与下游机器人任务最相关的语义信息进行编码。根据神经科学领域浅脑假说 (SBH,Shallow Brain Hypothesis) 的最新突破以及模型稀疏化中混合专家,将每个 LLM 层概念化为一个专家,并提出一种混合层视觉-语言-动作模型 (MoLe-VLA 或简称 MoLe) 架构,用于动态 LLM 层激活。为 MoLe 引入时-空-觉察路由器 (STAR),可根据机器人的当前状态选择性地激活部分层,模拟大脑专门用于认知和因果推理的不同信号通路。此外,为了弥补 MoLe 中 LLM 认知能力的缺失,设计一种认知自-我知识蒸馏 (CogKD),以增强对任务需求的理解,并利用认知特征生成与任务相关的动作序列。在 RLBench 模拟和真实环境中进行的大量实验,证明MoLe-VLA 在效率和性能方面的优越性。

多模态大语言模型 (MLLM) [2、3、17、27、32] 的快速发展,已证明其能够整合复杂的语言和视觉表征,从而激发能够理解视觉语言、与人交互并在操作任务中灵活解决问题的通用机器人和具身智体的发展。初步的视觉-语言-动作 (VLA) 模型 [16、19、21、25],例如 RT-2 [6] 和 OpenVLA [16],已证明使用 MLLM 进行端到端机器人控制的可行性,从而实现了稳健的策略和新兴能力,包括泛化到未见过的物体和理解新命令。然而,在现实世界的机器人系统中部署 MLLM 面临着巨大的挑战,因为它们对计算的需求很高,包括大量的内存使用、功耗和时间延迟,这与机器人平台资源受限和实时要求相冲突。例如,在 RTX 4090 等商用级 GPU 上运行的 7B VLA 模型通常可实现约 5-12 Hz 的推理频率,这远远低于 Franka 机械臂所需的 50-1000 Hz 控制频率。

最近的研究 [34, 43] 发现 LLM 层存在大量冗余,特别是在机器人任务中,跨层的同质模式会导致高计算成本而性能提升有限。例如,DeeR [43] 证明,与使用六层相比,使用 Flamingo [21] 模型的所有 24 层只能将任务成功率提高 3.2%,而 Calvin LH-MTLC [28] 的计算成本增加 4 倍。类似地,在如图 (a) 中对 OpenVLA [16] 和 RLBench [13] 的分析表明,连续层输出之间的余弦相似度超过 90%,而第一层和最后一层的特征差异很大。这表明跳过相邻层可以减少计算量,但也凸显了提前退出策略 [10, 43] 的局限性,如图 (b) 所示,丢弃较深的层可能会丢失关键的语义信息。受浅脑假说 (SBH) [37] 的启发,该假说认为,大脑通过浅层、并行的皮层-皮层下(cortico-subcortical)环路,平衡深层层次结构,以实现认知和因果推理,为此本文提出一种 VLA 模型中的选择性层激活策略。如图 © 所示,该方法反映大脑的动态深度并行平衡,仅激活与任务相关的层以提高效率和适应性,体现VLA 模型设计中 SBH 的原则。本文引入一种混合层视觉-语言-动作模型(MoLe-VLA),该模型在 LLM 的输入阶段加入了一种层-选择路由器,以实现其稀疏性。

请添加图片描述

混合专家

MoE 范式通过条件计算增强模型容量,同时保持计算效率。对于输入 x,标准 MoE 层定义为:

请添加图片描述

其中门控权重的计算是:

请添加图片描述

为了提高效率,通常采用具有 top-k 选择的稀疏门控。为了解决负载不平衡问题(太多输入被路由到少数专家),引入负载平衡损失 L_lb:

请添加图片描述

这种损失鼓励平衡专家利用并提高计算效率。

混合层:MoLe-VLA

视觉-语言-动作模型。机器人负责执行长度为 L 的语言指令 l,在时间步长 t 接收来自传感器的观察值 o_t(例如,来自相机的 RGB 图像),以预测具有 7 个自由度 (DoF) 的夹持器动作空间以执行任务。

基本 VLA 模型主要由视觉编码器 E、MLLM π 和动作模块 A 组成。视觉编码器 E 包括 DINO-v2 [30] 和 Siglip [44],它将输入图像 o_t 编码为一系列信息 token v_t。对于多模态融合,在视觉编码器 E 生成的视觉表征之上建立一个 MLLM,它充当有效的多模态特征提取器 π。其输出 f_t 表示来自时间步 t 的 MLLM 最后一层的隐状态序列,对应于认知 token。这为后续动作模块解释和得出所需动作提供条件。按照 CogAct [19],动作模块 A 将从输出特征 f_t 中提取的认知特征 e^c_t 作为输入,并预测最终动作 a∗_t 。

该视觉、语言和动作模块通过最小化动作模块预测噪声与真值噪声之间的均方误差进行端到端训练。

通过 MoLe 路由器实现跳层机制。本文提出 MoLe-VLA 来提高 LLM 在机器人任务中的效率,由于机器人任务的推理需求更简单,许多 Transformer 层未得到充分利用。MoLe 采用轻量级路由器在推理过程中自适应地跳过非必要的 Transformer 层,在保持性能的同时降低计算成本。

如图所示,对于具有 K 层的给定 MLLM π,MoLe 路由器处理输入嵌入 x_k 并生成二元门控向量 G_mol(x) = {G_k},其中 G_k ∈ [0, 1]。为了确保效率,只有 G_mol(x) 中的前 k 个值设置为 1,确定哪些层 π_k 与隐藏特征 h_k 一起执行,而其余层则被跳过。

请添加图片描述

与将 token 分配给专家的传统 MoE 路由器不同,MoLe 路由器跳过整个层,避免冗余计算。这提高了推理效率和响应能力,使 MoLe 特别适合需要轻量级和自适应处理的实时机器人任务,如操纵和导航。MoLe 的完整伪代码在算法 1 中提供。

请添加图片描述

时空-觉察路由器

本文提出一种路由机制,该机制协同利用视觉输入的空间结构和语言输入中的时间依赖性,动态地为 VLA 任务选择合适的 LLM 层。给定视觉特征 v_t 和文本特征 l,使用可学习矩阵 W_p 将两种模态投影到共享潜空间中。

从 h_img 计算空间路由权重 S 以捕获空间特征,同时使用 Transformer 模块从 h_text 得出时间路由权重 T,然后进行平均池化。一个根据 h_text 的 [CLS] token 计算的动态温度因子 α ∈ [0, 1] 可调节路由锐度(sharpness)。

最终的专家门控权重 G 结合 S 和 T,按 α 尺度化,并通过 Gumbel-Softmax 计算以进行可微分选择。通过整合空间和时间信息,本文方法使路由器能够选择 LLM 层,自适应地优化 VLA 任务的性能。该方法非常高效,每个文本样本仅需要 O(N_e (d_2 + N_text^2 )) FLOP,而标准 MoE 框架则需要 O(N_e * d),其中 d ≫ N_text, d_2。这种设计确保高适应性和计算效率。

认知自-我知识蒸馏

在实现高效跳层机制的同时,本文还设计一种自我蒸馏策略来补偿稀疏 LLM 中的认知损失,如图所示。这里,将原始模型作为老师,将 MoLe 模型作为学生。

请添加图片描述

为了蒸馏 token,一种常见的方法是逐个 token 地模仿张量 [7, 41, 49]。正式地,利用教师和学生网络的 token f^(t) 和 f^(s),可以通过 token 重构来实现模仿如下:

请添加图片描述

但是,上述公式对每个 token 都进行平等的处理和蒸馏,这是不恰当的。例如,与文本描述相关的视觉 token 应该得到更多的关注 [42, 48]。

因此,引入一个可学习的嵌入 e_tc,称为认知 token,以进行自适应蒸馏。具体来说,它被插入到底层,有效地整合视觉 token 和语言指令,以更好地理解任务要求并生成与任务相关的动作序列。教师和学生模型分别有自己的 e_tc,(t) 和 e_t^c,(s)。在蒸馏过程中,通过计算认知 token 和学生 token 之间的相似度来获得兴趣 token (ToIs) M。

接下来,利用教师和学生认知 token 生成的 ToI 的交集来决定每个 token 的提炼程度,其中 M = M(t) ⊙ M(s),因为蒸馏 token 应该包含对教师和学生都很重要的 token。故修正的蒸馏公式如下:

请添加图片描述

此外,引入 Reverse-KL [12] 与认知 token 配对,作为之前获得 L_cog-reversekl 的方​​式,以增强分布约束:

请添加图片描述

最终 CogKD 的损失是上述二个损失的结合。

模拟和实际部署。为了评估方法并展示其泛化能力,在 CoppeliaSim 模拟器和实际环境中对 RLBench [13] 进行了实验:

  1. RLBench 包括使用 Franka Panda 机器人和前视摄像头执行的 10 个不同的桌面任务。这些任务范围从目标操作到环境交互,例如:关闭盒子、关闭笔记本电脑盖、放下马桶座圈、将垃圾放入垃圾桶、扫入簸箕、关闭冰箱、将手机放在底座上、从支架上取下雨伞、从衣架上取下框架和更换时钟。任务数据是使用预定义路径点和开放运动规划库 [36] 生成的。根据先前的研究 [14],每个任务包括使用基于帧方法采样的 100 条训练轨迹,并在训练工作区内对每个任务进行 25 次试验评估。

  2. 在配备 3D 打印 UMI 夹持器 [8] 的 Franka Research 3 (FR3) 机器人上针对三项任务评估真实世界部署。安装在手腕上的 GoPro 9 摄像头,可捕捉真实世界的视觉观察。在定义的工作空间范围内使用手持式 UMI 夹持器为每个任务收集 50 个演示,包括拆卸充电器、拉抽屉和倒水。单个智体在所有任务上进行训练,并在训练工作区内每个任务进行 10 次试验评估。成功率通过人工评估确定,并作为评估指标。

所有基线都使用相同的任务配置进行训练,以便进行公平比较。每个方法的预训练参数都按照各自的训练设置进行加载。对于 MoLe-VLA,单视图 RGB 输入的大小调整为 224 × 224,机器人状态与预测动作(7-DOF 末端执行器姿势)对齐。该模型的训练批次大小为 64,每个样本有 8 个扩散步,使用预先训练的视觉和语言模块权重。视觉模块结合 DINO-v2 和 SigLIP,而语言模块 LLAMA-2 和动作模块 DiT-Base 则以 2 × 10−5 的恒定学习率进行端到端训练,进行 1k 次迭代。使用 PyTorch 的全分片数据并行 (FSDP) 框架,在 8 个 NVIDIA A800 GPU 上进行训练,耗时约 1.5 小时。

相关文章:

MoLe-VLA:通过混合层实现的动态跳层视觉-语言-动作模型实现高效机器人操作

25年3月来自南京大学、香港理工、北大和香港科技大学的论文“MoLe-VLA: Dynamic Layer-skipping Vision Language Action Model via Mixture-of-Layers for Efficient Robot Manipulation”。 多模态大语言模型 (MLLM) 在理解复杂语言和视觉数据方面表现出色,使通用…...

《数字图像处理》教材寻找合作者

Rafael Gonzalez和Richard Woods所著的《数字图像处理》关于滤波器的部分几乎全错,完全从零开始写,困难重重。关于他的问题已经描述在《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》。 现寻找能够共同讨论、切磋、…...

uni-app 框架 调用蓝牙,获取 iBeacon 定位信标的数据,实现室内定位场景

背景:最近需要对接了一个 叫 iBeacon 定位信标 硬件设备,这个设备主要的作用是,在信号不好的地方,或者室内实现定位,准确的找到某个东西。就比如 地下停车场,商城里,我们想知道这个停车场的某个…...

Java面试黄金宝典29

1. 什么是普通索引和唯一性索引 定义: 普通索引:是最基本的索引类型,它为数据表中的某一列或多列建立索引,以加快数据的查询速度。它不限制索引列的值重复,允许存在多个相同的值。唯一性索引:在普通索引的基…...

C语言常见3种排序

主要是三种排序方法:冒泡排序、选择排序、插入排序。 文章目录 一、冒泡排序 1.代码: 2.工作原理: 3.具体过程: 二、选择排序 1.代码 2. 工作原理 3.具体过程: 三、插入排序 1.代码 2.工作原理 3.具体过程 总结 一、…...

Nyquist插件基础:LISP语法-自定义函数

1 Nyquist插件基础:LISP语法-自定义函数 在 Nyquist 里,自定义函数能够让你把特定的操作封装起来,实现代码复用和逻辑模块化。下面详细介绍如何在 Nyquist 中定义和使用自定义函数。 1.1.1 1. 基本函数定义 在 Nyquist 中使用 defun 来定义…...

Visual-RFT:视觉强化微调

文章目录 速览摘要1. 引言2. 相关工作大型视觉语言模型(LVLMs)强化学习 3. 方法3.1. 初步带可验证奖励的强化学习DeepSeek R1-Zero和GRPO 3.2. Visual-RFT3.2.1. 视觉感知中的可验证奖励检测任务中的IoU奖励分类任务中的CLS奖励 3.2.2 数据准备 4. 实验4…...

快速入手-基于DRF的过滤、分页、查询配置(十五)

1、过滤需要安装插件 pip install django-filter 2、注册 INSTALLED_APPS [ "django.contrib.admin", "django.contrib.auth", "django.contrib.contenttypes", "django.contrib.sessions", "django.contrib.messages",…...

最新Spring Security实战教程(八)Remember-Me实现原理 - 持久化令牌与安全存储方案

🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Micro麦可乐的博客 🐥《Docker实操教程》专栏以最新的Centos版本为基础进行Docker实操教程,入门到实战 🌺《RabbitMQ》…...

gcc 链接顺序,静态库循环依赖问题

链接过程由链接器 ld 负责。通常 GCC 间接驱动之。 越底层的库,在链接命令行中的位置应越靠后。 文章目录 链接过程※ 但是对于静态库,链接器仅提取当前未解析符号所需的对象文件,未使用的对象文件会被丢弃。静态库(.a&#xff09…...

linux内核漏洞检测利用exp提权

案例一dirtycow(CVE-2016-5159) 有个前置知识就是 获取liunx的内核 hostnamectl uname -a 然后这个内核漏洞进行提权的步骤也是和手工win进行提权差不多 也是需要使用辅助工具在本地进行辅助检测 然后去nomi-sec/PoC-in-GitHub: &#…...

【学Rust写CAD】21 2D 点(point.rs)

源码 //matrix/point.rs use std::ops::Mul; use super::algebraic_units::{Zero, One}; use super::generic::Matrix;/// 点坐标结构体 #[derive(Debug, Clone, Copy, PartialEq)] pub struct Point<X, Y>(Matrix<X, Y, One, Zero, Zero, One>);impl<X, Y>…...

Jmeter的压测使用

Jmeter基础功能回顾 一、创建Jmeter脚本 1、录制新建 &#xff08;1&#xff09;适用群体&#xff1a;初学者 2、手动创建 &#xff08;1&#xff09;需要了解Jmeter的常用组件 元件&#xff1a;多个类似功能组件的容器&#xff08;类似于类&#xff09; 各元件作用 组件…...

C语言--统计输入字符串中的单词个数

输入 输入&#xff1a;大小写字母以及空格&#xff0c;单词以空格分隔 输出&#xff1a;单词个数 代码 如果不是空格且inWord0说明是进入单词的第一个字母&#xff0c;则单词总数加一。 如果是空格&#xff0c;证明离开单词&#xff0c;inWord 0。 #include <stdio.h&g…...

《雷神之锤 III 竞技场》快速求平方根倒数的计算探究

1. 《雷神之锤 III 竞技场》快速求平方根导数源代码 此处先列出其源代码&#xff0c;这段代码的目标是计算一个浮点数平方根的导数&#xff0c;也就是如下形式&#xff1a; f ( x ) 1 x f(x) \frac{1}{\sqrt{x}} f(x)x ​1​这段代码可以说非常难以理解&#xff0c;尤其是 …...

深入解析 Java 8 Function 接口:函数式编程的核心工具

精心整理了最新的面试资料和简历模板&#xff0c;有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 Java 8 引入的 java.util.function.Function 接口是函数式编程范式的核心组件之一&#xff0c;本文将全面解析其使用方法&#xff0c;并通过丰富的代码示例演…...

软件重构与项目进度的矛盾如何解决

软件重构与项目进度之间的矛盾可以通过明确重构目标与范围、采用渐进式重构策略、优化项目管理流程、提高团队沟通效率、建立重构意识文化等方式解决。其中&#xff0c;采用渐进式重构策略尤为关键。渐进式重构是指在日常开发过程中&#xff0c;以小步骤持续进行重构&#xff0…...

redis的geo结构实现[附近商铺]功能

先上结论 geo地理位置算出来是不准的 实现思路 redis6.2支持了经纬度数据格式 支持经纬度检索 需要将redis升级 否则会报错不支持命令 pom文件如果spring-data-redis是2.7.9的boot版本则要改一下支持geo: <dependency><groupId>org.springframework.boot</g…...

W3C XML Schema 活动

W3C XML Schema 活动 概述 W3C XML Schema(XML Schema)是万维网联盟(W3C)定义的一种数据描述语言,用于定义XML文档的结构和约束。XML Schema为XML文档提供了一种结构化的方式,确保数据的一致性和有效性。本文将详细介绍W3C XML Schema的活动,包括其发展历程、主要特点…...

深入解析C++类:面向对象编程的核心基石

一、类的本质与核心概念 1.1 类的基本定义 类是将**数据&#xff08;属性&#xff09;与操作&#xff08;方法&#xff09;**封装在一起的用户自定义类型&#xff0c;是面向对象编程的核心单元。 // 基础类示例 class BankAccount { private: // 访问控制string owner; …...

MySQL 复制与主从架构(Master-Slave)

MySQL 复制与主从架构&#xff08;Master-Slave&#xff09; MySQL 复制与主从架构是数据库高可用和负载均衡的重要手段。通过复制数据到多个从服务器&#xff0c;既可以实现数据冗余备份&#xff0c;又能分担查询压力&#xff0c;提升系统整体性能与容错能力。本文将详细介绍…...

2025年上软考——【数据库系统工程师】考前60天冲刺学习指南!!!

距离2025上半年“数据库系统工程师”考试已经不足两个月了&#xff0c;还没有准备好的小伙伴赶紧行动起来。为了帮助大家更好的冲刺学习&#xff0c;特此提供一份考前60天学习指南。本指南包括考情分析、学习规划、冲刺攻略三个部分&#xff0c;可以参考此指南进行最后的复习要…...

如果数据包的最后一段特别短,如何处理?

在处理TCP粘包/拆包时&#xff0c;如果最后一个数据段特别短&#xff08;例如仅包含部分包头部或部分数据体&#xff09;&#xff0c;需要通过合理的缓冲区和协议设计来确保数据完整性。以下是具体处理方案&#xff1a; 1. 缓冲区管理&#xff1a;保留不完整数据 核心思想&…...

vue修饰符

在 Vue 中&#xff0c;修饰符是一种特殊的后缀&#xff0c;用于改变指令的默认行为 stop <template><div><h2>vue修饰符</h2><div class"box" click"boxClikc"><button click"btnClick">按钮</button&…...

Redis-06.Redis常用命令-列表操作命令

一.列表操作命令 LPUSH key value1 [value2]&#xff1a; LPUSH mylist a b c d: LRANGE key start stop&#xff1a; LRANGE mylist 0 -1&#xff1a; lrange mylist 0 2&#xff1a; d c b RPOP KEY&#xff1a;移除并返回最后一个元素 RPOP list a LLEN key…...

LTSPICE仿真电路:(二十四)MOS管推挽驱动电路简单仿真

1.Mos管驱动电路基本的拓扑 前面在十一篇的时候学习了MOS管的简单的应用&#xff0c; 这一篇继续补充MOS管的驱动电路。 这个电路应该是最基本的电路仿真&#xff0c;先看电路以及仿真结果&#xff0c;以下仿真结果的电压皆为信号发生器提供的波形图。 看仿真结果比较明了&a…...

GFS论文阅读笔记

文章目录 摘要一、引言二、设计总览2.1、假设2.2、接口2.3、架构2.4 单Master2.5 Chunk大小2.6 元数据2.7 一致性模型 3 系统交互3.1 租约和变更顺序3.2 数据流3.3 原子性的操作&#xff1a;Record append3.4 快照-SNAPSHOT 4. master操作4.1 namespace的管理与锁定4.2 副本的分…...

6. 王道_网络协议

1 网络协议和网络模型 2 TCP/IP协议族概览 2.1 四层模型的各层实体 2.2 协议数据单元的转换 2.3 常见协议以及分层 2.4 ifconfig 2.5 本地环回设备 3 以太网 3.1 以太网和交换机 3.2 以太网帧 MAC地址大小 48位 6字节 IP地址 32位 4字节 port 16位 2字节 3.3 ARP协议 4 IP协…...

《K230 从熟悉到...》颜色识别

《K230 从熟悉到...》颜色识别 颜色识别的基本原理 《庐山派 K230 从熟悉到...》颜色识别 颜色识别是计算机视觉中的重要组件&#xff0c;它允许算法在图像中检测、识别和分类不同颜色。 颜色识别的基本原理 颜色识别的核心是通过分析图像中像素点的颜色信息&#xff0c;从…...

实时内核稳定性 - scheduling while atomic

scheduling while atomic问题 根因:未成对使用获取cpu_id的函数[ 291.881071][ 0] [XW]: type=0x00000003 cpuid=4 time=1725877230 subj...

数据编排与Dagster:解锁现代数据管理的核心工具

在数据驱动的时代&#xff0c;如何高效管理复杂的数据管道、确保数据质量并实现团队协作&#xff1f;本文深入探讨数据编排的核心概念&#xff0c;解析其与传统编排器的差异&#xff0c;并聚焦开源工具Dagster如何以“资产为中心”的理念革新数据开发流程&#xff0c;助力企业构…...

stc8g1k08a定时读取内部1.2v电压值发送到串口1

1189mv #include "stc8g.h"void t0_timer_init(){EA 1;//总中断控制位,启用中断//启用定时器0中断ET0 1;//允许t0中断AUXR | 0x80; //定时器时钟1T模式 t0不频 t1 12分频TMOD & 0xF0; //设置定时器模式TL0 0xCD; //设置定时初始值 205TH0 0xD4; …...

前端开发时的内存泄漏问题

目录 &#x1f50d; 什么是内存泄漏&#xff08;Memory Leak&#xff09;&#xff1f;&#x1f6a8; 常见的内存泄漏场景1️⃣ 未清除的定时器&#xff08;setInterval / setTimeout&#xff09;2️⃣ 全局变量&#xff08;变量未正确释放&#xff09;3️⃣ 事件监听未清除4️⃣…...

「青牛科技 」GC4931P/4938/4939 12-24V三相有感电机驱动芯片 对标Allegro A4931/瑞盟MS4931

芯片描述&#xff1a; • 芯片工作电压 4.7-36V &#xff08; GC4931P &#xff09; • 芯片工作电压 7.5-36V &#xff08; GC4938/4939 &#xff09; • 外置 mos 驱动&#xff0c; NN 结构&#xff0c;内置升压预驱 • QFN5X5-28 封装&#xff0c;带 ePAD 散热&#…...

2025 年山东危化品经营单位考试攻略分享​

山东的考试在全省统一标准。理论考试深入考查危化品相关标准规范&#xff0c;如《危险化学品重大危险源辨识》等。对于危化品储存设施的设计与维护知识要求较高。实际操作考核注重在山东化工园区常见的作业场景&#xff0c;如大型储罐区的操作。​ 报名准备材料与其他省份类似…...

RustDesk 开源远程桌面软件 (支持多端) + 中继服务器伺服器搭建 ( docker版本 ) 安装教程

在需要控制和被控制的电脑上安装软件 github开源仓库地址 https://github.com/rustdesk/rustdesk/releases 蓝奏云盘备份 ( exe ) https://geek7.lanzouw.com/iPf592sadqrc 密码:4esi 中继服务器设置 使用docker安装 sudo docker image pull rustdesk/rustdesk-server sudo…...

CMake 中的置变量

在 CMake 中&#xff0c;变量是存储和传递信息的重要方式。以下是一些常用的 CMake 变量&#xff0c;以表格形式列出&#xff0c;包括它们的名称、含义和常见用途&#xff1a; 变量名称含义常见用途CMAKE_CURRENT_SOURCE_DIR当前处理的 CMakeLists.txt 文件所在的源代码目录的…...

前后端数据序列化:从数组到字符串的旅程(附优化指南)

&#x1f310; 前后端数据序列化&#xff1a;从数组到字符串的旅程&#xff08;附优化指南&#xff09; &#x1f4dc; 背景&#xff1a;为何需要序列化&#xff1f; 在前后端分离架构中&#xff0c;复杂数据类型&#xff08;如数组、对象&#xff09;的传输常需序列化为字符…...

为什么你涨不了粉?赚不到技术圈的钱?

“你的代码如果能打造市值百亿的产品&#xff0c;为什么不能为你的未来加冕&#xff1f;” 这不仅是一句口号&#xff0c;而是一段激励人心的故事的起点。想象一下&#xff0c;一个普通的程序员&#xff0c;在无数个深夜独自敲击代码中&#xff0c;他的每一行代码都承载着对未…...

MATLAB之数据分析图系列 三

三维堆叠柱状图 Bar3StackPlot.m文件 clc; clear; close all; %三维堆叠柱状图 %% 数据准备 % 读取数据 load data.mat % 初始化 dataset X; s 0.4; % 柱子宽度 n size(dataset,3); % 堆叠组数%% 图片尺寸设置&#xff08;单位&#xff1a;厘米&#xff09; figureUnits c…...

【nvidia】Windows 双 A6000 显卡双显示器驱动更新问题修复

问题描述&#xff1a;windows自动更新nvidia驱动会导致只检测得到一个A6000显卡。 解决方法 下载 A6000 驱动 572.83-quadro-rtx-desktop-notebook-win10-win11-64bit-international-dch-whql.exehttps://download.csdn.net/download/qq_18846849/90554276 不要直接安装。如…...

使用Docker快速部署Dify

使用Docker快速部署Dify:一站式AI应用开发平台 Dify 是一款开源的AI应用开发平台,支持快速构建基于大模型的AI应用。通过Docker部署Dify,可以简化环境配置流程,实现高效部署和扩展。本教程将详细介绍如何通过Docker快速部署Dify。 前置条件 ​服务器/本地环境:Linux/Wind…...

Uniapp 实现微信小程序滑动面板功能详解

文章目录 前言一、功能概述二、实现思路三、代码实现总结 前言 Uniapp 实现微信小程序滑动面板功能详解 一、功能概述 滑动面板是移动端常见的交互组件&#xff0c;通常用于在页面底部展开内容面板。本文将介绍如何使用 Uniapp 开发一个支持手势滑动的底部面板组件&#xff0…...

PyQt5和OpenCV车牌识别系统

有需要请加文章底部Q哦 可远程调试 PyQt5和OpenCV车牌识别系统 一 介绍 此车牌识别系统基于PyQt5和OpenCV开发&#xff0c;蓝牌&#xff0c;新能源(绿牌)&#xff0c;黄牌&#xff0c;白牌均可以准确识别&#xff0c;支持中文识别&#xff0c;可以导出识别结果(Excel格式)。此…...

Redis如何在windows中简单安装?

Redis 在官网上有详细的介绍如何安装&#xff0c;但是看着也乱和麻烦。所以教大家直接用大佬整理好的。 Redis安装 ✨进入安装包地址✨安装Redis✨测试下 ✨进入安装包地址 安装包地址&#xff1a; https://github.com/tporadowski/redis/releases Redis安装包是在github上&am…...

在centos7上安装ragflow

在centos7上安装ragflow 前置条件&#xff0c;安装centos7&#xff0c;换yum源&#xff0c;安装docker&#xff0c;安装git 参考文章&#xff1a;利用vmware快速安装一个可以使用的centos7系统-CSDN博客 ragflow的部署参考文章&#xff1a; https://mp.weixin.qq.com/s/Hor…...

LabVIEW多线程

在 LabVIEW 中&#xff0c;多线程编程是提升程序执行效率的关键手段&#xff0c;尤其是在需要并行处理数据采集、控制执行和用户界面交互的场景下。LabVIEW 本身是基于数据流&#xff08;Dataflow&#xff09;的编程语言&#xff0c;天然支持多线程&#xff0c;但要高效利用多线…...

MySQL 错误 报错:Table ‘performance_schema.session_variables’ Doesn’t Exist

mysqldump -uroot -p ca>ca.sql Enter password: mysqldump: Couldnt execute SHOW VARIABLES LIKE gtid\_mode: Table performance_schema.session_variables doesnt exist 解决&#xff1a; USE performance_schema; CREATE TABLE session_variables (VARIABLE_NAME VAR…...

4月2号.

正则表达式的作用: 作用一: 示例: [1-9]表示0不在开头,\\d表示数字,{5,19}表示位数. 拓展: 正则表达式: System.out.println("a".matches(regex:"[a-z&[def]]")); //trueSystem.out.println("&".matches(regex:"[a-z&[def]]&…...

分析sys高问题的方法总结

一、背景 sys高的问题往往属于底层同学更需要关注的问题&#xff0c;sys高的问题往往表现为几种情况&#xff0c;一种是瞬间的彪高&#xff0c;一种是持续的彪高。这篇博客里&#xff0c;我们总结一下常用的分析方法和分析工具的使用来排查这类sys高的问题。 二、通过mpstat配…...