使用代码stable diffusion批量生成
时间: 2025-01-30 09:11:34 浏览: 65
### 使用Python和Stable Diffusion API批量生成图片
为了实现这一目标,可以利用`diffusers`库中的`StableDiffusionPipeline`来加载预训练模型,并通过循环结构多次调用模型的`.generate()`方法或直接使用`.__call__()`方法来进行批量化图像生成。下面是一个具体的代码实例:
```python
import torch
from diffusers import StableDiffusionPipeline
# 定义设备:GPU优先,否则CPU
device = "cuda" if torch.cuda.is_available() else "cpu"
# 加载稳定扩散管道
pipe = StableDiffusionPipeline.from_pretrained('runwayml/stable-diffusion-v1-5', torch_dtype=torch.float16).to(device)
prompts_list = [
'A beautiful landscape with mountains and rivers',
'An abstract painting of a city at night'
]
def batch_generate_images(prompts, output_dir='./output'):
"""
批量生成基于给定提示符列表的高质量艺术作品
参数:
prompts (list): 提示字符串组成的列表
output_dir (str): 输出目录路径,默认当前文件夹下的'./output'
返回值:
None
"""
# 创建输出文件夹(如果不存在)
os.makedirs(output_dir, exist_ok=True)
for idx, prompt in enumerate(prompts):
image = pipe(prompt)["images"][0]
filename = f"{output_dir}/image_{idx}.png"
image.save(filename)
print(f'Saved {filename}')
batch_generate_images(prompts_list)
```
上述脚本展示了如何定义一系列文本提示并通过遍历这些提示来逐个生成对应的图像[^2]。
值得注意的是,在实际应用过程中可能还需要考虑更多细节,比如调整随机种子以获得可重复的结果、优化性能以及处理可能出现的各种异常情况等。
阅读全文
相关推荐


















