CogVideo模型部署教程

一、 介绍

CogVideo 是一款在开源社区 GitHub 上备受瞩目的 AI 驱动视频生成解决方案,其核心技术依托于前沿的深度学习算法和模型架构。以下是对 CogVideo 的详细介绍:

1. 模型介绍

CogVideoX是 清影 同源的开源版本视频生成模型。
下表展示我们提供的视频生成模型相关基础信息:

模型名CogVideoX-2BCogVideoX-5B
模型介绍入门级模型,兼顾兼容性。运行,二次开发成本低。视频生成质量更高,视觉效果更好的更大尺寸模型。
推理精度FP16*(推荐), BF16, FP32,FP8*(E4M3,E5M2),INT8,不支持INT4BF16(推荐), FP16, FP32,FP8*(E4M3,E5M2),INT8,不支持INT4
单GPU显存消耗FP16: 18GB using SAT / 12.5GB* using diffusers
INT8: 7.8GB* using diffusers with torchao
BF16: 26GB using SAT / 20.7GB* using diffusers
INT8: 11.4GB* using diffusers with torchao
多GPU推理显存消耗FP16: 10GB* using diffusersBF16: 15GB* using diffusers
推理速度
(Step = 50)
FP16: ~90* sBF16: ~180* s
微调精度FP16BF16
微调显存消耗(每卡)47 GB (bs=1, LORA)
61 GB (bs=2, LORA)
62GB (bs=1, SFT)
63 GB (bs=1, LORA)
80 GB (bs=2, LORA)
75GB (bs=1, SFT)
提示词语言English*
提示词长度上限226 Tokens
视频长度6 秒
帧率8 帧 / 秒
视频分辨率720 * 480,不支持其他分辨率(含微调)
位置编码3d_sincos_pos_embed3d_rope_pos_embed
下载链接 (Diffusers)🤗 HuggingFace
🤖 ModelScope
🟣 WiseModel
🤗 HuggingFace
🤖 ModelScope
🟣 WiseModel
下载链接 (SAT)SAT

数据解释

  • 使用 diffusers 库进行测试时,启用了 enable_model_cpu_offload() 选项 和 pipe.vae.enable_tiling() 优化,该方案未测试在非NVIDIA A100 / H100 外的设备上的实际显存 / 内存占用。通常,该方案可以适配于所有 NVIDIA 安培架构以上的设备。若关闭优化,显存占用会成倍增加,峰值显存约为表格的3倍。
  • 多GPU推理时,需要关闭 enable_model_cpu_offload() 优化。
  • 使用 INT8 模型会导致推理速度降低,此举是为了满足显存较低的显卡能正常推理并保持较少的视频质量损失,推理速度大幅降低。
  • 2B 模型采用 FP16 精度训练, 5B模型采用 BF16 精度训练。我们推荐使用模型训练的精度进行推理。
  • PytorchAO 和 Optimum-quanto可以用于量化文本编码器、Transformer 和 VAE 模块,以降低 CogVideoX 的内存需求。这使得在免费的 T4 Colab 或更小显存的 GPU上运行模型成为可能!同样值得注意的是,TorchAO 量化完全兼容 torch.compile,这可以显著提高推理速度。在 NVIDIA H100及以上设备上必须使用 FP8 精度,这需要源码安装 torchtorchaodiffusers 和 accelerate Python包。建议使用 CUDA 12.4
  • 推理速度测试同样采用了上述显存优化方案,不采用显存优化的情况下,推理速度提升约10%。 只有 diffusers版本模型支持量化。
  • 模型仅支持英语输入,其他语言可以通过大模型润色时翻译为英语。

2. 技术特点

  • 大规模预训练模型 :CogVideo 是目前最大的通用领域文本到视频生成预训练模型,含有 94 亿参数。它通过将预训练文本到图像生成模型(如 CogView2)有效地利用到文本到视频生成模型中,并采用了多帧率分层训练策略,能够理解和汲取文本中的深层次语义信息,生成连续、清晰且视觉质量极高的视频片段。
  • 先进的动态场景构建 :CogVideo 具备先进的动态场景构建功能,能够根据用户提供的详细文本描述,运用 AI 驱动的 3D 环境生成及动画编排技术,自动创建丰富多变且高度逼真的三维空间与角色动作序列。
  • 跨模态信息融合 :除了视频画面的生成,CogVideo 还集成了语音合成与背景音乐等多种感官元素的智能生成机制,实现跨模态的信息深度融合。系统能够依据文本内容自动生成情感匹配的声音对话与旁白,并搭配适宜的背景音乐和音效。
  • 高效显存利用与多尺寸模型支持 :CogVideoX 系列模型,如 CogVideoX-2B,在 FP-16 精度下推理仅需 18GB 显存,微调需要 40GB,使得单张高端显卡即可完成复杂任务。同时,CogVideoX 包含多个不同尺寸的模型,满足从个人创作到企业级应用的不同需求。

