onnx-web
onnx-web旨在简化运行Stable Diffusion和其他ONNX模型的过程,让您能够专注于创作高质量、高分辨率的艺术作品。借助AMD和Nvidia GPU的硬件加速效率,并提供可靠的CPU软件后备方案,它在台式机、笔记本电脑和多GPU服务器上提供完整的功能集,带来无缝的用户体验。
您可以通过托管在Github Pages上的用户友好的网页界面进行操作,该界面可在所有主流浏览器中访问,包括您常用的移动设备。在这里,您可以灵活选择每个图像管道的扩散模型和加速器,并轻松访问定义每种模式的图像参数。无论您是上传图像还是通过内部绘制和外部绘制表达艺术创意,onnx-web都提供了一个既用户友好又功能强大的环境。最近生成的输出图像整齐地呈现在控制面板下方,作为方便的视觉参考,可以重新查看之前的参数或重新混合您之前的输出。
通过其API,您可以更深入地体验onnx-web,该API兼容Linux和Windows。这个RESTful接口无缝集成了来自HuggingFace diffusers库的各种管道,提供有关模型和加速器的有价值元数据,以及您创意运行的详细输出。
开始您的生成艺术之旅,使用onnx-web并通过我们详细的文档网站探索其功能。您会发现全面的入门指南、设置指南和用户指南,它们将助力您的创意endeavor!
更多信息请查看文档网站:
功能
以下是一些新的和有趣的功能的不完整列表:
- 支持SDXL和SDXL Turbo
- 多种调度器:DDIM、DEIS、DPM SDE、Euler Ancestral、LCM、UniPC等
- AMD和Nvidia上的硬件加速
- 已在CUDA、DirectML和ROCm上测试
- AMD和Nvidia上低内存GPU的半精度支持
- 仅CPU系统的软件后备方案
- 用于生成和查看图像的网页应用
- 托管在Github Pages上,从您的CDN或本地访问
- 在切换标签页时保留最近的图像和进度
- 可排队多个图像并重试错误
- 提供英语、法语、德语和西班牙语翻译(如需更多语言请提出问题)
- 支持多种
diffusers
管道 - 添加和使用您自己的模型
- 融合额外网络
- 永久和基于提示的融合
- 支持LoRA和LyCORIS权重
- 支持文本反转概念和嵌入
- 可以单独控制和使用嵌入的每一层
- ControlNet
- 用于边缘检测和其他方法的图像滤镜
- 使用ONNX加速
- 高分辨率模式
- 对其他管道的结果运行img2img
- 多次迭代可以生成8k及更大的图像
- 多阶段和区域提示
- 在同一图像中无缝组合多个提示
- 为图像的不同区域提供提示并将它们融合在一起
- 更改高分辨率模式的提示并细化细节,无需递归
- 无限提示长度
- 图像融合模式
- 合并历史记录中的图像
- 放大和修正
- 使用Real ESRGAN、SwinIR和Stable Diffusion进行放大
- 使用CodeFormer和GFPGAN进行面部修正
- API服务器可以远程运行
- REST API可以通过HTTPS或HTTP提供服务
- 所有图像管道的后台处理
- 轮询图像状态,与负载均衡器配合良好
- 提供OCI容器
目录
设置
有几种方法可以运行onnx-web:
您只需要运行服务器,不需要编译任何东西。客户端GUI托管在Github Pages上,并包含在Windows一体化软件包中。
扩展设置文档已移至设置指南。
添加您自己的模型
您可以通过从HuggingFace Hub或Civitai下载模型,或从本地文件转换模型来添加您自己的模型,无需进行任何代码更改。您还可以使用提示中的令牌下载和融合额外网络,如LoRA和文本反转。
使用方法
已知错误及解决方案
请参阅用户指南中的已知错误部分。
运行容器
这部分内容已移至服务器管理员指南。
致谢
部分转换和管道代码复制或衍生自以下项目:
Amblyopius/Stable-Diffusion-ONNX-FP16
- GPL v3协议:https://github.com/Amblyopius/Stable-Diffusion-ONNX-FP16/blob/main/LICENSE
- https://github.com/Amblyopius/Stable-Diffusion-ONNX-FP16/blob/main/pipeline_onnx_stable_diffusion_controlnet.py
- https://github.com/Amblyopius/Stable-Diffusion-ONNX-FP16/blob/main/pipeline_onnx_stable_diffusion_instruct_pix2pix.py
d8ahazard/sd_dreambooth_extension
huggingface/diffusers
uchuusen/onnx_stable_diffusion_controlnet
uchuusen/pipeline_onnx_stable_diffusion_instruct_pix2pix
这些部分有各自的许可证,对商业使用、修改和再分发有额外限制。项目的其余部分采用MIT许可证提供,我正在努力将这些组件隔离到一个库中。
还有许多其他优秀的选择可以利用硬件加速来使用Stable Diffusion,包括:
- https://github.com/Amblyopius/AMD-Stable-Diffusion-ONNX-FP16
- https://github.com/azuritecoin/OnnxDiffusersUI
- https://github.com/ForserX/StableDiffusionUI
- https://github.com/pingzing/stable-diffusion-playground
- https://github.com/quickwick/stable-diffusion-win-amd-ui
在AMD上设置和运行这个项目离不开以下指南的帮助: