Stable Diffusion + kohya_ss 的安装教程

Stable Diffusion + kohya_ss 的安装教程

工具简介

  • Stable Diffusion (SD): 开源的文本到图像生成模型,支持通过提示词生成高质量图像,内置自动标注功能(如BLIP、DeepBooru等)。
  • kohya_ss (KS): 基于SD的轻量级微调工具,支持LoRA、DreamBooth等训练方法,优化显存占用与训练效率。

一.SD的安装

对于SD大家可以通过github链接来下载

https://git-scm.com/ Automatic 1111:https://github.com/AUTOMATIC1111

这里提供的链接,下载的SD是最基础的,如果大家想要让他有其他的扩展功能就需要下载相关的插件(后面会写一个关于下载插件的教程请大家持续关注)。

1.准备 Conda 环境
1.1 创建并激活 Conda 环境
# 创建名为 sd-webui 的环境(Python 3.10 推荐,需匹配仓库要求) conda create -n sd-webui python=3.10 -y # 激活环境 conda activate sd-webui
1.2确认 Python 路径

记录当前 Conda 环境的 Python 路径(后续配置需要)

which python # 示例输出:/home/用户名/miniconda3/envs/sd-webui/bin/python
2. 下载仓库代码
# 克隆仓库 git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git cd stable-diffusion-webui #指定下载路径 git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git 你指定的下载路径
3. 配置 webui 以使用 Conda 环境
3.1 编辑配置文件

在 webui-user.sh 中添加 / 修改以下内容(根据实际路径调整):

# 复制默认配置文件(若不存在) cp webui-user.sh webui-user.sh.bak # 备份(可选,不过建议还是备份一下) nano webui-user.sh
3.2 修改关键配置

在 webui-user.sh 中添加 / 修改以下内容(根据实际路径调整):

# 指定 Conda 环境的 Python 路径(替换为步骤 1.2 中获取的路径) python_cmd="/home/用户名/miniconda3/envs/sd-webui/bin/python" # 禁用自动创建虚拟环境(使用 Conda 环境而非 venv) venv_dir="-" # 可选:添加启动参数(如低显存模式) export COMMANDLINE_ARGS="--medvram --opt-split-attention"
3.3 保存并退出

按 Ctrl+O 保存,Ctrl+X 退出编辑器。

4. 安装依赖并启动
4.1 运行安装脚本
./webui.sh

