登录进入百度智能云控制台,在模型广场按照图像生成类别进行筛选,可以找到Stable-Diffusion-XL模型。点击Stable-Diffusion-XL模型的API文档后在弹出的新页面下拉可以找到SDK调用的说明。
import qianfandef sdxl(file: str, prompt: str, steps: int = 20, seed: int = -1) -> None:'''调用百度智能云的SDXL模型,根据文字生成图片。支持中文。:param file: 保存图片的文件名(文件属于JPEG格式):param prompt: 文字描述:param steps: 迭代次数。默认为20,实测35才能有较好的效果。:param seed: 随机种子。小于0时随机。'''t2i = qianfan.Text2Image()s = seed if seed >= 0 else Noneresp = t2i.do(prompt=prompt, with_decode="base64", model="Stable-Diffusion-XL", steps=steps, seed=s)img_data = resp["body"]["data"][0]["image"]with open(file, 'wb') as f:f.write(img_data)if __name__ == "__main__":for i in range(5):steps = 20 + 5 * isdxl(f"sdxl_{steps}.jpg", "一个美丽的女孩子", steps, 1)
设置环境变量QIANFAN_ACCESS_KEY和QIANFAN_SECRET_KEY后,安装好千帆SDK,执行后生成图片。
20,25,30,35,40步的图像: