StableDiffusion打包 项目迁移 项目分发 1
文章目录
- SD项目迁移
- 前置知识
- webui-user.bat
- webui.bat
- launch_utils.py
- 下一篇开始实践
SD项目迁移
显卡驱动更新:https://www.nvidia.cn/geforce/drivers/
下载安装三个程序:
- python3.10.6: https://www.python.org/downloads/release/python-3106/
- git: https://git-scm.com/download/win
- stable-diffusion webui: https://github.com/AUTOMATIC1111/stable-diffusion-webui
快速启动:
前置知识
bat运行脚本,看懂即可。
webui-user.bat
首先运行webui-user.bat
,但是里面的路径设置是空的,如下。
这就意味着要么路径有一个默认值,这么在后面设置了,我估计是有个if
判断该值是否为空的代码。
如果我们已经配好了环境和参数,那么直接填入即可。
@echo offset PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=call webui.bat
webui.bat
主要功能是根据webui-user.bat
,设置上面的四个参数。
-
四个变量的预处理;
-
创建日志文件,为了后续发生错误输出做准备。
-
检测
python
和pip
是否可用,并升级pip
。 -
:start_venv
一段的作用是寻找python解释器。Scripts
下没有就自动递归文件夹搜索python.exe
的位置。 -
:activate_venv
的作用是利用python.exe
激活环境。 -
如果
ACCELERATE
存在就使用accelerate
启动主程序。 -
启动主程序,一个是
:launch
启动主程序,一个是使用:accelerate_launch
加速启动。
总结:设置四个变量,找到python.exe
之后启动环境。然后根据是否依据ACCELERATE
启动主程序。
下面是具体内容:
- 关闭命令回显
@echo off
@
符号的作用是防止当前这行命令本身被显示出来。echo off
用于关闭后续命令在执行过程中的显示,让脚本执行时只显示命令的输出结果,而不显示命令本身,使输出更加简洁。
- 检查并调用
webui.settings.bat
文件
if exist webui.settings.bat (call webui.settings.bat
)
if exist
是一个条件判断语句,用于检查当前目录下是否存在webui.settings.bat
文件。- 如果文件存在,则使用
call
命令调用该文件并执行其中的代码,这样可以在主脚本中引入额外的配置或设置。
- 设置
PYTHON
变量
if not defined PYTHON (set PYTHON=python)
if not defined
用于检查环境变量PYTHON
是否已经被定义。- 如果
PYTHON
未定义,则将其设置为python
,这意味着默认使用系统路径中可找到的 Python 解释器。
- 设置
GIT_PYTHON_GIT_EXECUTABLE
变量
if defined GIT (set "GIT_PYTHON_GIT_EXECUTABLE=%GIT%")
if defined
用于检查环境变量GIT
是否已经被定义。- 如果
GIT
已定义,则将GIT_PYTHON_GIT_EXECUTABLE
变量设置为GIT
的值,这通常用于指定git
可执行文件的路径。
- 设置
VENV_DIR
变量
if not defined VENV_DIR (set "VENV_DIR=%~dp0%venv")
if not defined
检查环境变量VENV_DIR
是否已经被定义。- 如果未定义,则将
VENV_DIR
设置为当前批处理文件所在目录下的venv
文件夹。%~dp0
表示当前批处理文件所在的完整路径。
- 设置其他变量
set SD_WEBUI_RESTART=tmp/restart
set ERROR_REPORTING=FALSE
set SD_WEBUI_RESTART=tmp/restart
:将SD_WEBUI_RESTART
变量设置为tmp/restart
,可能用于标记重启操作。set ERROR_REPORTING=FALSE
:将ERROR_REPORTING
变量设置为FALSE
,可能用于控制错误报告的开关。
- 创建
tmp
文件夹
mkdir tmp 2>NUL
mkdir tmp
用于创建一个名为tmp
的文件夹。2>NUL
表示将命令执行过程中的错误信息(标准错误输出,文件描述符为 2)重定向到NUL
,即忽略错误信息。如果tmp
文件夹已经存在,该命令不会报错。
- 检查 Python 是否可正常运行
%PYTHON% -c "" >tmp/stdout.txt 2>tmp/stderr.txt
if %ERRORLEVEL% == 0 goto :check_pip
echo Couldn't launch python
goto :show_stdout_stderr
%PYTHON% -c ""
:使用PYTHON
变量指定的 Python 解释器执行一个空的 Python 命令。>tmp/stdout.txt 2>tmp/stderr.txt
:将命令的标准输出(文件描述符为 1)和标准错误输出(文件描述符为 2)分别重定向到tmp/stdout.txt
和tmp/stderr.txt
文件中。if %ERRORLEVEL% == 0
:%ERRORLEVEL%
是一个系统变量,用于存储上一条命令的退出状态码。如果退出状态码为 0,表示命令执行成功,跳转到:check_pip
标签处继续执行。- 如果退出状态码不为 0,则输出
"Couldn't launch python"
信息,并跳转到:show_stdout_stderr
标签处显示错误信息。
- 检查
pip
是否可用
:check_pip
%PYTHON% -mpip --help >tmp/stdout.txt 2>tmp/stderr.txt
if %ERRORLEVEL% == 0 goto :start_venv
if "%PIP_INSTALLER_LOCATION%" == "" goto :show_stdout_stderr
%PYTHON% "%PIP_INSTALLER_LOCATION%" >tmp/stdout.txt 2>tmp/stderr.txt
if %ERRORLEVEL% == 0 goto :start_venv
echo Couldn't install pip
goto :show_stdout_stderr
%PYTHON% -mpip --help
:使用 Python 解释器调用pip
并查看其帮助信息,以此检查pip
是否可用。- 如果
pip
可用(退出状态码为 0),则跳转到:start_venv
标签处开始创建虚拟环境。 - 如果
pip
不可用,且PIP_INSTALLER_LOCATION
变量为空,则跳转到:show_stdout_stderr
标签处显示错误信息。 - 如果
PIP_INSTALLER_LOCATION
不为空,则使用 Python 解释器执行该位置的脚本尝试安装pip
。 - 如果安装成功,则跳转到
:start_venv
标签处;否则输出"Couldn't install pip"
信息,并跳转到:show_stdout_stderr
标签处显示错误信息。
- 创建虚拟环境
:start_venv
if ["%VENV_DIR%"] == ["-"] goto :skip_venv
if ["%SKIP_VENV%"] == ["1"] goto :skip_venvdir "%VENV_DIR%\Scripts\Python.exe" >tmp/stdout.txt 2>tmp/stderr.txt
if %ERRORLEVEL% == 0 goto :activate_venvfor /f "delims=" %%i in ('CALL %PYTHON% -c "import sys; print(sys.executable)"') do set PYTHON_FULLNAME="%%i"
echo Creating venv in directory %VENV_DIR% using python %PYTHON_FULLNAME%
%PYTHON_FULLNAME% -m venv "%VENV_DIR%" >tmp/stdout.txt 2>tmp/stderr.txt
if %ERRORLEVEL% == 0 goto :upgrade_pip
echo Unable to create venv in directory "%VENV_DIR%"
goto :show_stdout_stderr
- 首先检查
VENV_DIR
是否为-
或者SKIP_VENV
是否为1
,如果满足条件则跳转到:skip_venv
标签处跳过虚拟环境的创建。 - 然后检查虚拟环境目录下的
Scripts\Python.exe
文件是否存在,如果存在则跳转到:activate_venv
标签处激活虚拟环境。 - 如果虚拟环境不存在,则使用
for /f
循环获取 Python 解释器的完整路径,并将其存储在PYTHON_FULLNAME
变量中。 - 接着使用该 Python 解释器创建虚拟环境,如果创建成功则跳转到
:upgrade_pip
标签处升级pip
;否则输出错误信息并跳转到:show_stdout_stderr
标签处显示错误信息。
- 升级
pip
:upgrade_pip
"%VENV_DIR%\Scripts\Python.exe" -m pip install --upgrade pip
if %ERRORLEVEL% == 0 goto :activate_venv
echo Warning: Failed to upgrade PIP version
- 使用虚拟环境中的 Python 解释器调用
pip
并尝试升级到最新版本。 - 如果升级成功,则跳转到
:activate_venv
标签处激活虚拟环境;否则输出警告信息。
- 激活虚拟环境
:activate_venv
set PYTHON="%VENV_DIR%\Scripts\Python.exe"
call "%VENV_DIR%\Scripts\activate.bat"
echo venv %PYTHON%
- 将
PYTHON
变量设置为虚拟环境中的 Python 解释器路径。 - 使用
call
命令调用虚拟环境的激活脚本activate.bat
来激活虚拟环境。 - 输出当前使用的虚拟环境 Python 解释器的路径。
- 跳过虚拟环境创建
:skip_venv
if [%ACCELERATE%] == ["True"] goto :accelerate
goto :launch
- 检查
ACCELERATE
变量是否为True
,如果是则跳转到:accelerate
标签处进行加速配置;否则跳转到:launch
标签处启动主程序。
- 检查
accelerate
是否可用
:accelerate
echo Checking for accelerate
set ACCELERATE="%VENV_DIR%\Scripts\accelerate.exe"
if EXIST %ACCELERATE% goto :accelerate_launch
- 输出检查
accelerate
的信息。 - 将
ACCELERATE
变量设置为虚拟环境中accelerate.exe
的路径。 - 如果该文件存在,则跳转到
:accelerate_launch
标签处使用accelerate
启动主程序。
- 启动主程序
:launch
%PYTHON% launch.py %*
if EXIST tmp/restart goto :skip_venv
pause
exit /b
- 使用
PYTHON
变量指定的 Python 解释器执行launch.py
脚本,并传递所有命令行参数(%*
)。 - 如果
tmp/restart
文件存在,则跳转到:skip_venv
标签处重新启动;否则暂停程序并等待用户输入,最后退出当前批处理脚本。
- 使用
accelerate
启动主程序
:accelerate_launch
echo Accelerating
%ACCELERATE% launch --num_cpu_threads_per_process=6 launch.py
if EXIST tmp/restart goto :skip_venv
pause
exit /b
- 输出加速启动的信息。
- 使用
accelerate
工具启动launch.py
脚本,并设置每个进程的 CPU 线程数为 6。 - 如果
tmp/restart
文件存在,则跳转到:skip_venv
标签处重新启动;否则暂停程序并等待用户输入,最后退出当前批处理脚本。
- 显示标准输出和错误信息
:show_stdout_stderrecho.
echo exit code: %errorlevel%for /f %%i in ("tmp\stdout.txt") do set size=%%~zi
if %size% equ 0 goto :show_stderr
echo.
echo stdout:
type tmp\stdout.txt:show_stderr
for /f %%i in ("tmp\stderr.txt") do set size=%%~zi
if %size% equ 0 goto :show_stderr
echo.
echo stderr:
type tmp\stderr.txt:endofscriptecho.
echo Launch unsuccessful. Exiting.
pause
- 首先输出上一条命令的退出状态码。
- 检查
tmp/stdout.txt
文件的大小,如果不为 0,则输出"stdout:"
并显示该文件的内容。 - 接着检查
tmp/stderr.txt
文件的大小,如果不为 0,则输出"stderr:"
并显示该文件的内容。 - 最后输出启动失败的信息,暂停程序并等待用户输入。
launch_utils.py
首先是运行webui-user.bat
,然后运行webui.bat
,最后使用launch_utils.py
启动程序。
launch_utils.py
文件其实是不用动的。
我粗看了一下,如果webui-user.bat
路径配置好了,并且环境也配置好了,那么就可以直接启动程序了。
下一篇开始实践
我结合前面的本地部署内容,开始试试
相关文章:
StableDiffusion打包 项目迁移 项目分发 1
文章目录 SD项目迁移前置知识webui-user.batwebui.batlaunch_utils.py 下一篇开始实践 SD项目迁移 显卡驱动更新:https://www.nvidia.cn/geforce/drivers/ 下载安装三个程序: python3.10.6: https://www.python.org/downloads/release/python-3106/gi…...
【C++】模板初阶
文章目录 一. 泛型编程1.1 什么是模板1.2 为什么要使用模板 二. 函数模板2.1 函数模板概念2.2 函数模板格式2.3 函数模板的原理2.4 函数模板的实例化2.4.1 隐式实例化2.4.2 显式实例化 2.5 模板参数的匹配原则 三. 类模板3.1 类模板的定义格式3.2 类模板的实例化3.3 在类模板外…...
STM32学习【4】ARM汇编(够用)
目录 ARM汇编语言基础写在前面 1. ARM汇编的分类2. 关于指令集指令集切换Thumb2指令集统一汇编语言(UAL)常用汇编指令 3. 汇编格式立即数与伪指令 4. 操作内存的汇编指令LDR:从内存加载数据到CPU寄存器STR:将数据从寄存器存储到内…...
傅里叶分析
傅里叶分析之掐死教程(完整版)更新于2014.06.06 要让读者在不看任何数学公式的情况下理解傅里叶分析。 傅里叶分析不仅仅是一个数学工具,更是一种可以彻底颠覆一个人以前世界观的思维模式。但不幸的是,傅里叶分析的公式看起来太复…...
Jmeter插件下载及安装
1、在Jmeter官网(Install :: JMeter-Plugins.org)下载所需插件 2、将下载的插件复制到jmeter文件下的lib/ext文件里(PS:D:\Jmeter\apache-jmeter-5.6.2\lib\ext) 3、打开Jmeter,选择 选项----Plugins Manag…...
Docker迁移/var/lib/docker之后镜像容器丢失问题
迁移/var/lib/docker时,如果目标目录少写一个/,/etc/docker/daemon.json中的data-root后面需要多加一级目录docker。 若迁移命令如下 rsync -avz /var/lib/docker /home/docker/ 在/etc/docker/daemon.json中添加如下内容 "data-root": &q…...
【C++】深入理解List:双向链表的应用
凭时间赢来的东西,时间肯定会为之作证。 前言 这是我自己学习C的第七篇博客总结。后期我会继续把C学习笔记开源至博客上。 上一期笔记是关于C的vector类知识,没看的同学可以过去看看:【C】探索Vector:灵活的数据存储解决方案-CS…...
如何使用 Ollama 的 API 来生成文本
如何使用 Ollama 的 API 来生成文本 简介 生成文本 生成文本的示例 加载模型 卸载模型 简介 Ollama 提供了一个 RESTful API,允许开发者通过 HTTP 请求与 Ollama 服务进行交互。这个 API 覆盖了所有 Ollama 的核心功能,包括模型管理、运行和监控。本…...
Redis除了做缓存还有哪些应用场景
我用「现实场景代码简例」帮你彻底掌握Redis的18般武艺。先记住这句话:Redis是数据结构的瑞士军刀。以下分7大核心应用方向讲解: 一、高频面试答案速记版 1. 分布式锁 → 超市储物柜机制 2. 计数器 → 直播间点赞统计 3. 排行榜 → 游戏战力榜 4. 消息队…...
软件工程复试专业课-测试
测试 1 软件质量2 黑盒测试2.1 概念2.2 等价划分类 2.3 边值分析2.4 错误推测2.5 因果图 3 白盒测试3.1概念3.2 覆盖标准3.2.1 语句覆盖3.2.2 判断覆盖3.2.3 条件覆盖3.2.4 判定/条件覆盖3.2.5 条件组合覆盖3.2.6 路径覆盖 4 软件测试的四个阶段5 测试工具 1 软件质量 定义&…...
html css js网页制作成品——HTML+CSS甜品店网页设计(5页)附源码
目录 一、👨🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨…...
Maven的传递性、排除依赖、生命周期、插件
一、Maven的传递性 蓝色背景中的两个jar包是projectA的直接依赖,其余的Jar包是projectA的间接依赖。 projectA可以使用直接依赖,也可以使用间接依赖。 maven-projectB项目引入了maven-projectC(整个项目打成了jar包)和junit两个jar包。 ma…...
Java 调试模式下 Redisson 看门狗失效
一、场景分析 前几天在做分布式锁测试: 在调试模式下,lock.lock() 之后打上断点,想测试一下在当前线程放弃锁之前,别的线程能否获取得到锁。 发现调试模式下,看门狗机制失效了,Redis 上 30 秒后࿰…...
PHP下载安装以及基本配置
目录 引言 官网 下载 配置 1. 鼠标右键“此电脑”>“属性” 2. 打开高级系统设置 3. 打开环境变量 4. 双击系统变量中的path 5. 新建新的path 6. 将刚刚安装的位置加入环境变量 7. 检查是否安装成功 引言 PHP(“PHP: Hypertext Preprocessor”&#…...
Vue nextTick原理回顾
nextTick就是将异步函数放在下一次实践循环的微任务队列中执行 实现原理比较简单,极简版本: function myNextTick(cb){let p;pPromise.resolve().then(cb)return cb?p:Promise.resolve() }复杂版本,考虑异步函数入队、执行锁、兼容处理 l…...
【Javascript】js精度丢失
当JS处理大整数或者浮点数的时候会出现精度丢失的情况。 Javascript的数字都使用双精度浮点数表示,遵循IEEE754标准 比如我遇到的问题,对一个小数的四舍五入,保留2位小数: 235.985≈235.98 235.9851≈235.99 原理请大家参考百度&…...
Go在1.22版本修复for循环陷阱
记录 前段时间升级Go版本碰到一个大坑,先记录。 先上代码案例: func main() {testClosure() }func testClosure() {for i : 0; i < 5; i {defer func() {fmt.Println(i)}()} }在1.22之下(不包括1.22)版本: 输出的…...
服务器离线部署DeepSeek
目标 本次部署的目标是在本地服务器上部署DeepSeek。但是该服务不能连接外网,因此只能使用离线部署的方式。为了一次完成部署。现在云服务器上进行尝试。 云服务器部署尝试 云服务器配置 CentOS72080Ti 11GB 安装准备 1、上传iso并配置为本地yum源 安装前先将…...
PhotoDoodle: Learning Artistic Image Editing from Few-Shot Examples 论文解读
目录 一、概述 二、PhotoDoodle 1、OmniEditor的预训练 2、DiT重点 3、无噪声条件范式与CFM 4、EditLoRA 4.1关于LoRA 4.2关于EditLoRA 三、相关工作 一、概述 风格化图像编辑的论文! 介绍了PhotoDoodle,一个基于扩散模型的图像编辑框架&#x…...
的pythonAPI文档含义
Open3D的pythonAPI文档含义 Open3D的pythonAPI文档含义1、相关文档1.[Open3D的python文档]2 [Open3D的cpp文档] 2、结论 >> 看了好久的文档,奶奶的什么个意思。1. class Type是一个枚举类,PointCloud等是枚举成员,每个成员在python有 n…...
跟着AI学vue第十三章
第十三章:技术传承与行业影响力塑造 到了这个阶段,你已经在Vue技术领域积累了深厚的经验,拥有了较强的技术实力。此时,你的重点将是把自己的知识和经验传递给更多人,在行业内树立起影响力,推动整个Vue技术…...
实现实时数据仓库开源项目
根据你的需求,以下是一些可以实现类似 ClickHouse 的实时数仓功能的项目,这些项目提供了高性能的数据处理和分析能力,适合实时数据仓库的场景: 1. Apache Doris Apache Doris 是一个开源的实时数据仓库,支持高吞吐量…...
实现了一个自适应的NOC路由机制,包括构建流量图、设计拥塞预测模型、优化路由策略和评估性能
以下是针对设计和实现自适应的网络 - on - chip (NOC) 路由机制的详细步骤及代码示例: 1. 分析NOC路由路径拥塞的原因及传统方法的不足之处 拥塞原因: 动态流量变化:芯片内不同模块的工作负载随时间变化,导致局部流量突然增加。…...
光速解决phpstudy无法启动MySQL服务
问题描述 在初步安装使用phpstudy时,会出现mysql服务启动失败的情况,具体表现为点击一键启动后,mysql启动又立即停止 原因及解决方法: phpstudy数据库无法启动有以下几个原因,可以看看自己是第几种: 服务名…...
2022 年 9 月青少年软编等考 C 语言五级真题解析
目录 T1. 城堡问题思路分析T2. 斗地主大师思路分析T3. 玩具摆放思路分析T4. 哥斯拉大战金刚思路分析T1. 城堡问题 1 2 3 4 5 6 7 ############################# 1 # | # | # | | ######---#####---#---#####---# 2 # # | # # # # ##…...
【原创】Ubuntu 24搭建Ollama+ DeepSeek局域网服务器
安装Ubuntu 服务器 通过ubuntu官网下载ubuntu 24服务器版本 刻录光盘(也可以使用U盘) 用光盘启动PC机器(必须是带显卡的PC机,包括集成Intel显卡的也行,纯CPU计算的服务器基本上不能使用) 最小化安装Ubuntu…...
阿里云ack的创建与实战应用案例
阿里云ack的创建与应用案例 创建前开通ack相关服务:开始创建简单的魔方游戏,熟悉sv与clb自动注册创建部署一个nginx 服务示例:走不同域名访问不同svc资源:为什么需要 Ingress ?创建第一个域名的 Deployment和Service。…...
制造业数字化实践案例丨国内某大型物联网企业数字化项目管理系统,赋能品牌和生态战略落地
30秒快读 该大型物联网企业在规模化和业务扩展过程中,面临项目管理模式单一、供应链与客户端协同不足、项目过程数据透明度低、软硬件项目管理分离等痛点,数字化项目管理系统建设旨在构建以项目制为核心的流程型组织,建立内外部高效协同的项…...
当AI重构认知:技术狂潮下的教育沉思录
备注:文章未Deepseek R1模型辅助生成,如有不妥请谅解。 以下使原文: 我有三个娃,各间隔4到5岁,经历过搜索引擎,短视频,短剧,本身曾经也是教育专业出生,任何事务都有两面性…...
Game Maker 0.11更新:构建社交竞速游戏并增强玩家互动
在这三部分系列中,我们将介绍如何实现Game Maker 0.11中一些最激动人心的新功能。 欢迎来到我们系列文章的第一篇,重点介绍了The Sandbox Game Maker 0.11更新中的新特性。 The Sandbox Game Maker 0.11是一个多功能工具,帮助创作者通过游戏…...
ubuntu配置jmeter
1.前提准备 系统 ubuntu server 22.04 前提条件:服务器更新apt与安装lrzsz:更新apt: sudo apt update安装lrzsz: 命令行下的上传下载文件工具 sudo apt install lrzszsudo apt install zip2.安装jemeter 2.1.下载jdk17 输入命令…...
计算机毕业设计Python+DeepSeek-R1大模型考研院校推荐系统 考研分数线预测 考研推荐系统 考研(源码+文档+PPT+讲解)
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
字段对比清洗
import pandas as pd import psycopg2 from psycopg2 import sql# 数据库连接配置 DB_CONFIG {"host": "","user": "","password": "","dbname": "","port": , }def get_excel_fi…...
过滤器 二、过滤器详解
过滤器生命周期: init(FilterConfig):在服务器启动时会创建Filter实例,并且每个类型的Filter只创建一个实例,从此不再创建!在创建完Filter实例后,会马上调用init()方法完成初始化工作,这个方法…...
七、Three.jsPBR材质与纹理贴图
1、PBR材质金属度和粗糙度 1、金属度metalness 金属度属性.metalness表示材质像金属的程度, 非金属材料,如木材或石材,使用0.0,金属使用1.0。 threejs的PBR材质,.metalness默认是0.5,0.0到1.0之间的值可用于生锈的金属外观 new THREE.MeshStandardMaterial({met…...
分布式主键生成服务
目录 一、使用线程安全的类——AtomicInteger或者AtomicLong 二、主键生成最简单写法(不推荐) 三、主键生成方法一:Long型id生成——雪花算法 四、主键生成方法二:流水号 (一)流水号概述 (二)添加配置 1.pom.xml 2.application.properties 3.创…...
【Day50 LeetCode】图论问题 Ⅷ
一、图论问题 Ⅷ 1、dijkstra算法 堆优化 采用堆来优化,适合节点多的稀疏图。代码如下: # include<iostream> # include<vector> # include<list> # include<queue> # include<climits>using namespace std;class myco…...
人大金仓KCA | 用户与角色
人大金仓KCA | 用户与角色 一、知识预备1. 用户和角色 二、具体实施1. 用户管理-命令行1.1 创建和修改用户1.2 修改用户密码1.3 修改用户的并发连接数1.4 修改用户的密码有效期 2.用户管理-EasyKStudio2.1 创建和修改用户2.2 修改用户密码2.3 修改用户的并发连接数2.4 修改用户…...
嵌入式开发:傅里叶变换(4):在 STM32上面实现FFT(基于STM32L071KZT6 HAL库+DSP库)
目录 步骤 1:准备工作 步骤 2:创建 Keil 项目,并配置工程 步骤 3:在MDK工程上添加 CMSIS-DSP 库 步骤 5:编写代码 步骤 6:配置时钟和优化 步骤 7:调试与验证 步骤 8:优化和调…...
【AI学习从零至壹】Numpy基础知识
PyTorch基础知识 Numpy基础NumPy 基本数据类型Numpy数组 NumPy 基础数组创建Numpy特殊数组创建Numpy数组的访问NumPy数组的遍历Numpy数组的常用属性比较常用的属性有: Numpy数组的基本操作Numpy数组的数学操作加减乘除 Numpy线性代数Numpy广播机制 Numpy基础 NumPy…...
Day11,Hot100(贪心算法)
贪心 (1)121. 买卖股票的最佳时机 第 i 天卖出的最大利润,即在前面最低价的时候买入 class Solution:def maxProfit(self, prices: List[int]) -> int:min_price prices[0]ans 0for price in prices:ans max(ans, price - min_price…...
Transformer 代码剖析1 - 数据处理 (pytorch实现)
引言 Transformer 架构自《Attention Is All You Need》论文发表以来,在自然语言处理领域引起了巨大的变革。它摒弃了传统的循环结构,完全基于注意力机制,显著提高了处理序列数据的效率和性能。本文将通过对一个具体的项目代码结构进行详细分…...
Python--模块(下)
3. 内置模块 3.1 os模块 常用功能: os.mkdir("new_dir") # 创建目录 os.listdir(".") # 列出当前目录文件 os.path.join("dir", "file.txt") # 路径拼接 os.path.abspath(__file…...
Android Studio超级详细讲解下载、安装配置教程(建议收藏)
博主介绍:✌专注于前后端、机器学习、人工智能应用领域开发的优质创作者、秉着互联网精神开源贡献精神,答疑解惑、坚持优质作品共享。本人是掘金/腾讯云/阿里云等平台优质作者、擅长前后端项目开发和毕业项目实战,深受全网粉丝喜爱与支持✌有…...
PS画笔工具
画笔工具: 画笔工具(B)(原理:单位笔刷的连续填充,文件格式.abr):圆形矢量笔刷、动态矢量画笔(旧版画笔里有 与压感笔有关)、图案填充画笔 shift画笔ÿ…...
[Java基础] JVM常量池介绍(BeanUtils.copyProperties(source, target)中的属性值引用的是同一个对象吗)
文章目录 1. JVM内存模型2. 常量池中有什么类型?3. 常量池中真正存储的内容是什么4. 判断一个字符串(引用)是否在常量池中5. BeanUtils.copyProperties(source, target)中的属性值引用的是同一个对象吗?6. 获取堆内存使用情况、非堆内存使用情况 1. JVM内…...
1.68M 免安装多格式图片批量转 webp 无广告软件推荐
软件介绍 今天要给大家分享一款超实用的图片处理工具,它能实现多格式图片向 webp 格式的转换,无论是 jpg、png、tif、gif 还是 webp 格式自身的图片,都能批量且借助多线程技术进行转换。 直接打开就能用,体积小巧,仅 …...
LeetCode 1472.设计浏览器历史记录:一个数组完成模拟,单次操作均O(1)
【LetMeFly】1472.设计浏览器历史记录:一个数组完成模拟,单次操作均O(1) 力扣题目链接:https://leetcode.cn/problems/design-browser-history/ 你有一个只支持单个标签页的 浏览器 ,最开始你浏览的网页是 homepage ,…...
[笔记.AI]AI知识科普提纲
仅供参考 1.AI基础认知 1.1什么是什么AI 1.2核心概念 1.2.1机器学习、深度学习、神经网络 1.2.2模型:模型、大模型、模型参数 1.2.3多模态 1.2.4生成式AI & 判别式AI 1.3发展与现状 2.大模型 2.1主流大模型 2.1.1分类 2.1.2各…...
学习知识的心理和方法杂记-01
前言: 1 学习新知识要讲究方法,“知识未学 方法先行”,写本系列文章是为了给自己加深大脑“条件反射”的,因为我自己学习新知识的过程中老会被不科学的“杂念”干扰,导致学习效率低下。 2 关于天才和普通人ÿ…...