大模型时代的具身智能系列专题(二)

李飞飞团队

李飞飞是华人在AI领域最具影响力的学者之一,她是斯坦福大学人工智能实验室(SAIL)教授,美国国家工程院院士,知名CV数据集ImageNet的牵头人,斯坦福视觉与学习实验室(SVL)的联合主任。她曾担任Google的副总裁,并担任Google Cloud的AI/ML首席科学家。李飞飞博士于1999年获得普林斯顿大学物理学学士学位,于2005年获得加州理工学院电气工程博士学位。
李飞飞团队近些年在具身智能领域有很多成果,包括用于评估具身智能模型表现的基准BEHAVIOR。BEHAVIOR 1K Benchmark拥有来自大规模人类偏好调查的1,000种活动,8种场景类型,50个完全可交互的场景,1,200多种物体类型,5,000多种物体模型。

此外,李飞飞团队还开发了两个机器人学习框架 ROBOTURK和SURREAL,将高质量的数据集整合到先进的强化学习中。RoboTurk被称为机器人领域的ImageNet,它是一个以众包的形式制造机器人控制数据集的平台。为了解决深度学习算法和机器人研究中的可复现性问题,SURREAL是一个开源的可扩展框架,支持最先进的分布式强化学习算法,适用于在线策略学习和离线策略学习。简单理解,ROBOTURK解决机器人学习中的数据问题,SURREAL解决通过数据进行强化学习训练和结果评估的问题。

主题相关作品

  • voxposer
  • TRANSIC

voxposer

作者的研究目标是在给定一组开放指令集和一组开放对象的情况下,为机器人执行各种操作任务合成机器人轨迹,本文中为6自由度的末端执行器生成密集的航路点。作者观察到LLMs擅长在自由形式语言指令中通过推理获取支持(affordances)和约束(constraints)条件,并以此为基础来实现本文的研究目的。作者利用LLMs的代码编写能力使其与VLM进行交互,以此合成3D Value Maps,将LLMs的知识植入到机器人或智能体获取的观察空间。在一个基于模型的规划框架中使用构建好的3D Value Maps以zero-shot的方式合成对动态干扰具有鲁棒性的闭环机器人轨迹。

fig1

方法

公式定义

自由形式语言指令 L 指定了一个操作问题,例如“打开最顶部的抽屉”。然而,根据 L 生成机器人轨迹是很困难的,因为 L 可能具有任意长度,或者是不明确的(例如,需要上下文语义)。相反,我们专注于问题的各个阶段(子任务)l_i,它们明确地指定了一个操作任务 (例如,“抓住抽屉把手”,“打开抽屉”),其中被分解的子阶段(子任务) L → ( l 1 , l 2 , . . . , l n ) L→(l_1,l_2,...,l_n) L(l1,l2,...,ln) 由高级规划器(例如,一个LLM或一个基于搜索的规划器)给出。高级规划器不仅负责分解子任务,还对子任务进行排序。
该研究工作的核心问题是为机器人r和每个由指令 l i l_i li定义的子指令生成一个运动轨迹 τ i r τ_i^r τir.作者将 τ i r τ_i^r τir 表示为由操作空间控制器执行的密集末端执行器航路点序列,每个航路点都由所需的6自由度末端执行器姿态、末端执行器速度、夹持器动作组成。然而,值得注意的是,轨迹也可以采用其他方式表示,比如关节空间轨迹。
给定每个子任务l_i ,作者将上述问题表示为一个优化问题,如公式1所示。
在这里插入图片描述
T i T_i Ti 表示环境状态的演变, $τ_i^r∈T_i $ 是机器人的轨迹, C ( T i ) C(T_i) C(Ti) 表示相关的动力学和运动学约束。 F t a s k F_{task} Ftask 为当前环境状态演变 T i T_i Ti 中指令 l i l_i li 的完成程度进行打分, F c o n t r o l F_{control} Fcontrol 指定了控制成本,例如,鼓励 τ i r τ_i^r τir 最小化总控制时间或工作量。通过为每个子任务 l i l_i li求解公式 1 所述的优化问题,可以针对每个子任务l_i 分别获得一个机器人轨迹序列,这些序列集成在一起共同实现了指令L所指定的整体任务。

