本地部署 Stable Diffusion3

2024-06-16 10:44

本文主要是介绍本地部署 Stable Diffusion3,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

6月13日,Stability AI 正式开源20亿参数版本的Stable Diffusion 3 Medium。本文将在本地部署 SD3,GPU配置如下 GPU 2080TI / 22G

安装依赖

修改 WORKSPACE 位置信息,安装ComfyUI

# #@title Environment Setupfrom pathlib import PathOPTIONS = {}
UPDATE_COMFY_UI = True  #@param {type:"boolean"}
INSTALL_COMFYUI_MANAGER = True  #@param {type:"boolean"}
INSTALL_ANIMATEDIFF = True  #@param {type:"boolean"}
INSTALL_CUSTOM_NODES_DEPENDENCIES = True  #@param {type:"boolean"}
OPTIONS['UPDATE_COMFY_UI'] = UPDATE_COMFY_UI
OPTIONS['INSTALL_COMFYUI_MANAGER'] = INSTALL_COMFYUI_MANAGER
OPTIONS['INSTALL_ANIMATEDIFF'] = INSTALL_ANIMATEDIFF
OPTIONS['INSTALL_CUSTOM_NODES_DEPENDENCIES'] = INSTALL_CUSTOM_NODES_DEPENDENCIESWORKSPACE = "/notebook/SD/ComfyUI"%cd /notebook/SD/![ ! -d $WORKSPACE ] && echo -= Initial setup ComfyUI =- && git clone https://github.com/comfyanonymous/ComfyUI%cd $WORKSPACE!echo $WORKSPACEif OPTIONS['UPDATE_COMFY_UI']:!echo "-= Updating ComfyUI =-"!git pull!pip install -r requirements.txt

下载模型权重

#@markdown ###Download standard resources### SDXL
### I recommend these workflow examples: https://comfyanonymous.github.io/ComfyUI_examples/sdxl/OPTIONS = {}#@markdown **Models**!wget -c "https://modelscope.cn/api/v1/models/AI-ModelScope/stable-diffusion-3-medium/repo?Revision=master&FilePath=sd3_medium.safetensors" -P ./models/checkpoints/

下载 Text Encoder

#@markdown **clip**!wget -c "https://modelscope.cn/api/v1/models/AI-ModelScope/stable-diffusion-3-medium/repo?Revision=master&FilePath=text_encoders%2Fclip_g.safetensors" -P ./models/clip/
!wget -c "https://modelscope.cn/api/v1/models/AI-ModelScope/stable-diffusion-3-medium/repo?Revision=master&FilePath=text_encoders%2Fclip_l.safetensors" -P ./models/clip/
!wget -c "https://modelscope.cn/api/v1/models/AI-ModelScope/stable-diffusion-3-medium/repo?Revision=master&FilePath=text_encoders%2Ft5xxl_fp16.safetensors" -P ./models/clip/
!wget -c "https://modelscope.cn/api/v1/models/AI-ModelScope/stable-diffusion-3-medium/repo?Revision=master&FilePath=text_encoders%2Ft5xxl_fp8_e4m3fn.safetensors" -P ./models/clip/
#通过cloudflared启动 ComfyUI ,
!wget "https://modelscope.oss-cn-beijing.aliyuncs.com/resource/cloudflared-linux-amd64.deb"
!dpkg -i cloudflared-linux-amd64.deb

启动 ComfyUI 服务器

%cd /notebook/SD/ComfyUI
import subprocess
import threading
import time
import socket
import urllib.requestdef iframe_thread(port):while True:time.sleep(0.5)sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)result = sock.connect_ex(('127.0.0.1', port))if result == 0:breaksock.close()print("\nComfyUI finished loading, trying to launch cloudflared (if it gets stuck here cloudflared is having issues)\n")p = subprocess.Popen(["cloudflared", "tunnel", "--url", "http://127.0.0.1:{}".format(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE)for line in p.stderr:l = line.decode()if "trycloudflare.com " in l:print("This is the URL to access ComfyUI:", l[l.find("http"):], end='')#print(l, end='')threading.Thread(target=iframe_thread, daemon=True, args=(8891,)).start()
!python main.py --dont-print-server  --listen "0.0.0.0"  --port 8891 

运行

服务器启动之后,导入工作流配置

  1. 导入配置文件,配置文件位置在 https://www.modelscope.cn/models/AI-ModelScope/stable-diffusion-3-medium/files,comfy_example_workflows/sd3_medium_example_workflow_basic.json
    在这里插入图片描述
  2. 输入提示词,点击 Queue Prompt 生成图片。
    在这里插入图片描述

总结

根据以下提示词,比较ChatGPT、Google 和 SD 的差距。

A transparent glass of very very small slim capsule is being held by fingers, inside the capsule there is a nuclear explosion, there is smoke and fire, the background of a cozy room

ChatGPT
在这里插入图片描述
Google Gemini

在这里插入图片描述
SD3
在这里插入图片描述
ChatGPT最好,比较细腻,其次是Gemini ,SD 稍微差一些,SD的好处是可以私有化部署,可以根据需要进行私有数据训练,SD 生成速度 2.1 it/s。

这篇关于本地部署 Stable Diffusion3的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1066249

相关文章

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe

Maven项目打包时添加本地Jar包的操作步骤

《Maven项目打包时添加本地Jar包的操作步骤》在Maven项目开发中,我们经常会遇到需要引入本地Jar包的场景,比如使用未发布到中央仓库的第三方库或者处理版本冲突的依赖项,本文将详细介绍如何通过M... 目录一、适用场景说明​二、核心操作命令​1. 命令格式解析​2. 实战案例演示​三、项目配置步骤​1

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

一文详解如何查看本地MySQL的安装路径

《一文详解如何查看本地MySQL的安装路径》本地安装MySQL对于初学者或者开发人员来说是一项基础技能,但在安装过程中可能会遇到各种问题,:本文主要介绍如何查看本地MySQL安装路径的相关资料,需... 目录1. 如何查看本地mysql的安装路径1.1. 方法1:通过查询本地服务1.2. 方法2:通过MyS

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f