Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(十) 使用 LoRA 微调常见问题答疑

LlaMA 3 系列博客

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (一)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (二)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (三)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (四)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (五)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (六)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (七)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (八)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (九)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (十)

构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(一)

构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(二)

构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(三)

构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(四)

构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(五)

你好 GPT-4o!

大模型标记器之Tokenizer可视化(GPT-4o)

大模型标记器 Tokenizer之Byte Pair Encoding (BPE) 算法详解与示例

大模型标记器 Tokenizer之Byte Pair Encoding (BPE)源码分析

大模型之自注意力机制Self-Attention(一)

大模型之自注意力机制Self-Attention(二)

大模型之自注意力机制Self-Attention(三)

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (十一)

Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (一)

Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (二)

Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (三)

Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (四)

Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (五)

Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话(一)

Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话(二)

Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话(三)

大模型之深入理解Transformer位置编码(Positional Embedding)

大模型之深入理解Transformer Layer Normalization(一)

大模型之深入理解Transformer Layer Normalization(二)

大模型之深入理解Transformer Layer Normalization(三)

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(一)初学者的起点

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(二)矩阵操作的演练

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(三)初始化一个嵌入层

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(四)预先计算 RoPE 频率

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(五)预先计算因果掩码

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(六)首次归一化:均方根归一化(RMSNorm)

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(七) 初始化多查询注意力

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(八)旋转位置嵌入

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(九) 计算自注意力

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(十) 残差连接及SwiGLU FFN

大模型之一步一步使用PyTorch编写Meta的Llama 3代码(十一)输出概率分布 及损失函数计算

大模型之使用PyTorch编写Meta的Llama 3实际功能代码(一)加载简化分词器及设置参数

大模型之使用PyTorch编写Meta的Llama 3实际功能代码(二)RoPE 及注意力机制

大模型之使用PyTorch编写Meta的Llama 3实际功能代码(三) FeedForward 及 Residual Layers

大模型之使用PyTorch编写Meta的Llama 3实际功能代码(四) 构建 Llama3 类模型本身

大模型之使用PyTorch编写Meta的Llama 3实际功能代码(五)训练并测试你自己的 minLlama3

大模型之使用PyTorch编写Meta的Llama 3实际功能代码(六)加载已经训练好的miniLlama3模型

Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (四)

Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (五)

Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (六)

Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (七)

Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (八)

Llama 3 模型家族构建安全可信赖企业级AI应用之 CyberSecEval 2:量化 LLM 安全和能力的基准(一)

Llama 3 模型家族构建安全可信赖企业级AI应用之 CyberSecEval 2:量化 LLM 安全和能力的基准(二)

Llama 3 模型家族构建安全可信赖企业级AI应用之 CyberSecEval 2:量化 LLM 安全和能力的基准(三)

Llama 3 模型家族构建安全可信赖企业级AI应用之 CyberSecEval 2:量化 LLM 安全和能力的基准(四)

Llama 3 模型家族构建安全可信赖企业级AI应用之code shield(一)Code Shield简介

Llama 3 模型家族构建安全可信赖企业级AI应用之code shield(二)防止 LLM 生成不安全代码

Llama 3 模型家族构建安全可信赖企业级AI应用之code shield(三)Code Shield代码示例

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(一) LLaMA-Factory简介

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(二) LLaMA-Factory训练方法及数据集

大模型之Ollama:在本地机器上释放大型语言模型的强大功能

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(三)通过Web UI微调

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(四)通过命令方式微调

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(五) 基于已训练好的模型进行推理

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(六)Llama 3 已训练的大模型合并LoRA权重参数

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(七) 使用 LoRA 微调 LLM 的实用技巧

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(八) 使用 LoRA 微调 LLM 的实用技巧

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(九) 使用 LoRA 微调常见问题答疑

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(十) 使用 LoRA 微调常见问题答疑

Q5: 如何避免过拟合?

通常,较大的 r 值可能导致更多的过拟合,因为它决定了可训练参数的数量。如果模型出现过度拟合,减小 r 值或增加数据集大小是首先需要探索的选项。此外,你可以尝试增加AdamW或SGD优化器中的权重衰减率,并且可以考虑增加LoRA层的丢弃值dropout 。

尚未在实验中探索的LoRA丢弃dropout 参数(使用了固定的0.05丢弃率),这是未来研究的一个有趣话题。

Q6:其他优化器怎么样?