Voxposer的基础语言指令

基于自由形式语言指令计算F_task 是极具挑战性的,不仅因为自由形式语言可以承载丰富的语义空间,而且也缺少使用 T 和 l 标记的机器人数据。然而,作者发现了一个关键的观测结果,即大量任务都可以通过机器人观察空间中的体素值图(voxel value map) V ∈ R w × h × d V∈R^{w×h \times d} VRw×h×d 来表征,该体素值图能够引导现实场景中“兴趣实体”(“entity of interest”)的运动,“兴趣实体”可以是机器人末端执行器,一个对象,或者一个对象的部件。
fig2

例如,考虑图 2 中“打开顶部抽屉”的任务,它的第一个子任务是“抓住顶部抽屉的把手”(由LLMs推理获得)。“兴趣实体”是机器人末端执行器,体素值图应当反映出抽屉把手的吸引力【吸引力对应LLMs从自然语言指令中推理得到的支持(affordances)条件】。通过进一步的指令“小心花瓶”,体素值图也应当被更新以反映出花瓶的排斥力【排斥力对应LLMs从自然语言指令中推理得到的约束(constraints)条件】。

"兴趣实体"是执行操作的对象,或被另一个对象用来执行操作的对象。吸引力和排斥力是操作目标具有的。

将“兴趣实体”定义为e ,其轨迹定义为 τ e τ^e τe 。针对一个给定的子指令 l i l_i li,将其映射至体素值图, F t a s k F_{task} Ftask 就可以通过累计“兴趣实体“ e遍历 V i V_i Vi 的值来近似表示【 V i V_i Vi 是子指令 l i l_i li 对应的体素值图】,公式化为 F t a s k = − ∑ j = 1 ∣ τ i e ∣ ∣ V ( p j e ) F_{task} =−∑_{j=1}^{|τ_i^e|} |V(p_j^e) Ftask=j=1τieV(pje) ,其中 p j e ∈ N 3 p_j^e∈N^3 pjeN3 是“兴趣实体”e在其轨迹中第 j 个点的离散化位置 (x,y,z) 。

值得注意的是,作者发现通过在互联网规模的数据上对LLMs进行预训练,LLMs不仅能够识别“兴趣实体”,还能够通过编写Python程序来组成准确反映任务指令的体素值图。特别的,当一条指令在代码中以注释的形式给出时,LLMs能够得到以下提示:1)调用感知APIs(即调用VLM,例如open-vocabulary detector)来获取相关对象的空间几何信息;2)生成Numpy操作来操作3D数组;3)在相关位置指定精确值。作者将该方法称为VoxPoser。具体来说,作者的目标是通过prompting一个LLM,并通过Python解释器执行代码来获取体素值图 V i t = V o x P o s e r ( o t , l i ) V_i^t=VoxPoser(o^t, l_i) Vit=VoxPoser(ot,li),其中 o^t 是在时间 t时的RGB-D观测, l i l_i li 是当前的指令。此外,由于 V通常是稀疏的,因此作者通过平滑操作加密了体素值图,密集的体素值图促使运动规划器(motion planners)优化出更平滑的轨迹。

附加的轨迹参数化:VoxPoser的上述公式使用LLMs来组成体素值图 V : N 3 → R V:N^3→R V:N3R ,以此将体素空间中的离散坐标映射到实值“成本”,通过该实值“成本”可以优化只由位置项组成的路径。为了扩展到SE(3)姿态,作者也使用LLMs在与任务目标相关的坐标上组成旋转体素值图 V r : N 3 → S O ( 3 ) V_r:N^3→SO(3) Vr:N3SO(3)(例如,末端执行器应当面对抽屉手柄的支持法线)。类似地,作者进一步组成了抓手体素值图 V g : N 3 → 0 , 1 V_g:N^3→{0,1} Vg:N30,1 来控制抓手开合,以及速度体素值图 V v : N 3 → R V_v :N^3→R Vv:N3R 来指定目标速度。需要注意的是,虽然这些额外的轨迹参数没有映射到实值“成本”,但是它们也可以被纳入优化过程(公式 1)来参数化轨迹。

