Diffusers去除NSFW限制

众所周知,涩涩是文字生成图片技术发展的重大推动力 . Huggingface的diffusers封装了大量的算法用于生成图片。但是,很不幸的,diffusers会检测生成的图片是否存在NSFW(not safe for work)的内容,这就给我们涩涩带来了不必要的麻烦。所以我将介绍如何去除限制

该方法来自网友,原链接

先给一段示例代码

1
2
3
4
5
6
7
8
import numpy as np
import matplotlib.pyplot as plt
from diffusers import StableDiffusionPipeline
import cv2 as cv
if __name__ == '__main__':
pipe = StableDiffusionPipeline.from_pretrained("CompVis/stable-diffusion-v1-4")
new_image = pipe(prompt, num_inference_steps=20).images[0]
plt.save('image.png',new_image)

我们只需要设置StableDiffusionPipeline 这个类的safety_checker函数,更改之后的代码

1
2
3
4
5
6
7
8
9
10
11
import numpy as np
import matplotlib.pyplot as plt
from diffusers import StableDiffusionPipeline
import cv2 as cv
def dummy(images, **kwargs):
return images, False
if __name__ == '__main__':
pipe = StableDiffusionPipeline.from_pretrained("CompVis/stable-diffusion-v1-4")
pipe.safety_checker = dummy
new_image = pipe(prompt, num_inference_steps=20).images[0]
plt.save('image.png',new_image)

成功实现涩涩自由


Diffusers去除NSFW限制
https://studyinglover.com/2023/06/11/Diffusers去除NSFW限制/
作者
StudyingLover
发布于
2023年6月11日
许可协议