3. 应用场景

CogVideo 的应用场景广泛,包括但不限于以下几个方面:

  1. 影视创作 :影视创作人员可以使用 CogVideo 将剧本概念快速转化为可视化演示,直观评估剧情走向和场景设置是否合理。
  2. 教育 :教育工作者可利用 CogVideo 批量制作互动性强、内容生动的教学视频,提升在线教育的吸引力与教学质量。
  3. 广告与营销 :品牌或广告公司通过 CogVideo 可根据文案直接生成多种风格的广告视频,在节省成本的同时提高创意灵活性。
  4. 社交媒体与短视频制作 :社交媒体博主、短视频制作者借助 CogVideo 将创作的文字内容迅速转换为引人入胜的视频故事,吸引更多的粉丝关注。

4. 未来展望

随着 AI 技术的不断发展,CogVideo 将继续在视频生成领域发挥重要作用。它有望在未来开启一个全新的数字化视频创作时代,为新闻报道、教育辅导、广告宣传、影视娱乐等多个行业带来颠覆性的内容创作体验。同时,CogVideo 作为一个开源项目,将不断吸引全球开发者共同参与技术迭代与功能优化,推动视频生成技术领域的革新与发展。

二、部署过程

基础环境最低要求说明:

环境名称版本信息1
Ubuntu22.04.4 LTS
CudaV12.1.105
Python3.12
NVIDIA CorporationRTX 3090 可以进行命令行推理,无法使用 Gradio 页面Gradio 页面需要 32G 以上的显存(比如v100)

1. 更新基础软件包

查看系统版本信息

# 查看系统版本信息,包括ID(如ubuntu、centos等)、版本号、名称、版本号ID等
cat /etc/os-release

1726627581255_image.png

配置 apt 国内源

# 更新软件包列表
apt-get update

这个命令用于更新本地软件包索引。它会从所有配置的源中检索最新的软件包列表信息,但不会安装或升级任何软件包。这是安装新软件包或进行软件包升级之前的推荐步骤,因为它确保了您获取的是最新版本的软件包。

# 安装 Vim 编辑器
apt-get install -y vim

这个命令用于安装 Vim 文本编辑器。-y 选项表示自动回答所有的提示为“是”,这样在安装过程中就不需要手动确认。Vim 是一个非常强大的文本编辑器,广泛用于编程和配置文件的编辑。

为了安全起见,先备份当前的 sources.list 文件之后,再进行修改:

# 备份现有的软件源列表
cp /etc/apt/sources.list /etc/apt/sources.list.bak

这个命令将当前的 sources.list 文件复制为一个名为 sources.list.bak 的备份文件。这是一个好习惯,因为编辑 sources.list 文件时可能会出错,导致无法安装或更新软件包。有了备份,如果出现问题,您可以轻松地恢复原始的文件。

# 编辑软件源列表文件
vim /etc/apt/sources.list

这个命令使用 Vim 编辑器打开 sources.list 文件,以便您可以编辑它。这个文件包含了 APT(Advanced Package Tool)用于安装和更新软件包的软件源列表。通过编辑这个文件,您可以添加新的软件源、更改现有软件源的优先级或禁用某些软件源。

在 Vim 中,您可以使用方向键来移动光标,

i 键进入插入模式(可以开始编辑文本),

Esc 键退出插入模式,

:wq 命令保存更改并退出 Vim,

或 :q! 命令不保存更改并退出 Vim。

编辑 sources.list 文件时,请确保您了解自己在做什么,特别是如果您正在添加新的软件源。错误的源可能会导致软件包安装失败或系统安全问题。如果您不确定,最好先搜索并找到可靠的源信息,或者咨询有经验的 Linux 用户。

1726627632814_image.png