VoxPoser的zero-shot轨迹合成

在获得了任务成本F_task 后,就可以处理公式 1 中定义的全部问题来规划一个运动轨迹。作者使用简单的零阶优化,即通过随机采样轨迹并用所提出的目标对其进行评分。在模型预测控制框架中进一步实现了优化,该框架在轨迹的每一个点上使用该点对应的当前观测迭代地重规划轨迹,以达到即使在动态扰动下也能稳定地执行轨迹,该框架中可以使用学习模型或基于物理的模型。
尽管在循环中涉及了LLM,但是闭环执行这一条件是可以满足的,因为在子任务 l_i 中LLM生成的代码是不变的,这就允许缓存当前任务的输出。
但是,由于VoxPoser在观测空间中有效地提供了“密集反馈”(“dense rewards”),并且我们能够在每一步重规划路径,因此作者发现即使使用简单的基于启发式的模型,整个系统也已经能够实现本文所述研究工作中所考虑到的任务的相当大一部分。
由于某些体素值图是基于“兴趣实体”定义的,而“兴趣实体”不一定是机器人,所以我们还使用动力学模型来寻找所需的机器人轨迹,以此最小化任务成本(例如,机器人和环境之间如何交互才能实现所需的目标运用)。由于作者提出的方法与运动规划的具体实例无关,所以作者将实现细节留到第3节介绍。

在线经验的有效动态学习

上面提出了一个为机器人操作合成轨迹的zero-shot框架,但是作者在本节展示了VoxPoser通过有效地学习一个动力学模型,也可以从在线经验中提升性能。具体来说,在标准设置下机器人交替执行以下操作,1)采集环境转换数据 ( o t , a t , o t + 1 o_t,a_t,o_{t+1} ot,at,ot+1) ,其中 o t o_t ot 是在时间为 t 时的环境观测结果并且 a t = M P C ( o t ) a_t=MPC(o_t) at=MPC(ot) (MPC:model predictive control,模型预测控制);2)通过最小化预测的下一个观测结果 o ^ t + 1 \hat{o}_{t+1} o^t+1 和真实的下一个观测结果 o t + 1 o_{t+1} ot+1 之间的L2损失,可以训练一个由 θ参数化的动力学模型 g θ g_θ gθ
决定动力学模型学习效率的一个关键组件是MPC中的动作采样分布 P ( a t ∣ o t ) P(a_t |o_t) P(atot) ,该动作采样分布通常是整个动作空间 A 上的随机分布。但是当目标是解决一个特定任务时(例如“开门”),这通常是低效的,因为大多数动作都不会与场景中的相关对象交互(例如,“门把手”),也不会以有意义的方式与场景中的对象交互(例如,“按下门把手”)。
因此,VoxPoser使用LLMs合成机器人轨迹。由于LLMs具有丰富的常识知识,因此通过LLMs以zero-shot方式合成的机器人轨迹 τ 0 r τ_0^r τ0r 可以作为一个有用的先验来偏置动作采样分布 P ( a t ∣ o t , τ 0 r ) P(a_t |o_t,τ_0^r) P(atot,τ0r) ,这样就可以显著地加快学习过程。在实际应用中,可以通过仅在 τ 0 r τ_0^r τ0r 附近采样动作来实现,即通过添加小噪声 ε来激励局部探索,而不是在整个动作空间 A 中探索。

实验与分析