其他有趣的 LLM 优化器值得未来探索。其中一个优化器是5 月份发布的Sophia:用于语言模型预训练的可扩展随机二阶优化器。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Sophia 是一种二阶优化算法,有望对 LLM 特别有吸引力,因为在 LLM 中 Adam 和 AdamW 通常占主导地位。据该论文称,与 Adam 相比,Sophia 的速度快了 2 倍,使用 Sophia 训练的模型可以获得更好的建模性能。简而言之,Sophia 通过梯度曲率而不是像 Adam 那样通过梯度方差来规范梯度。

Q7:还有哪些因素影响内存使用?

除了精度和量化设置、模型大小、批量大小和可训练的 LoRA 参数数量之外,数据集也会影响内存使用情况。

请注意,Llama 2 的块大小为 4048。例如,如果 LLM 的块大小为 4048 个 token,则它可以一次处理最多 4048 个 token 的序列。但是,较短的训练序列可以节省大量内存,因为可以屏蔽未来的 token。

例如,Alpaca 数据集相对较小,最大长度为 1304 个标记。

在这里插入图片描述

当 尝试长度高达 2048 个标记的其他数据集时, 注意到内存使用量从 17.86 GB 增加到了 26.96 GB。

Q8:与完全微调和 RLHF 相比如何?

没有进行任何 RLHF 实验(对于那些好奇的人,在这里介绍了 RLHF ),但确实考虑过完全微调。完全微调至少需要 2 个 GPU,并在 3.5 小时内完成,每个 GPU 使用 36.66 GB。然而,基准测试结果不是很好,可能是由于过度拟合或超参数不理想。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Llama 2 中的RLHF

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

RLHF 替代方案

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

问题 9:LoRA 权重可以合并吗?

是的,可以组合多组 LoRA 权重。在训练期间, 将 LoRA 权重与预训练权重分开,并在每次前向传递期间添加它们。

但是,如果 实际应用程序包含多组 LoRA 权重,例如,每个应用程序客户一组,则最好单独存储这些权重以节省磁盘空间。但是,可以在训练后将预训练权重与 LoRA 权重合并以创建单个模型。这样, 就不必在每次前向传递中应用 LoRA 权重:

weight += (lora_B @ lora_A) * scaling

所示的权重更新并保存合并(添加)的权重。

类似地, 可以继续添加多个 LoRA 权重集:

weight += (lora_B_set1 @ lora_A_set1) * scaling_set1
weight += (lora_B_set2 @ lora_A_set2) * scaling_set2
weight += (lora_B_set3 @ lora_A_set3) * scaling_set3
...

还没有做过实验来评估这种方法的性能,但从技术上讲,这已经可以通过Lit-GPT 中提供的scripts/merge_lora.py脚本来实现。