使用 Vim 编辑器打开 sources.list 文件,复制以下代码替换 sources.list里面的全部代码,配置 apt 国内阿里源。

deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse

1726627649314_image.png

安装常用软件和工具

# 更新源列表,输入以下命令:
apt-get update

# 更新系统软件包,输入以下命令:
apt-get upgrade

# 安装常用软件和工具,输入以下命令:
apt-get -y install vim wget git git-lfs unzip lsof net-tools gcc cmake build-essential

出现以下页面,说明国内apt源已替换成功,且能正常安装apt软件和工具

1726627670779_image.png

2. 安装 NVIDIA CUDA Toolkit 12.1

  • 下载 CUDA Keyring :
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb

这个命令用于下载 CUDA 的 GPG 密钥环,它用于验证 CUDA 软件包的签名。这是确保软件包安全性的一个重要步骤。

  • 安装 CUDA Keyring :
dpkg -i cuda-keyring_1.0-1_all.deb

使用 dpkg 安装下载的密钥环。这是必要的,以便 apt 能够验证从 NVIDIA 仓库下载的软件包的签名。

1726627689852_image.png

  • 删除旧的 apt 密钥(如果必要) :
apt-key del 7fa2af80

这一步可能不是必需的,除非您知道 7fa2af80 是与 CUDA 相关的旧密钥,并且您想从系统中删除它以避免混淆。通常情况下,如果您只是安装 CUDA 并使用 NVIDIA 提供的最新密钥环,这一步可以跳过。

  • 更新 apt 包列表 :
apt-get update

更新 apt 的软件包列表,以便包括刚刚通过 cuda-keyring 添加的 NVIDIA 仓库中的软件包。

  • 安装 CUDA Toolkit :
apt-get -y install cuda-toolkit-12-1

1726627724243_image.png

出现以下页面,说明 NVIDIA CUDA Toolkit 12.1 安装成功

1726627736357_image.png

注意:这里可能有一个问题。NVIDIA 官方 Ubuntu 仓库中可能不包含直接名为 cuda-toolkit-12-1 的包。通常,您会安装一个名为 cuda 或 cuda-12-1 的元包,它会作为依赖项拉入 CUDA Toolkit 的所有组件。请检查 NVIDIA 的官方文档或仓库,以确认正确的包名。

如果您正在寻找安装特定版本的 CUDA Toolkit,您可能需要安装类似 cuda-12-1 的包(如果可用),或者从 NVIDIA 的官方网站下载 CUDA Toolkit 的 .run 安装程序进行手动安装。

请确保您查看 NVIDIA 的官方文档或 Ubuntu 的 NVIDIA CUDA 仓库以获取最准确的包名和安装指令。

1726627761880_image.png

  • 出现以上情况,需要配置 NVIDIA CUDA Toolkit 12.1 系统环境变量

编辑 ~/.bashrc 文件

# 编辑 ~/.bashrc 文件
vim ~/.bashrc

插入以下环境变量

# 插入以下环境变量
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

1726627785017_image.png

激活 ~/.bashrc 文件

# 激活 ~/.bashrc 文件
source ~/.bashrc

查看cuda系统环境变量

which nvcc
nvcc -V

1726627797367_image.png

3. 安装 Miniconda

  • 下载 Miniconda 安装脚本 :
    • 使用 wget 命令从 Anaconda 的官方仓库下载 Miniconda 的安装脚本。Miniconda 是一个更小的 Anaconda 发行版,包含了 Anaconda 的核心组件,用于安装和管理 Python 包。
  • 运行 Miniconda 安装脚本 :
    • 使用 bash 命令运行下载的 Miniconda 安装脚本。这将启动 Miniconda 的安装过程。
# 下载 Miniconda 安装脚本
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

# 运行 Miniconda 安装脚本
bash Miniconda3-latest-Linux-x86_64.sh

# 初次安装需要激活 base 环境
source ~/.bashrc

按下回车键(enter)

1726627823409_image.png

输入yes

1726627835177_image.png

输入yes

1726627844297_image.png

安装成功如下图所示

1726627852297_image.png

pip配置清华源加速

# 编辑 /etc/pip.conf 文件
vim  /etc/pip.conf

加入以下代码

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