作者在3.1节讨论了实现VoxPoser的设计选择。在3.2节,作者直接在现实世界的系统中验证VoxPoser是否可以执行日常操作任务。在3.3节,作者还对VoxPoser的泛化性能和在虚拟环境中基于学习和以LLM为基础的基线模型做了详细的定量研究。在3.4节,作者进一步展示了VoxPoser如何从有限的在线经验中获益,以此学习一个适用于交互密集型任务的动力学模型。最后,在3.5节作者研究了整个系统中的错误来源,并讨论了如何改进。

VoxPoser的实现

本节讨论VoxPoser的实例化。作者主要讨论模拟域和现实世界域之间共享的设计选择。关于每个域的环境设置的更多细节请参阅原文附录。
LLMs 和 Prompting。作者依照prompting 结构,该结构使用LLMs自己生成的代码递归调用LLMs,其中每个LMP(language model program,语言模型程序)负责一个单独的功能(例如,处理感知调用)。作者使用了OpenAI API中的GPT-4。Prompst参见原文附录。
VLMs和感知。给定一个来自LLMs的对象或部分的查询,首先调用open-vocab detector(open-vocab检测器)OWL-ViT来获取一个边界框,并将边界框内的内容输入至Segment Anything[3]来获取一张掩码,并且使用视觉跟踪器XMEM[4]来跟踪掩码。被跟踪的掩码和RGB-D观测结果结合在一起,用于重建对象/部分点云。
值图组成。作者定义了以下类型的值图:支持(affordance),约束(avoidance),末端执行器速度、末端执行器旋转,夹持器动作。每个类型的值图都使用了一个不同的LMP,每个LMP在接收到一个指令后都会输出一个形状为 (100,100,100,k) 的体素图,其中每个值图具有不同的 k值。例如,在支持和约束值图中 k 表示成本,所以 k=1 ;在旋转值图中 k表示旋转角度,所以 k=4 。
作者在支持值图上使用了欧氏距离变换,在约束值图上使用了高斯滤波。
在值图LMPs的上层,作者定义了两个高级LMPs(planner,composer)来协调值图LMPs的行为:规划器(planner)将用户指令 L 作为输入(例如,“打开抽屉”),并输出一组子任务 l ( 1 : N ) l_(1:N) l(1:N) ,合成器(composer)接收子任务 l i l_i li 并调用具有详细语言参数化的相关值图LMPs。
合成器根据子任务为各个LMPs安排任务,每个LMPs根据各自的功能已经获取了自然语言指令相关的信息。
运动规划器(Motion Planner)。在规划器优化时,作者只考虑了支持和约束值图,该优化使用贪心搜索找到一个无碰撞的末端执行器位置序列 p ( 1 : N ) ∈ R 3 p_(1:N)∈R^3 p(1:N)R3 。然后作者通过余下的值图(例如,旋转值图,速度值图)在末端执行器位置序列中的每个位置 p 执行余下的参数化。运动规划器使用的成本值图按照如下方式计算:1)对归一化后的支持值图和约束值图按照2和1的权重计算加权和;2)对步骤1)得到的加权和取负值。当一个6-DoF轨迹合成后,执行第一个航路点,然后以5Hz的频率重新规划新的轨迹。
环境动力学模型(Environment Dynamics Model)。对于指定“兴趣实体”是机器人的任务,作者假设机器人本体所处环境是动态的,并且在每一步都重新规划,以适应最新的观测结果。
对于“兴趣实体”是对象的任务,作者只研究一个由接触点、推动方法和推动距离参数化的平面推动模型。基于启发式的动力学模型将输入点云沿着推动方向按照推动距离进行平移。作者使用random shooting的MPC来优化动作参数。然后基于优化后的动作参数执行一个预定义的推动操作基元。然而,作者发现当在机器人的末端执行器或关节空间上定义动作参数时,运动基元不是必须的,尽管运动基元可能会产生更为平滑的轨迹,但是需要更多的时间去优化。

VoxPoser用于日常操作任务

本节作者研究VoxPoser是否能够以zero-shot的方式合成机器人轨迹来执行日常操作任务。作者使用Franka Emika Panda机器人构建了一个真实的桌面环境,更多的细节参考原文附录A.2。尽管本文提出的方法可以泛化到图 1 所示的开放指令集和开放对象集,但是作者选择了5个代表性任务来进行定量评估。
在图 3 中给出了额外的定量结果,结果包括环境展示和值图可视化结果。
fig3

