: r- R& {" V! h! H( o' m% X) Q1 \1 o w9 M) u Y
Stable Diffusion安装GitHub' h0 c5 j+ h4 d5 g: [. u
在安装 Stable Diffusion 模型时,通常有两种主要方式:直接从官方 GitHub 仓库克隆代码,或通过 Hugging Face 等平台安装预训练模型。下面将分别介绍这两种方法。9 G; u& M- v+ @3 K7 o
2 W; H; H P" m8 H2 C. P/ ~" Q
方法一:从 GitHub 克隆代码
/ n3 ]/ L d( v2 f4 _克隆 Stable Diffusion 仓库
p6 m1 ]) S' _6 O7 g
! u& s2 A3 ~# x \- d3 f* r首先,你需要从 GitHub 克隆 Stable Diffusion 的官方仓库。截至目前(2023年),官方仓库地址为:6 W" n) @/ `+ g
' B- R: X& n' h0 E5 s$ \# [https://github.com/CompVis/stable-diffusion8 m3 n7 Q( s" z+ m2 b
* t0 Q8 F( Y) m7 A& p在终端中,使用以下命令克隆仓库:+ g" b2 d) q3 o) I, S3 Y) _1 {
& Z3 n& _, B' i0 v
git clone https://github.com/CompVis/stable-diffusion.git
( C# S% B' B/ [& K+ xcd stable-diffusion
5 i7 z! I! Z2 S7 E9 D
2 K2 k$ x) r, L `1 y设置环境
* _, g c- R$ r) ]
7 p& D7 P" `! m$ E; d; y安装必要的依赖。Stable Diffusion 需要 Python 和一些特定的库。你可以使用 requirements.txt 文件中的依赖来安装它们。首先,确保你的 Python 版本符合要求(通常是 Python 3.8 或更高)。然后,使用以下命令安装依赖:
* B0 u3 K' ~, S- C' @& n/ Z F5 N0 ~: s7 r# d
pip install -r requirements.txt: |6 E2 Y, n0 q, W3 ~6 e+ Y
. n+ n4 S) v5 m' S+ w/ ]/ B
运行 Stable Diffusion
3 r$ j0 i* v( B% W/ q" s
8 t! X1 r: a/ G4 y0 }% i, C3 |* E根据你的具体需求,你可以运行不同的脚本。例如,如果你只是想测试模型,可以运行:
. ]7 m, c4 s! d& J6 D. D8 S
' g3 y8 \5 f9 X% Y# spython scripts/txt2img.py --prompt "a photo of an astronaut riding a horse"0 _5 \* P( @# n% U3 O" G
6 ]/ Y/ M) I5 @6 ]" }' A Z方法二:通过 Hugging Face 安装预训练模型9 z9 @- q# a0 K6 ?' F
如果你只是想使用预训练的模型而不想从源代码开始,你可以使用 Hugging Face 的 diffusers 库来加载和使用 Stable Diffusion 模型。
5 I) Z) Q, C7 M: q1 z4 ]6 G
8 d7 n8 o5 @) _& ]安装 diffusers
8 C* t' v- ]7 ?. c
7 b4 W6 T* z& W首先,安装 diffusers 库:
' z2 Y0 Y& V- Z1 t
q) Z: b( k# [5 J% l2 Y- F2 b+ zpip install diffusers transformers scipy
' r2 ~6 |+ v* `8 j' }4 p3 T1 E; `
4 X) p3 j+ @2 I" L$ z3 J加载和使用模型
6 |1 f- d0 e+ J- s2 \; B5 f/ j' z- V5 [8 W) M& u, {
使用以下代码加载和使用 Stable Diffusion 模型:; g! P5 k7 L+ z6 u* u+ e2 M8 V
1 S0 E+ r4 P9 m) j. r# N# S7 _$ c
from diffusers import StableDiffusionPipeline
& U" ~" p9 E" B4 n. ~& z1 \; Jimport torch( ]) Z( S$ N# y9 b9 V' T, H6 d: o
* R2 O, q& |2 q% G- X
device = "cuda" if torch.cuda.is_available() else "cpu"
# f6 x$ v% G& I3 u$ K- o$ T% vmodel_id = "runwayml/stable-diffusion-v1-5" # 使用官方预训练模型ID
, {% t$ i3 n. V( k# H/ l1 f1 ypipe = StableDiffusionPipeline.from_pretrained(model_id, use_auth_token=True)
# ~. ]* @5 U; ]& Mpipe = pipe.to(device)7 q6 S2 P' e9 x) [
* h6 U, n, g3 I: `% cimage = pipe("a photo of an astronaut riding a horse", guidance_scale=7.5)
& I) V( M9 C0 C2 x4 x7 bimage[0].save("astronaut_riding_horse.png")
8 e7 ^# B7 M# K3 U+ P0 [0 E# ?' o5 Q' J. a" s4 B& N
确保替换 use_auth_token=True 中的 True 为你的 Hugging Face 访问令牌,如果你有的话。如果没有,可以省略或设置为 None。你可以在 Hugging Face 的网站上获取访问令牌。, I# [/ O! L- Q" I8 d* [) |
; Q4 ?, `! e( R2 p1 h0 Y
通过上述任何一种方法,你都可以开始使用 Stable Diffusion 生成图像了。选择哪种方法取决于你的具体需求,比如是否需要自定义模型或只是快速开始使用预训练模型。
* z& y o( v1 f% w* y
{$ ~4 i5 R# x5 b& v提示:AI自动生成,仅供参考% j- F* Z# l0 y" c8 \ C; c. c. ~' J
4 f( y$ }( \$ L9 f9 M参考 |