注意事项:

  • 请确保您的系统是 Linux x86_64 架构,因为下载的 Miniconda 版本是为该架构设计的。
  • 在运行安装脚本之前,您可能需要使用 chmod +x Miniconda3-latest-Linux-x86_64.sh 命令给予脚本执行权限。
  • 安装过程中,您将被提示是否同意许可协议,以及是否将 Miniconda 初始化。通常选择 "yes" 以完成安装和初始化。
  • 安装完成后,您可以使用 conda 命令来管理 Python 环境和包。
  • 如果链接无法访问或解析失败,可能是因为网络问题或链接本身的问题。请检查网络连接,并确保链接是最新的和有效的。如果问题依旧,请访问 Anaconda 的官方网站获取最新的下载链接。

4. 从 github 仓库 克隆项目

  • 克隆存储库:

    • git clone https://github.com/THUDM/CogVideo.git
    • 这个命令使用 git clone 从指定的 GitHub 地址克隆 "CodeGeeX4" 项目,默认情况下 Git 会克隆整个项目的所有提交历史。
# 克隆 CogVideo 项目
git clone https://github.com/THUDM/CogVideo.git

1727334361676_9dcd88c1_12276338.png

出现以上页面,说明无法访问GitHub官网,使用 国内镜像 进行项目克隆

# 克隆 CogVideo 项目
git clone https://gitee.com/empty-snow/CogVideo.git

1727334366838_be098a25_12276338.png

出现以上页面即是克隆项目成功!

请注意,如果 git clone https://github.com/THUDM/CogVideo.git 这个链接不存在或者无效,git clone 命令将不会成功克隆项目,并且会报错。确保链接是有效的,并且您有足够的权限访问该存储库。

5. 创建虚拟环境

# 创建一个名为 CogVideo 的新虚拟环境,并指定 Python 版本为 3.12
conda create --name CogVideo python=3.12 -y

1727334371940_ed727949_12276338.png

等待安装完成

1727334376187_8a2b0abc_12276338.png

6. 安装模型依赖库

# 切换到 CogVideo 项目工作目录
cd /CogVideo

# 激活 CogVideo 虚拟环境
conda activate CogVideo

# 安装 requirements.txt 依赖
pip install -r requirements.txt

1727334389414_643f6b2d_12276338.png

1727334392756_87f49f73_12276338.png

出现以上报错,需要安装apt依赖包:

apt-get update
apt-get -y install libjpeg-dev zlib1g-dev libpng-dev libfreetype6-dev

apt依赖包安装成功

1727334396856_a751defc_12276338.png

再次运行 requirements.txt 依赖安装

# 安装 requirements.txt 依赖
pip install -r requirements.txt

依赖安装成功如下图所示:

1727334402358_2f639809_12276338.png

7. 下载预训练模型

安装 modelscope 依赖包

pip install modelscope

1727334406944_1f1ba1aa_12276338.png

创建一个Python下载脚本

vim modelscope_download.py

插入以下下载代码

# Python 代码下载模型
from modelscope import snapshot_download
model_dir = snapshot_download('ZhipuAI/CogVideoX-2b', cache_dir='./', revision='master')

保存文件:Esc --》Shift + :--》输入英文的 :--》输入:wq

执行 modelscope_download.py 文件进行模型下载

python modelscope_download.py

1727334413074_ea8dfdb9_12276338.png

8. 运行 inference/gradio_web_demo.py 文件

python inference/gradio_web_demo.py

1727334417558_759365a3_12276338.png

出现以上问题,需要修改 inference/gradio_web_demo.py 文件的模型路径

# 修改 inference/gradio_web_demo.py 文件
vim inference/gradio_web_demo.py

1727334423465_23efaf3a_12276338.png

替换为

pipe = CogVideoXPipeline.from_pretrained("./ZhipuAI/CogVideoX-2b", torch_dtype=dtype).to(device)

再次运行 inference/gradio_web_demo.py 文件

python inference/gradio_web_demo.py

1727334429695_9f4fe055_12276338.png

出现以上结果,还需要设置 设置 Gradio 服务器名称和端口,才能进入 Gradio 页面

# 设置 Gradio 服务器名称和端口
export GRADIO_SERVER_NAME=0.0.0.0
export GRADIO_SERVER_PORT=8080

# 运行 inference/gradio_web_demo.py 文件
python inference/gradio_web_demo.py

1727334433942_77cceddf_12276338.png

出现以上页面,即可访问 gradio 网页

1727334438856_80b9ac42_12276338.png