作者发现VoxPoser能有效地为日常操作任务合成机器人轨迹,并且具有较高的平均成功率。特别的,利用LLMs丰富的常识知识,能够为不同的场景和对象提取语言条件支持(affordance)。例如,LLMs能够推断出通过围绕z-轴逆时针旋转可以打开瓶子。很自然地,VoxPoser能够将这些常识植入到观测空间,被植入常识的观测空间能够直接指导运动规划器完成任务。
作者进一步对比了Code as Policies[1]的一个变体,该变体使用LLMs参数化了一组预定义的简单基元(例如,move_to_pose, open_gripper)。作者发现与链式顺序策略逻辑相比,在联合优化机制下,在考虑其他约束的同时具有空间组合能力是一种更为灵活的方法,增加了执行更多操作任务的可能性,并且能够更稳定的执行。特别的,利用MPC中的合成空间图(composed spatial maps),VoxPoser能够有效地从外部干扰中恢复,例如,移动目标/障碍物,当机器人关闭抽屉后再将其打开。

对未见指令和属性的泛化

本节研究VoxPoser的泛化能力。为了提供严格的定量结果,作者按照真实环境设置了一个模拟环境[5],但是模拟环境中有一系列确定的对象(一个柜子,十个带有颜色的块状物和条状物),以及一系列确定的模板指令(例如,“push [obj] to [pos]”),其中[obj]和[pos]是在一个预定义列表上随机化的属性。指令和属性分为可见和未见两组,可见的指令/属性可能出现在prompt(或用于监督学习基线的训练数据中)。可见指令/属性有进一步分为两类,“对象交互”(“Object Interactions”)指需要与对象交互的任务(而不是无碰撞路径规划),“空间合成”(“Spatial Composition”)指机器人需要在其轨迹中考虑环境中的空间约束的任务(例如,在特定对象附近较慢地移动)。
针对用于对比的基线,作者去除了VoxPoser中LLM和运动规划器这两个组成部分,并将其与Code as Policies的一个将LLM和基元相结合的变体,以及文献[6]所提出方法的一个使用U-Net来为运动规划合成成本图的变体进行比较。
VoxPoser在全部测试集上都优于被比较的两个基线,尤其是在未见过的指令或属性上。与使用通过监督学习训练的U-Net来指定成本相比,LLMs通过明确地推理语言条件的支持和约束取得了更好的泛化性。另一方面,通过值图合成的方式将LLMs的常识植入到观测结果中,而不是直接指定基元参数,这种方式提供了稳定的性能,具有较好的泛化性,能够根据prompt中给的例子进一步扩展泛化。

基于在线经验的高效动力学学习

尽管VoxPoser对于未见过的指令具有zero-shot泛化性,但是作者还研究了如何使VoxPoser从涉及更具挑战性的交互密集型任务的在线交互中受益,因为这种任务的在线交互中可能存在许多LLMs不具有的细微的行为差别。为此,作者研究了一套模拟任务,涉及与常见铰接对象的交互,例如打开门、冰箱和窗户。作者认为,尽管由于很难进行探索,这些任务对于自主智能体来说是具有挑战性的,但是VoxPoser通过zero-shot方式合成的轨迹将提供有用的提示(例如,“需要先按下手柄才能开门”)。具体来说,首先使用VoxPoser合成k个不同的轨迹,每个轨迹表示为一个末端执行器航路点序列。然后学习一个能够从 a t a_t at o t o_t ot 预测 o t + 1 o_{t+1} ot+1 的MLP动力学模型,该模型通过机器人或智能体以迭代的方式,交替地执行数据采集和模型学习这两个操作来获取。在MPC的动作采样分布中,将初始合成轨迹作为其先验,并且将噪声 ε ∼ N ( 0 , σ 2 ) ε∼N(0,σ^2) εN(0,σ2)添加到 τ 0 r τ_0^r τ0r 中的每一个航路点,以此激励局部探索。
table3

