秒级出图的AI绘画终于支持Automatic1111。
今天在AI绘画的开源平台Automatic1111上发布了Tensorrt项目,项目地址是
https://github.com/AUTOMATIC1111/stable-diffusion-webui-tensorrt
该项目是基于automatic1111的stable-diffusion-webui项目的子项目。
基本原理:
我们知道,automatic1111是基于pytorch框架设计的,每次执行,都会从基础模型进行推算直至最终出图。
Tensorrt是nvidia推出的推理器,在基于pytorch框架的应用上,它可以先用pytorch进行预处理生成ONNX预处理模型,这样完成了大量重负荷的工作,然后通过Tensorrt推理器,对ONNX进行推理计算。因此可快速生成AI绘图。甚至可以将图片生成速度提高至0.1秒内。
之前我也安装过几个基于Tensorrt的开源项目,但功能完整性上都不及automatic1111项目全面,这次automatic1111项目推出自己的tensorrt,算是补完了这块拼图。
当然,要把Tensorrt用起来,也不是这么容易的:
1. 安装:
stable diffusion中要把Tensorrt用起来,除了我们知道的Nvidia显卡驱动,CUDA Toolkit, CUDnn外,还要安装TensorRT, 而且TensorRT需要手动安装,Nvidia没有提供一键安装包。
2. 硬件支持:
Tensorrt, 早期版本需要SM5.0以上显卡,新版需要SM6.0以上显卡,要跑流畅了,需要Turing架构以上的含Tensor core的显卡。
3. 使用:
在实际使用时,我们需要一次性将基础模型(如果用到lora,需要一同加载)转化为ONNX模型,然后在生成图片时选择ONNX模型,并选择Tensorrt方式(不需要指定lora)
优点:出图快!非常快!
缺点:ONNX模型生成需要点时间,每种Lora与基模的组合,需要单独生成ONNX模型!
适合:应用场景相对固定的创作者--可快速大批量产出同样风格的创意。