运行完这个命令后该脚本会自动检测 Conda 环境并安装 requirements.txt 和 requirements_versions.txt 中的依赖,针对 PyTorch 适配问题(如 AMD 显卡)会根据 GPU 型号自动设置 TORCH_COMMAND,安装完成后终端将显示访问地址(通常为http://127.0.0.1:7860),用户可通过浏览器直接使用。

下面的图片就是我通过地址访问的SD界面,不过我安装了一些插件,所以你们的可能跟我的长的不一样,但是不会影响使用。

5. 安装好之后的启动步骤
# 每次启动前激活 Conda 环境 conda activate sd-webui # 进入仓库目录并启动 cd stable-diffusion-webui ./webui.sh

这几行代码建议大家写到一个txt文本里面,这样需要用的时候直接复制粘贴进去就可以了。

二.kohya_ss的安装

这个是Kohya_ss的库的下载链接:https://github.com/bmaltais/kohya_ss

方法一:uv 安装
1. 克隆仓库(含子模块)
# 克隆仓库并进入目录 git clone --recursive https://github.com/bmaltais/kohya_ss.git cd kohya_ss
2. 运行安装脚本
# 执行 uv 安装脚本 ./gui-uv.sh
方法二:pip 安装
1. 克隆仓库(含子模块)
git clone --recursive https://github.com/bmaltais/kohya_ss.git cd kohya_ss
2. 安装依赖(可选 Conda 环境)

选项 A:使用系统 Python 或 venv

# 赋予脚本执行权限并运行 setup.sh chmod +x setup.sh ./setup.sh

选项 B:使用 Conda 环境(推荐)

# 创建并激活 Conda 环境(Python 3.11) conda create -n kohyass python=3.11 conda activate kohyass # 运行安装脚本 chmod +x setup.sh ./setup.sh
3. 启动 GUI
# 赋予执行权限并启动 chmod +x gui.sh ./gui.sh

启动后,若看到类似 Running on http://0.0.0.0:7860 的输出,说明安装成功,可通过浏览器访问该地址使用 GUI。

可能出现的问题
1.缺少 python3-tk 依赖包
Skipping git operations. Ubuntu detected. This script needs YOU to install the missing python3-tk packages. Please install with: sudo apt update -y && sudo apt install -y python3-tk

如果出现上面的错误,只需要下载缺失的包就行了,命令如下:

sudo apt update -y && sudo apt install -y python3-tk
2.不支持 socks 协议的代理 URL 
ValueError: Unknown scheme for proxy URL URL('socks://127.0.0.1:7897/')

通过终端配置环境变量

1.确定你的shell是bash还是zsh
在终端执行以下命令,会显示当前 shell 的进程名: echo $SHELL
  • 输出 /bin/bash → 当前默认是 bash
  • 输出 /bin/zsh → 当前默认是 zsh
2.编辑配置文件
bash 用户:nano ~/.bashrc zsh 用户:nano ~/.zshrc
3.添加 HTTP 代理配置
# 设置 HTTP 代理 export http_proxy="http://127.0.0.1:7897" export https_proxy="http://127.0.0.1:7897" 

将最后的“7897”换成你自己的代理地址的端口号,换好之后保存退出就行。

4.生效配置
# bash 用户 source ~/.bashrc # zsh 用户 source ~/.zshrc
5.编辑gui.sh文件
nano gui.sh

在脚本最顶部(第一行 #!/bin/bash 下方)添加这些内容:

#!/bin/bash # 清除可能的残留代理 unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY all_proxy ALL_PROXY # 强制设置 HTTP 代理(按实际端口修改,比如你的代理 HTTP 端口是 7897 就改这里) export http_proxy="http://127.0.0.1:7890" export https_proxy="http://127.0.0.1:7890" export export # 脚本原本的其他内容(保持不变) ...

保存退出

重新运行gui.sh就可以了

./gui.sh

出现以下内容就表明运行成功了

* Running on local URL: http://127.0.0.1:7860 * To create a public link, set `share=True` in `launch()`. ^CKeyboard interruption in main thread... closing server.

Read more

前端TypeScript高级技巧:让你的代码更安全

前端TypeScript高级技巧:让你的代码更安全 毒舌时刻 前端TypeScript?这不是增加工作量吗? "JavaScript就够了,为什么要用TypeScript"——结果类型错误频发,调试困难, "TypeScript太严格了,我写起来很麻烦"——结果代码质量差,维护困难, "我只在关键地方用TypeScript,其他地方用any"——结果失去了TypeScript的意义。 醒醒吧,TypeScript不是负担,而是提高代码质量的利器! 为什么你需要这个? * 类型安全:在编译时发现类型错误 * 代码提示:提供更好的IDE智能提示 * 重构安全:重构代码时更加安全 * 可读性:代码更加清晰易懂 * 可维护性:减少运行时错误,提高代码可维护性 反面教材 // 反面教材:过度使用any function processData(data: any) { // 没有类型检查,容易出错 return data.name.toUpperCase(

深入理解前端防抖(Debounce)与节流(Throttle):原理、区别与实战示例

深入理解前端防抖(Debounce)与节流(Throttle):原理、区别与实战示例

深入理解前端防抖(Debounce)与节流(Throttle):原理、区别与实战示例 📌 引言 在前端开发中,我们经常需要处理高频事件(如输入框输入、滚动、窗口调整大小等)。如果不加限制,浏览器会频繁触发回调函数,导致性能问题,甚至页面卡顿。 防抖(Debounce) 和 节流(Throttle) 是两种优化方案,可以有效控制事件触发的频率,提高应用的性能和用户体验。 本篇文章将详细解析 防抖和节流的原理、适用场景及代码实现,帮助你更好地优化前端应用。 1. 什么是防抖(Debounce)? 📝 概念 防抖是一种在事件触发后延迟执行的技术,如果在延迟期间事件被再次触发,计时器会重置,重新计算延迟时间。 核心思想:短时间内多次触发,只执行最后一次。 📌 适用场景 * 搜索框输入(防止用户每次输入都发送请求) * 窗口调整大小(resize)(防止短时间内多次触发计算) * 表单输入验证(用户停止输入后再进行验证) ✅ 代码实现 functiondebounce(fn,

零基础学AI大模型之LLM存储记忆功能之BaseChatMemory

零基础学AI大模型之LLM存储记忆功能之BaseChatMemory

大家好,我是工藤学编程 🦉一个正在努力学习的小博主,期待你的关注实战代码系列最新文章😉C++实现图书管理系统(Qt C++ GUI界面版)SpringBoot实战系列🐷【SpringBoot实战系列】SpringBoot3.X 整合 MinIO 存储原生方案分库分表分库分表之实战-sharding-JDBC分库分表执行流程原理剖析消息队列深入浅出 RabbitMQ-RabbitMQ消息确认机制(ACK)AI大模型零基础学AI大模型之LLM大模型存储记忆功能 前情摘要 1、零基础学AI大模型之读懂AI大模型 2、零基础学AI大模型之从0到1调用大模型API 3、零基础学AI大模型之SpringAI 4、零基础学AI大模型之AI大模型常见概念 5、零基础学AI大模型之大模型私有化部署全指南 6、零基础学AI大模型之AI大模型可视化界面 7、零基础学AI大模型之LangChain 8、零基础学AI大模型之LangChain六大核心模块与大模型IO交互链路 9、零基础学AI大模型之Prompt提示词工程 10、零基础学AI大模型之LangChain-PromptTemp

AI 大模型应用后端开发,2026 年最新零基础入门路线,少走 3 年弯路

导语:别让「算法陷阱」,毁掉你的AI入行路 2026年,AI大模型的浪潮已经从技术圈彻底席卷至全行业,92%的科技企业已完成大模型架构的业务嵌入,大模型应用后端开发岗位的市场需求较2023年暴增340%,20K起步的校招薪资、50W+的社招年薪早已成为行业常态。 但我接触过上千名想入行的零基础学习者,90%的人都倒在了入门的路上,白白浪费了1-3年的时间,核心原因只有一个:从一开始就走错了路,掉进了「上来就学算法」的新手致命陷阱里。 很多人天然觉得,做AI大模型开发,就得先啃高等数学、线性代数、概率论,就得手撕Transformer源码、搞懂反向传播、学预训练和模型微调。结果学了半年,连一个最简单的AI对话接口都写不出来,更别说做能上线的企业级产品,最后只能自我怀疑「我是不是不是这块料」,直接放弃。 今天这篇文章,我结合2026年最新的行业招聘标准、一线大厂技术落地实践、开源社区技术演进趋势,给你一套零基础可复制、零算法门槛、少走3年弯路的大模型应用后端开发入门路线。 全文会严格区分「必学/选学」内容,拆解最科学的技术栈学习顺序,给你精确到每周的3个月落地学习计划,只要你会用