从table 3,作者发现VoxPoser通过zero-shot方式合成的轨迹是有意义的,但是仍然不足。然而,通过将这些轨迹作为探索先验,可以在不到3分钟的在线交互中学习到一个有效的动力学模型,从而获得较高的最终成功率。相比之下,如果没有先验知识,学习动力学模型是极其困难的,因为大多数行为都不会导致有意义的环境变化。在所有情况下,实验都超过了最长12小时的限制。

3.5 错误分解
由于VoxPoser涉及多个模块协同工作,以此为各种操作任务合成轨迹,因此作者在本节分了每个组件产生的错误,以及如何进一步改进整个系统。作者在模拟环境中进行实验,在那里可以访问真实感知和动力学模型(例如,模拟器)。结果如图4所示。
fig4
U-Net+MP训练了一个U-Net直接将RGB-D观测结果映射为值图,生成的值图为一个运动规划器(MP)使用,因此该方式没有独立的感知模块。此处的“规范错误”(“Specification error”)是指U-Net产生的错误,例如预测结果中难以优化的噪声。
LLM+基元(Primitives)使用LLMs顺序地合成基元,因此没有动力学模块。针对这个基线和VoxPoser,“规范错误”(“Specification error”)是指LLMs在合成策略逻辑或合成值图时的错误。
相比之下,尽管VoxPoser使用了多个模块,但是通过将整个过程公式化为一个基于模型的联合优化问题,VoxPoser达到了最低的总体错误率,并且其最大的错误来源是感知模块。作者还发现,使用更好的动力学模型(而不是基于启发式的模型)可以有助于提高整体性能,例如学习模型或基于物理的模型。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/651417.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024.05.27学习记录

1、面经复习: 实际工作经验章节 2、代码随想录刷题:动态规划剩下部分和单调栈 3、rosebush 组件库完成Input 和 AutoComplete部分内容

长难句打卡5.27

In fact, allowing non-lawyers to own shares in law firms would reduce costs and improve services to customers, by encouraging law firms to use technology and to employ professional managers to focus on improving firms’efficiency. 事实上,这通过…

can设备调试 - linux driver

这篇文章主要介绍can设备的调试相关信息,不具体介绍驱动的实现。 如果驱动写完,对can设备进行验证,可能会出现很多不可预见的问题。下面说说验证步骤 验证can设备可以使用工具can-utils。这个工具包中会有cansend candump等程序。可以直接通…

视频监控技术前沿探索:智能化趋势与EasyCVR视频汇聚技术应用

在数字化时代的浪潮中,视频监控技术以其独特的优势,正在安防领域书写着新的篇章。它不仅为公共安全部门提供了强大的技术支持,还深入到教育、政府、娱乐、医疗、酒店、运动等多个领域,成为维护社会秩序、保障人民安全的重要工具。…

python爬虫学习(2)——requests模块

520那天我向心仪的女孩要微信:“女神,能给我你的微信号吗?” 女神:“给我——爬!!!!” 从那天开始,我就决定要学好爬虫,爬到女神微信号!&#xff…

分布式锁的原理和实现(Go)

文章目录 为什么需要分布式锁?go语言分布式锁的实现Redis自己的实现红锁是什么别人的带红锁的实现 etcdzk的实现 面试问题什么是分布式锁?你用过分布式锁吗?你使用的分布式锁性能如何,可以优化吗?怎么用Redis来实现一个…

CHI Read传输——CHI(3)

目录 一、Read操作概览 二、DMT(Direct Memory Transfer) 三、DCT (Direct Cache Transfer) 四、without Direct Data Transfer 五、ReadNoSnp and ReadOnce* structure with DMT 本篇我们来介绍一下CHI传输类型中的Read 一、Read操作概览 read操作有以下几种&#xff1…

详解CSS(二)