9. 使用 Gradio 页面时,RTX 3090 报显存不足,解决方法

命令行运行推理代码,不使用界面

python inference/cli_demo.py --prompt "The camera follows behind a white vintage SUV with a black roof rack as it speeds up a steep dirt road surrounded by pine trees on a steep mountain slope, dust kicks up from its tires, the sunlight shines on the SUV as it speeds along the dirt road, casting a warm glow over the scene. The dirt road curves gently into the distance, with no other cars or vehicles in sight. The trees on either side of the road are redwoods, with patches of greenery scattered throughout. The car is seen from the rear following the curve with ease, making it seem as if it is on a rugged drive through the rugged terrain. The dirt road itself is surrounded by steep hills and mountains, with a clear blue sky above with wispy clouds." --model_path './ZhipuAI/CogVideoX-2b' --output_path 'output/video.mp4'

在给出的命令中,python inference/cli_demo.py 是执行 Python 脚本的命令,该脚本是用于生成视频或进行某种形式的视觉内容推理的命令行界面(CLI)工具。:

  • --prompt:这个参数后面跟着的是一个文本描述,即“提示”或“指令”。在这个例子中,它描述了一个场景,包括一辆白色的复古 SUV、黑色车顶架、陡峭的泥土路、松树、阳光、红杉树、尘土飞扬、以及周围的自然环境等。这个描述被用作生成视频内容的指导或基础,具体取决于 cli_demo.py 脚本内部使用的模型或算法。
  • --model_path:这个参数指定了模型文件的路径。在这个例子中,它指向了 './ZhipuAI/CogVideoX-2b'。这很可能是一个预训练的模型文件或模型文件夹,用于根据给定的提示生成视频。CogVideoX-2b 听起来像是一个特定的模型名称,可能是基于某种深度学习架构,特别是针对视频生成的模型。
  • --output_path:这个参数指定了输出文件的路径和名称。在这个例子中,它设置为 'output/video.mp4'。这意味着生成的视频将被保存为当前目录下 output 文件夹中的 video.mp4 文件。如果 output 文件夹不存在,一些系统或脚本可能会自动创建它。

总结来说,这个命令通过 cli_demo.py 脚本,使用 './ZhipuAI/CogVideoX-2b' 路径下的模型,根据提供的文本描述(即提示)生成一个视频,并将该视频保存为 output/video.mp4

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

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

相关文章

【论文复现】基于深度学习的手势识别算法

本文所涉及所有资源均在这里可获取。 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步,喜爱音乐、摄影的一位博主。 📗本文收录于论文复现系列,大家有兴趣的可以看一看…

云上拼团GO指南——腾讯云博客部署案例,双11欢乐GO

知孤云出岫-CSDN博客 目录 腾讯云双11活动介绍 一.双十一活动入口 二.活动亮点 (一)双十一上云拼团Go (二)省钱攻略 (三)上云,多类型服务器供您选择 三.会员双十一冲榜活动 (一)活动内容 &#x…

跨境独立站新手,如何用DuoPlus云手机破局海外社媒引流?

独立站作为电商领域的一个重要组成部分,其发展在最近几年里确实令人瞩目,对于想要进入跨境赛道的新手卖家来说,手上握着有优势的货源,建立小型的DTC独立站确实会比入驻第三方平台具有更大的灵活性。本文将给跨境卖家们总结独立站和…

解决VMware和物理机网络不通问题(保姆式教学)

VMware配置网络打通虚拟机和物理机之间得网络通道,并通过xshell连接 配置网络VMware配置虚拟机配置物理机配置Xshell连接其他问题 配置网络 网络配置是通过NAT方式,只要物理机能上网,虚拟机就能上网 VMware配置 网络连接选择NAT方式&#x…

微服务系列三:微服务核心——网关路由

目录 前言 一、登录存在的问题归纳 二、*微服务网关整体方案 三、认识微服务网关 四、网关鉴权实现 五、OpenFeign微服务间用户标识信息传递实现 六、微服务网关知识追问巩固 实验环境说明 本文有部分地方需要实验进行。首先对于看过黑马微服务的同学应该会比较熟悉。…

在第三方公有云服务器上部署AS-V1000视频接入汇聚平台,请求视频出现黑屏的问题解决