# Copyright Lightning AI. Licensed under the Apache License 2.0, see LICENSE file."""This script merges the LoRA weights with the base model"""
from pathlib import Path
from typing import Any, Dict, Optional, Tupleimport lightning as L
import torch
import yamlfrom litgpt.lora import GPT, Config, lora_filter, merge_lora_weights
from litgpt.utils import CLI, check_valid_checkpoint_dirdef merge_lora(checkpoint_dir: Path, pretrained_checkpoint_dir: Optional[Path] = None, precision: Optional[str] = None
) -> None:"""Merges the LoRA weights with the base model. See ``litgpt finetune lora``.Creates a new ``lit_model.pth`` file by merging the LoRA weights (``lit_model.pth.lora``)with the original checkpoint weights.Args:checkpoint_dir: Path to the checkpoint directory with trained LoRA weights, which is the output of``litgpt finetune lora``.pretrained_checkpoint_dir: Optional path to the checkpoint directory with the weights of the base modelcorresponding to the LoRA checkpoint. By default, this will automatically be inferred from the metadatain the given `checkpoint_dir` directory. Only set this if the base model's checkpoint directoryhas moved or was renamed.precision: Optional precision setting to instantiate the model weights in. By default, this willautomatically be inferred from the metadata in the given ``checkpoint_dir`` directory."""check_valid_checkpoint_dir(checkpoint_dir, model_filename="lit_model.pth.lora")if pretrained_checkpoint_dir is not None:check_valid_checkpoint_dir(pretrained_checkpoint_dir)if (checkpoint_dir / "lit_model.pth").is_file():print("LoRA weights have already been merged in this checkpoint.")returnlora_params, pretrained_checkpoint_dir, lora_precision = load_lora_metadata(checkpoint_dir)precision = precision if precision is not None else lora_precisionfabric = L.Fabric(devices=1, precision=precision, accelerator="cpu")config = Config.from_file(checkpoint_dir / "model_config.yaml", **lora_params)with fabric.init_module(), torch.device("meta"):model = GPT(config)# we don't care about these to perform mergingmodel.cos = Nonemodel.sin = Nonelora_path = checkpoint_dir / "lit_model.pth.lora"pretrained_checkpoint = torch.load(str(pretrained_checkpoint_dir / "lit_model.pth"), mmap=True)lora_checkpoint = torch.load(str(lora_path), mmap=True)lora_checkpoint = lora_checkpoint.get("model", lora_checkpoint)# Merge LoRA weights into the base modelpretrained_checkpoint.update(lora_checkpoint)model.load_state_dict(pretrained_checkpoint, assign=True)# since LoRA finetuning only saves the LoRA weights, we treat the lora weights dtype as the expected dtypelora_dtype = next(iter(lora_checkpoint.values())).dtypemodel.to(dtype=lora_dtype, device="cpu")merge_lora_weights(model)# Remove LoRA parameters and the LoRA linear substringstate_dict = {k.replace("linear.", ""): v for k, v in model.state_dict().items() if not lora_filter(k, v)}save_path = checkpoint_dir / "lit_model.pth"torch.save(state_dict, save_path)fabric.print(f"Saved merged weights to {str(checkpoint_dir / 'lit_model.pth')!r}")def load_lora_metadata(checkpoint_dir: Path) -> Tuple[Dict[str, Any], Path, Optional[str]]:hparams_file = checkpoint_dir / "hyperparameters.yaml"if not hparams_file.is_file():raise FileNotFoundError(f"The path {str(hparams_file)!r} is not a valid checkpoint directory. It is missing a"f" `hyperparameters.yaml` file. Please point to the checkpoint directory that was produced by"f" the `litgpt/finetune/lora.py` script.")with open(hparams_file, "r", encoding="utf-8") as file:hparams = yaml.safe_load(file)lora_params = {k: v for k, v in hparams.items() if k.startswith("lora_")}pretrained_checkpoint_dir = Path(hparams["checkpoint_dir"])precision = hparams.get("precision")return lora_params, pretrained_checkpoint_dir, precision

这段代码是一个Python脚本,用于将LoRA(Low-Rank Adaptation)权重与基础模型合并。以下是代码的详细说明:

  1. 导入必要的库

    • pathlib.Path 用于文件路径操作。
    • typing 中的 Any, Dict, Optional, Tuple 用于类型注解。
    • lightning as L 是一个用于简化PyTorch模型训练的库。
    • torch 是PyTorch库,用于深度学习。
    • yaml 用于读取YAML配置文件。
    • litgpt.lora 中包含LoRA相关的类和函数。
    • litgpt.utils 中包含一些实用工具。
  2. 定义 merge_lora 函数

    • 参数:
      • checkpoint_dir:包含训练好的LoRA权重的目录路径。
      • pretrained_checkpoint_dir:可选参数,基础模型权重的目录路径。
      • precision:可选参数,用于指定模型权重的精度。
    • 功能:合并LoRA权重与基础模型权重,创建新的 lit_model.pth 文件。
  3. 检查目录有效性

    • 使用 check_valid_checkpoint_dir 函数检查 checkpoint_dir 是否包含 lit_model.pth.lora 文件。
  4. 加载LoRA元数据

    • 调用 load_lora_metadata 函数,从 hyperparameters.yaml 文件中加载LoRA参数、预训练模型的目录和精度设置。
  5. 初始化模型

    • 使用 L.Fabric 初始化模型训练环境。
    • model_config.yaml 文件加载模型配置,并创建 GPT 模型实例。
  6. 加载权重

    • 加载预训练模型权重和LoRA权重。
  7. 合并权重

    • 将LoRA权重合并到预训练模型权重中。
  8. 更新模型状态字典

    • 移除LoRA参数和线性子字符串,更新模型的状态字典。
  9. 保存合并后的权重

    • 将更新后的模型状态字典保存为 lit_model.pth 文件。
  10. 定义 load_lora_metadata 函数

    • 参数:checkpoint_dir
    • 功能:从 hyperparameters.yaml 文件中加载LoRA参数、预训练模型的目录和精度设置。
    • 返回值:一个包含LoRA参数、预训练模型目录和精度设置的元组。

整体来看,这段代码是一个自动化脚本,用于将LoRA权重与基础模型权重合并,以便在微调后使用。它通过读取配置文件、加载权重、合并权重和保存新模型权重的步骤来实现这一过程。