目录 1.背景属性 1.1背景颜色 1.2背景图片 1.3背景平铺 1.4背景位置 1.5背景尺寸 2.圆角矩形 3.元素的显示模式 3.1行内元素/内联元素(Inline element) 3.2块级元素(Block-level element) 3.3行内块元素(In…

css-垂直居中的几种写法

图示 1、使用line-height属性(当div有固定高度时) 2、使用flexbox布局

AGV与智能仓储的应用案例

背景介绍 该企业的智能工厂专注于高端家用电器的生产与研发,包括电子坐便盖、电子坐便器、吸尘器、洗碗机等,覆盖8条关键产线。面对日益增长的市场需求和生产节奏的加快,传统的物流方式已无法满足高效、精准的生产要求。为此,企业…

报名倒计时!「飞天技术沙龙-CentOS 迁移替换专场」参会指南

为帮助广大用户诊断 CentOS 迁移替换过程中的疑难杂症,「飞天技术沙龙-CentOS 迁移替换专场」将于 5 月 29 日(周三)在北京举办,将围绕如何在确保服务的连续性和稳定性的前提下实现平滑迁移及如何最大限度地利用现有资源前提下确保…

【LeetCode】【9】回文数(1047字)

文章目录 [toc]题目描述样例输入输出与解释样例1样例2样例3 提示进阶Python实现 个人主页:丷从心 系列专栏:LeetCode 刷题指南:LeetCode刷题指南 题目描述 给一个整数x,如果x是一个回文整数,返回true;否…

春秋云境CVE-2018-7422

简介 WordPress Plugin Site Editor LFI 正文 1.进入靶场 2.漏洞利用 /wp-content/plugins/site-editor/editor/extensions/pagebuilder/includes/ajax_shortcode_pattern.php?ajax_path/../../../../../../flag看别人wp做的。不懂怎么弄的,有没有大佬讲一下的

科技引领未来:高速公路可视化

高速公路可视化监控系统利用实时视频、传感器数据和大数据分析,通过图扑 HT 可视化展示交通流量、车速、事故和路况信息。交通管理人员可以实时监控、快速响应突发事件,并优化交通信号和指挥方案。这一系统不仅提高了道路安全性和车辆通行效率&#xff0…

由于找不到d3dx9_39.dll,无法继续执行代码的5种解决方法

在现代科技发展的时代,电脑已经成为我们生活中不可或缺的一部分。然而,由于各种原因,我们可能会遇到一些电脑问题,其中之一就是“d3dx9_39.dll丢失”。这个问题可能会导致我们在运行某些游戏或应用程序时遇到错误提示,…

第53期|GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…

07_Servlet

Servlet 一 Servlet简介 1.1 动态资源和静态资源 静态资源 无需在程序运行时通过代码运行生成的资源,在程序运行之前就写好的资源. 例如:html css js img ,音频文件和视频文件 动态资源 需要在程序运行时通过代码运行生成的资源,在程序运行之前无法确定的数据,运行时动态生成…

洛谷 CF1209D Cow and Snacks

题目来源于:洛谷 题目本质:并查集 解题思路: 我们以每种化为一个点,以每个客人喜欢的两朵花给两朵花连一条无向边。则会出现一定数目的连通块,连通块总个数为 ans。 对每个连通块进行分析:第一个客人买走…

重大新闻! AUS GLOBAL 上线积分商城

AUS Global Mall:概述 AUS Global Mall是由AUS Global ,一家外汇经纪公司推出的令人兴奋的新在线商店。作为一个尊贵的客户,你现在可以获得广泛的产品和服务,可以通过积分兑换。通过AUS Global Mall,我们旨在为您提供…

软考高项 各章节知识点【细】

文章目录 前五章项目管理概论项目立项管理项目整合管理范围管理进度管理成本管理质量管理资源管理沟通管理风险管理采购管理干系人管理绩效域配置与变更管理招投标、政府采购 前五章 数字经济是继农业经济、工业经济之后的主要经济形态,是以数据资源为关键要素&…