目录 一.背景和问题描述 1.1平台介绍 1.2背景和问题描述 二.排查流程 2.1初步解析 2.2排查服务器防火墙 2.3排查平台模块 2.3.1排查sippgw模块 2.3.2排查mrrs模块 2.3.3排查平台公网设置 2.4排查安全组 三.问题解决过程和结果 3.1问题解决过程 3.2问题解决结果 一…

学习threejs,使用对象组合

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.Object3D 三维物体 二…

从技术创新到商业应用,智象未来(HiDream.ai)创新不止步

在人工智能领域的最新动态中,智象未来(HiDream.ai)公司,作为全球领先的多模态生成式人工智能技术先驱,已经引起了广泛的行业瞩目。该公司专注于深度学习和计算机视觉技术的融合,致力于开发和优化视觉多模态…

数据血缘追踪是如何在ETL过程中发挥作用?

在大数据环境下,数据血缘追踪具有重要意义,它能够帮助用户了解数据的派生关系、变换过程和使用情况,进而提高数据的可信度和可操作性。通过数据血缘追踪,ETL用户可以准确追溯数据的来源,快速排查数据异常和问题。 一、…

八、Spring Boot集成Spring Security之前后分离认证最佳实现测试

文章目录 往期回顾:Spring Boot集成Spring Security专栏及各章节快捷入口前言一、正常流程测试1、登录接口测试2、业务接口测试3、登出接口测试 二、非正常流程测试1、输入错误用户名密码登录2、无请求头访问业务接口3、无效请求头访问业务接口4、登出时未携带有效请…

OCM认证备考技巧

Oracle Certified Master(OCM)认证是Oracle公司颁发的顶级专业资格认证,它专为那些旨在验证其在Oracle数据库管理领域拥有深厚专业知识和高级技能的专业人士设计。这一认证标志着持有者在数据库性能优化、备份恢复、高级配置以及故障排除等方…

动态规划理论基础和习题【力扣】【算法学习day.25】

前言 ###我做这类文档一个重要的目的还是给正在学习的大家提供方向(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴&am…

kafka+zookeeper的搭建

kafka从2.8版本开始,就可以不用配置zookeeper了,但是也可以继续配置。我目前使用的kafka版本是kafka_2.12-3.0.0.tgz,其中前面的2.12表示是使用该版本的scala语言进行编写的,而后面的3.00才是kafka当前的版本。 通过百度网盘分享…

智象未来(HiDream.ai):从科技创新启程,绘制智能未来新篇章

在人工智能领域飞速演进的当下,智象未来(HiDream.ai)作为全球领先的多模态生成式人工智能技术供应商,正以其独树一帜的视觉多模态大模型及创新应用,推动行业趋势的前进。智象未来(HiDream.ai)自…

给电脑加水印的软件有哪些?分享5个快速添加水印的小神器,快来试试!

怎么给电脑加水印呢? 如果一个个手动添加水印,不仅费时费力,还容易出错。那么,有没有更方便快捷的方法呢? 答案是肯定的!市面上有许多专门给电脑加水印的软件,能够快速高效地实现这一目的。接下…

mac m1 docker本地部署canal 监听mysql的binglog日志

mac m1 docker本地部署canal监听mysql的binglog日志(虚拟机同理) 根据黑马视频部署 1.docker 部署mysql 1.docker拉取mysql 镜像 因为m1是arm架构.需要多加一条信息 正常拉取 docker pull mysql:tagm1拉取 5.7的版本. tag需要自己指定版本 docker pull --platform linux/x…

TARE-PLANNER学习记录

参考: CMU-TARE 探索算法官方社区问答汇总_cmu localplanner 部署-CSDN博客 Tare_planner学习笔记_tare planner-CSDN博客 Tare_planner 学习教程(二)_tareplanner-CSDN博客 (学习笔记)机器人自主导航从零开始第七步——TARE Planner自主…

JMeter基础篇

目录 总目录: 一、JMeter简介: -用途: -优缺点: 二、JMeter安装: 三、项目简介: -学生管理系统: -API接口清单: 查询: 新增: 更新: 删…

AWTK-HarmonyOS NEXT 发布

AWTK 全称为 Toolkit AnyWhere,是 ZLG 倾心打造的一套基于 C 语言开发的 GUI 框架。旨在为用户提供一个功能强大、高效可靠、简单易用、可轻松做出炫酷效果的 GUI 引擎,支持跨平台同步开发,一次编程,到处编译,跨平台使…