返回模型
说明文档
简介
此演示应用程序("demoDiffusion")展示了使用 TensorRT 插件加速 Stable Diffusion 推理管道。
设置
克隆 TensorRT OSS 仓库
git clone git@github.com:NVIDIA/TensorRT.git -b release/8.5 --single-branch
cd TensorRT
git submodule update --init --recursive
启动 TensorRT NGC 容器
按照这些说明安装 nvidia-docker。
docker run --rm -it --gpus all -v $PWD:/workspace nvcr.io/nvidia/tensorrt:22.10-py3 /bin/bash
(可选)安装最新 TensorRT 版本
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade tensorrt
注意:或者,您可以从 NVIDIA TensorRT 开发者专区下载并安装 TensorRT 软件包。
构建 TensorRT 插件库
按照 TensorRT OSS 构建说明构建 TensorRT 插件库。
export TRT_OSSPATH=/workspace
cd $TRT_OSSPATH
mkdir -p build && cd build
cmake .. -DTRT_OUT_DIR=$PWD/out
cd plugin
make -j$(nproc)
export PLUGIN_LIBS=\"$TRT_OSSPATH/build/out/libnvinfer_plugin.so\"
安装所需依赖包
cd $TRT_OSSPATH/demo/Diffusion
pip3 install -r requirements.txt
# 创建输出目录
mkdir -p onnx engine output
注意:demoDiffusion 已在配备 NVIDIA A100、RTX3090 和 RTX4090 GPU 的系统上进行测试,软件配置如下:
cuda-python 11.8.1
diffusers 0.7.2
onnx 1.12.0
onnx-graphsurgeon 0.3.25
onnxruntime 1.13.1
polygraphy 0.43.1
tensorrt 8.5.1.7
tokenizers 0.13.2
torch 1.12.0+cu116
transformers 4.24.0
注意:可选择安装 HuggingFace accelerate 软件包,以实现更快速且内存占用更少的模型加载。
运行 demoDiffusion
查看使用说明
python3 demo-diffusion.py --help
HuggingFace 用户访问令牌
要下载 Stable Diffusion 推理管道的模型检查点,您需要一个 read 访问令牌。请参阅说明。
export HF_TOKEN=<your access token>
根据单个文本提示生成图像
LD_PRELOAD=${PLUGIN_LIBS} python3 demo-diffusion.py \"a beautiful photograph of Mt. Fuji during cherry blossom\" --hf-token=$HF_TOKEN -v
限制
- 每次推理最多支持 16 个同时提示(最大批次大小)。
- 要在不重新构建引擎的情况下生成动态尺寸的图像,请使用
--force-dynamic-shape。 - 支持的图像尺寸在 256x256 到 1024x1024 之间。
camenduru/tensorrt-test-22.10
作者 camenduru
↓ 0
♥ 0
创建时间: 2023-02-01 11:52:12+00:00
更新时间: 2023-02-01 12:30:38+00:00
在 Hugging Face 上查看文件 (52)
.gitattributes
.gitignore
README.md
demo-diffusion.py
engine/clip.plan
engine/unet_fp16.plan
engine/vae.plan
models.py
onnx/clip.onnx
ONNX
onnx/clip.opt.onnx
ONNX
onnx/unet_fp16.onnx
ONNX
onnx/unet_fp16.opt.onnx
ONNX
onnx/vae.onnx
ONNX
onnx/vae.opt.onnx
ONNX
output/sd-fp16-als_beauti-1-1833.png
output/sd-fp16-als_beauti-1-2156.png
output/sd-fp16-als_beauti-1-2469.png
output/sd-fp16-als_beauti-1-4330.png
output/sd-fp16-als_beauti-1-5266.png
output/sd-fp16-als_beauti-1-6483.png
output/sd-fp16-als_beauti-1-8356.png
output/sd-fp16-als_beauti-10-8081.png
output/sd-fp16-als_beauti-11-6383.png
output/sd-fp16-als_beauti-12-3382.png
output/sd-fp16-als_beauti-13-8041.png
output/sd-fp16-als_beauti-14-8491.png
output/sd-fp16-als_beauti-15-1043.png
output/sd-fp16-als_beauti-16-5686.png
output/sd-fp16-als_beauti-2-3984.png
output/sd-fp16-als_beauti-2-5914.png
output/sd-fp16-als_beauti-2-7772.png
output/sd-fp16-als_beauti-3-4876.png
output/sd-fp16-als_beauti-3-5912.png
output/sd-fp16-als_beauti-3-6365.png
output/sd-fp16-als_beauti-4-2160.png
output/sd-fp16-als_beauti-4-5507.png
output/sd-fp16-als_beauti-4-9267.png
output/sd-fp16-als_beauti-5-7535.png
output/sd-fp16-als_beauti-5-7751.png
output/sd-fp16-als_beauti-5-8031.png
output/sd-fp16-als_beauti-6-2878.png
output/sd-fp16-als_beauti-6-6059.png
output/sd-fp16-als_beauti-6-8359.png
output/sd-fp16-als_beauti-7-2848.png
output/sd-fp16-als_beauti-7-6702.png
output/sd-fp16-als_beauti-7-9321.png
output/sd-fp16-als_beauti-8-2223.png
output/sd-fp16-als_beauti-8-5643.png
output/sd-fp16-als_beauti-8-5884.png
output/sd-fp16-als_beauti-9-6315.png
requirements.txt
utilities.py