Q10:逐层最优秩自适应怎么样?

为了简单起见,我们通常训练深度神经网络时,每一层都使用相同的学习率,而学习率就是我们需要优化的超参数。更进一步说,我们还可以为每个层选择不同的学习率(在 PyTorch 中,这并不太复杂)。然而,在实践中很少这样做,因为它会增加额外的开销,而且在训练深度神经网络时通常已经有太多的参数需要调整。

类似于为不同的层选择不同的学习率, 也可以为不同的层选择不同的 LoRA 等级。我还没有找到任何关于此的实验,但详细介绍此方法的文档是“逐层最佳等级自适应”(也缩写为 LORA)。从理论上讲,这在实践中听起来是个好主意。然而,它也增加了优化超参数时的大量选择。

这本杂志是个人热情项目,不提供直接报酬。但是,对于那些希望支持作者的人,请考虑购买作者的一本书。如果您发现它们有见地且有益,请随时将它们推荐给您的朋友和同事。

如果大家感兴趣,也欢迎购买Gavin大咖的系列新书。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

大模型技术分享

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

《企业级生成式人工智能LLM大模型技术、算法及案例实战》线上高级研修讲座

模块一:Generative AI 原理本质、技术内核及工程实践周期详解
模块二:工业级 Prompting 技术内幕及端到端的基于LLM 的会议助理实战
模块三:三大 Llama 2 模型详解及实战构建安全可靠的智能对话系统
模块四:生产环境下 GenAI/LLMs 的五大核心问题及构建健壮的应用实战
模块五:大模型应用开发技术:Agentic-based 应用技术及案例实战
模块六:LLM 大模型微调及模型 Quantization 技术及案例实战
模块七:大模型高效微调 PEFT 算法、技术、流程及代码实战进阶
模块八:LLM 模型对齐技术、流程及进行文本Toxicity 分析实战
模块九:构建安全的 GenAI/LLMs 核心技术Red Teaming 解密实战
模块十:构建可信赖的企业私有安全大模型Responsible AI 实战 

Llama3关键技术深度解析与构建Responsible AI、算法及开发落地实战

1、Llama开源模型家族大模型技术、工具和多模态详解:学员将深入了解Meta Llama 3的创新之处,比如其在语言模型技术上的突破,并学习到如何在Llama 3中构建trust and safety AI。他们将详细了解Llama 3的五大技术分支及工具,以及如何在AWS上实战Llama指令微调的案例。
2、解密Llama 3 Foundation Model模型结构特色技术及代码实现:深入了解Llama 3中的各种技术,比如Tiktokenizer、KV Cache、Grouped Multi-Query Attention等。通过项目二逐行剖析Llama 3的源码,加深对技术的理解。
3、解密Llama 3 Foundation Model模型结构核心技术及代码实现:SwiGLU Activation Function、FeedForward Block、Encoder Block等。通过项目三学习Llama 3的推理及Inferencing代码,加强对技术的实践理解。
4、基于LangGraph on Llama 3构建Responsible AI实战体验:通过项目四在Llama 3上实战基于LangGraph的Responsible AI项目。他们将了解到LangGraph的三大核心组件、运行机制和流程步骤,从而加强对Responsible AI的实践能力。
5、Llama模型家族构建技术构建安全可信赖企业级AI应用内幕详解:深入了解构建安全可靠的企业级AI应用所需的关键技术,比如Code Llama、Llama Guard等。项目五实战构建安全可靠的对话智能项目升级版,加强对安全性的实践理解。
6、Llama模型家族Fine-tuning技术与算法实战:学员将学习Fine-tuning技术与算法,比如Supervised Fine-Tuning(SFT)、Reward Model技术、PPO算法、DPO算法等。项目六动手实现PPO及DPO算法,加强对算法的理解和应用能力。
7、Llama模型家族基于AI反馈的强化学习技术解密:深入学习Llama模型家族基于AI反馈的强化学习技术,比如RLAIF和RLHF。项目七实战基于RLAIF的Constitutional AI。
8、Llama 3中的DPO原理、算法、组件及具体实现及算法进阶:学习Llama 3中结合使用PPO和DPO算法,剖析DPO的原理和工作机制,详细解析DPO中的关键算法组件,并通过综合项目八从零开始动手实现和测试DPO算法,同时课程将解密DPO进阶技术Iterative DPO及IPO算法。
9、Llama模型家族Safety设计与实现:在这个模块中,学员将学习Llama模型家族的Safety设计与实现,比如Safety in Pretraining、Safety Fine-Tuning等。构建安全可靠的GenAI/LLMs项目开发。
10、Llama 3构建可信赖的企业私有安全大模型Responsible AI系统:构建可信赖的企业私有安全大模型Responsible AI系统,掌握Llama 3的Constitutional AI、Red Teaming。

解码Sora架构、技术及应用

一、为何Sora通往AGI道路的里程碑?
1,探索从大规模语言模型(LLM)到大规模视觉模型(LVM)的关键转变,揭示其在实现通用人工智能(AGI)中的作用。
2,展示Visual Data和Text Data结合的成功案例,解析Sora在此过程中扮演的关键角色。
3,详细介绍Sora如何依据文本指令生成具有三维一致性(3D consistency)的视频内容。 4,解析Sora如何根据图像或视频生成高保真内容的技术路径。
5,探讨Sora在不同应用场景中的实践价值及其面临的挑战和局限性。

二、解码Sora架构原理
1,DiT (Diffusion Transformer)架构详解
2,DiT是如何帮助Sora实现Consistent、Realistic、Imaginative视频内容的?
3,探讨为何选用Transformer作为Diffusion的核心网络,而非技术如U-Net。
4,DiT的Patchification原理及流程,揭示其在处理视频和图像数据中的重要性。
5,Conditional Diffusion过程详解,及其在内容生成过程中的作用。
三、解码Sora关键技术解密
1,Sora如何利用Transformer和Diffusion技术理解物体间的互动,及其对模拟复杂互动场景的重要性。
2,为何说Space-time patches是Sora技术的核心,及其对视频生成能力的提升作用。
3,Spacetime latent patches详解,探讨其在视频压缩和生成中的关键角色。
4,Sora Simulator如何利用Space-time patches构建digital和physical世界,及其对模拟真实世界变化的能力。
5,Sora如何实现faithfully按照用户输入文本而生成内容,探讨背后的技术与创新。
6,Sora为何依据abstract concept而不是依据具体的pixels进行内容生成,及其对模型生成质量与多样性的影响。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

进程和用户管理

查看进程的命令 ps top pstree 发送信号命令 kill 使用是后加-l 用户管理命令 添加用户:sudo adduser 用户名 修改组:sudo usermod -G 用户名1 用户名2 修改家目录:sudo usermod -d /home/用户名 -m 用户名 删除用户名:sudo deluser --remove -home 用户名

Docker 快速搭建 MongoDB 4.x 集群(一主一从)

目录 1. 生成 mongo-file2. 启动主节点3. 启动从节点4. 配置副本集5. 注意事项 环境:MongoDB 4.0.25,Alma Linux(建议使用 Linux) 部署的时候是在同一个及其上操作的,实际可以放在不同机器上。 截止到 2024年05月&…

JAVA学习·String类的常用方法

String 类及其创建 String 类的创建 String 类是 Java 内置的一个类,其完全限定类名是java.lang.String。想要创建一个字符串有多重方式,比如创建字符串"Hello": String s1 "Hello"; // 字面量创建 String s2 new St…

在组件外使用pinia的坑

来源 项目包含很多静态的类型,我新建了一个js来专门管理和使用这些类型,如下图这种,有一部分是固定的,千年不变,有一部分是偶尔会变(需要后台获取),还有一部分是要登录后才能拿到的…

python PyQt5 数字时钟程序

效果图: 概述 本文档将指导您如何使用Python的PyQt5库创建一个简单的时钟程序。该程序将显示当前时间,并具有以下特性: 始终在最前台显示。窗口可拖动。鼠标右键点击窗口可弹出退出菜单。时间标签具有红色渐变效果。窗口初始化时出现在屏幕…

骨折分类数据集1129张10类别

