3 L3 k/ o+ ]+ M$ A- H: w3 s: A
1 V0 d: j$ B8 s8 |; R# {9 f! j% a
Stable Diffusion安装GitHub+ |2 D& g! g! q) y( D0 Z
在安装 Stable Diffusion 模型时,通常有两种主要方式:直接从官方 GitHub 仓库克隆代码,或通过 Hugging Face 等平台安装预训练模型。下面将分别介绍这两种方法。
( b# W; Z& h4 W( a7 J( O' e: V/ }1 q/ I# l
方法一:从 GitHub 克隆代码
}! H. ?$ D: F- i) \' U克隆 Stable Diffusion 仓库; f+ l/ N: z9 {
" e2 [% X5 d/ W. L: b% F
首先,你需要从 GitHub 克隆 Stable Diffusion 的官方仓库。截至目前(2023年),官方仓库地址为:
0 |1 F0 e# ?9 e9 E8 R. p, s2 R
( v _- O! n( ] `# ?/ Mhttps://github.com/CompVis/stable-diffusion, _. |5 Z+ _7 X
# Q5 u+ H3 C5 I8 T0 `% r! }在终端中,使用以下命令克隆仓库:
6 F, f) _; Q3 X; g& q! T- }3 }" c4 c s, b; Q% U3 h8 a) d& c! U5 m5 B3 L
git clone https://github.com/CompVis/stable-diffusion.git3 ?% K8 m4 N# ^7 e/ E+ U5 N3 E1 t
cd stable-diffusion. b( L" B$ J3 j/ ~1 m2 p
: G3 C, q9 ]+ B4 ~* g# S; ?1 ]
设置环境* B) H. r/ R; M3 Z
4 I$ J9 u. I9 J9 S6 M+ `6 p( P安装必要的依赖。Stable Diffusion 需要 Python 和一些特定的库。你可以使用 requirements.txt 文件中的依赖来安装它们。首先,确保你的 Python 版本符合要求(通常是 Python 3.8 或更高)。然后,使用以下命令安装依赖:
2 X/ |+ _& j. v% t# u$ o5 f9 U5 k: Z C6 s9 G. M
pip install -r requirements.txt8 S7 r6 V/ p# s' q; k4 u
- _( e) K' K- n. a. k4 q2 _
运行 Stable Diffusion
& \; y+ z* O4 A+ K$ D8 {% c) a* S3 z( [& z
根据你的具体需求,你可以运行不同的脚本。例如,如果你只是想测试模型,可以运行:
1 [& k$ K9 p2 ^- i# \1 b1 o5 L& @; E3 I6 A" a( I
python scripts/txt2img.py --prompt "a photo of an astronaut riding a horse"
( y# r# R! ~ U# {+ X! J! G* \/ k+ D D
方法二:通过 Hugging Face 安装预训练模型
L8 u2 s8 X! j( A如果你只是想使用预训练的模型而不想从源代码开始,你可以使用 Hugging Face 的 diffusers 库来加载和使用 Stable Diffusion 模型。/ ^) X1 Y$ e/ j2 u. |; V
' `1 X/ k, U+ m安装 diffusers
) A( ` v/ R; f$ C7 v: b7 @' _9 s" C W1 V* [8 H% {5 W
首先,安装 diffusers 库:
& |6 }" ~) y1 \ w; |& ]; E5 a* p& l) g+ L
pip install diffusers transformers scipy
5 `1 {) U$ R6 `& `
1 k. T7 p8 X% G加载和使用模型8 Y) D0 w7 {2 B/ H& i
$ d/ S( M5 |2 v) p" o使用以下代码加载和使用 Stable Diffusion 模型:2 ?: G3 `! W4 \, o- S
, j2 {3 a! m( _3 _5 v0 Sfrom diffusers import StableDiffusionPipeline- _& K$ A! X/ Y8 G" v# w! ~" k9 ~7 B
import torch
+ ^' M8 V& v" V, f+ N & f3 `* M( q: u0 n( C2 i
device = "cuda" if torch.cuda.is_available() else "cpu"% Z. I0 g- M/ i3 O v
model_id = "runwayml/stable-diffusion-v1-5" # 使用官方预训练模型ID
, s9 Y% Z3 A" `; p% a Zpipe = StableDiffusionPipeline.from_pretrained(model_id, use_auth_token=True)3 M# w! o% x9 o. m0 _
pipe = pipe.to(device)
5 e t& C ?. a
, j) a( \& G( y; q6 N v, F; V5 S- `1 Cimage = pipe("a photo of an astronaut riding a horse", guidance_scale=7.5)
, D; h+ n" G+ k/ J* J2 |- a( iimage[0].save("astronaut_riding_horse.png")& ]. t5 Y/ `( Q7 z7 Z
' P/ r$ a# N y5 m. W+ C3 q确保替换 use_auth_token=True 中的 True 为你的 Hugging Face 访问令牌,如果你有的话。如果没有,可以省略或设置为 None。你可以在 Hugging Face 的网站上获取访问令牌。
# c' e9 D2 h0 J l9 p4 M: r
7 V% t/ h- Q0 x7 J- ~" W通过上述任何一种方法,你都可以开始使用 Stable Diffusion 生成图像了。选择哪种方法取决于你的具体需求,比如是否需要自定义模型或只是快速开始使用预训练模型。
% U4 h0 M2 z2 ~2 {1 L! I$ r8 |* W* ?2 x4 v% \" Z, N& R
提示:AI自动生成,仅供参考
' p0 q" ]6 r" G9 @: {2 J7 b- K. i
% x; y1 f# U7 ^' w. j参考 |