数据集类型:图像分类用,不可用于目标检测无标注文件 数据集格式:仅仅包含jpg图片,每个类别文件夹下面存放着对应图片 图片数量(jpg文件个数):1129 分类类别数:10 类别名称:["avulsion_fracture",…

鸿蒙OS开发:【一次开发,多端部署】(导航栏) 导航栏

一多导航栏 介绍 本示例展示了导航组件在不同设备形态下的样式。 在sm设备上,以tabs形式展示,内容、导航为上下样式布局,通过点击底部tabs切换内容;在md/lg设备上,以[SideBarContainer]形式展示,内容、导…

RocketMQ学习(1) 快速入门

mq的一些前置知识和概念知识可以看这篇文章——SpringCloud入门(3) RabbitMQ,比如常见mq的对比等等,这篇文章不再赘述。 目录 RocketMQ概念、安装与配置docker配置 RocketMQ快速入门**同步消息消费模式 **异步消息*单向消息**延迟消息*顺序消息批量消息事…

大工作量LUAD代谢重编程模型多组学(J Transl Med)

目录 1,单细胞早期、晚期和转移性 LUAD 的细胞动力学变化 2,细胞代谢重编程介导的LUAD驱动恶性转移的异质性 3,模型构建 S-MMR评分管线构建 4,S-MMR 模型的预后评估 5, 还开发了S-MMR 评分网络工具 6&#xff0c…

Windows 使用技巧

Windows 使用技巧 ①局域网内共享文件 ②CTRL Y 和 CTRL Z ①局域网内共享文件 第一步: 选择要共享的文件(分享方操作) 第二步: 右键打开属性,选择共享(分享方操作) 第三步: …

简单得阴影引导实现

效果如下: 实现方式: 1、引入三方库: implementation io.github.razerdp:BasePopup:3.2.0 2、代码实现 class NewUserGuide3Popup : BasePopupWindow {constructor(activity: Activity) : super(activity)constructor(context: Context) : super(con…

js检验一个字符串是否是正确时间格式的工具方法

js检验一个字符串是否是正确时间格式的工具方法 (()> {/*** 检验字符串是否为时间格式* param {String} date 需要检验的时间格式* returns true 为时间格式,false 为非时间格式*/const isTimaFormat (date) > {if(!date) return false;try{const tempTime …

基于maxkey接入jeecgboot并实现账户同步

1. 注册应用 1.1 在统一认证中心注册第三方应用 1.1.1 填写应用名和登录地址 1.1.2 填写认证地址授权方式和作用域 1.1.3 选择权限范围并提交 1.2 配置访问权限 1.2.1 指定用户组 1.1.2 选择注册的应用 1.1.3 在单点登录认证页面查看添加的应用 1.3 同步一个第三方应用的账号…

VolWeb:集中式增强型数字取证内存分析平台

关于VolWeb VolWeb是一款最新开发的集中式增强型数字取证内存分析平台,该平台基于Volatility 3框架实现其功能,该工具旨在辅助广大研究人员执行安全分析和事件应急响应等任务。 VolWeb可以提供集中式、可视化的增强型网络应用程序,并提高安全…

车机壁纸生成解决方案,定制化服务,满足个性化需求

在数字化与智能化浪潮的推动下,汽车内部设计已不再仅仅满足于基本功能的需求,更追求为用户带来前所未有的视觉享受与沉浸式体验。美摄科技,凭借其在图像生成与处理领域的深厚积累,推出了一款创新的车机壁纸生成解决方案&#xff0…

代码随想录——左叶子之和(Leetcode404)

题目链接 BFS 队列 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right)…

磁珠笔记汇总

磁珠笔记汇总 磁珠是和电感很相似的器件。 电感磁珠单位亨(H)欧姆(Ω)是否储能存储能量消耗高频能量应用场景通常用于开关电源吸收高频,EMC保护如何看待损耗使用电感时希望损耗越小越好使用磁珠时是利用其损耗来消耗不需要的高频分量 一、磁珠的工作原理 磁珠与…

【Linux】解决误操作libc.so.6导致的问题,补充:升级glibc注意事项

千万不要轻易动/usr/lib64/libc.so.6。 glibc是Linux系统中最底层的api,Linux几乎所有运行库都依赖glibc。/usr/lib64/libc.so.6属于glibc,在centos7中是个软链接。 一旦误删或误操作libc.so.6,或者glibc新版本不兼容等原因,都可…

鸿蒙ArkUI-X跨语言调用说明:【平台桥接(@arkui-x.bridge)】

平台桥接(arkui-x.bridge) 简介 平台桥接用于客户端(ArkUI)和平台(Android或iOS)之间传递消息,即用于ArkUI与平台双向数据传递、ArkUI侧调用平台的方法、平台调用ArkUI侧的方法。 以Android平台为例,Ark…

揭开 SOCKS5 有哪些强大的功能?

在在线隐私和安全领域,SOCKS5 是一种多功能且功能强大的协议,为用户提供了一种无缝的方式来加密他们的互联网流量、绕过防火墙并以增强的匿名性和灵活性访问网络。无论您是担心在线监控、地理封锁还是数据隐私,了解如何利用 SOCKS5 的功能都可…