使用 ComfyUI 进行流媒体扩散
0 引言
最近似乎发布了 Stream Diffusion ,因此我们开发了一个自定义节点,使其也能在ComfyUI 上运行。
据说,流扩散是一种批处理过程,在连续生成图像时,除了当前正在生成图像的步骤外,还已经开始了下一步的生成。
我不是学者,所以不知道细节,但他似乎在自己的官方 YouTube 频道上谈到了上述内容,如果你感兴趣,可以去看看。
当我们查看实际版本库时,发现它是使用 Diffusers 编写的,因此我们无法将其作为一个自定义节点,所以我们决定在 ComfyUI 中提供 Diffusers,并使用它来运行 Stream Diffusion。以下是该项目的简要介绍。
本文发布后,开发工作将继续进行,因此如果您有任何关于其他功能或问题的建议,我们将不胜感激。
也欢迎您与我们共同开发。
1. 如何使用
本节将从已经可以运行 Comfy UI 的角度对其进行说明。
0. ComfyUI-Diffusers
实际的存储库在这里。
虽然名称是 Diffusers,但其中包含了运行 StreamDiffusion 的节点。
1. 安装
在 ComfyUI/custom_nodes/ 中,克隆存储库并安装所需的模块。
git clone https://github.com/Limitex/ComfyUI-Diffusers.git
cd ComfyUI-Diffusers
pip install -r requirements.txt
git clone https://github.com/cumulo-autumn/StreamDiffusion.git
python -m streamdiffusion.tools.install-tensorrt
2. 示例:
在实际操作中,请参阅下面的工作流程,了解它是如何使用的。
实际工作流程可在 此处找到 。
此外,还可以通过以下方式实现实时生成
额外选项
通过启用 自动队列 功能,可以实时生成图像。
实际工作流程可在 此处 找到 。
它还可以与VideoHelperSuite 结合使用,实现视频 2 视频。实际工作流程请 点击此处。
实际执行情况如下。
2 节点
本节介绍已实施的节点。
扩散器 管道装载机
类别 : DiffusersPipelineLoader
从存储在 ComfyUI/models/checkpoints (如 safetensors、ckpt 等)中的模型创建 Diffusers 模型缓存,并加载管道。
扩散器 Vae Loader
类别 : DiffusersVaeLoader
从存储在 ComfyUI/models/vae 中的模型创建扩散器模型缓存,并加载 vae。
扩散器调度加载器
类 : DiffusersSchedulerLoader
加载管道并选择调度程序。
扩散器 模特化妆
类别 : DiffusersModelMakeup
加载管道、scheduker 和自动编码器,并准备生成模型。
扩散器 剪切 文本编码
类别 : DiffusersClipTextEncode
加载准备好的管道并嵌入实际提示。
对于正文和负文,文本按原样返回。(字符串)
扩散器采样器
类别 : 扩散器采样器
使用扩散器生成图像
创建 Int 列表
类 : CreateIntListNode
创建一个 int 列表。
在元素计数中输入列表的长度。在下面的示例中,将创建一个[0, 16, 32, 45] 的列表。
LcmLoraLoader.
类 : LcmLoraLoader
加载 LCM Lora 安全传感器文件。
正式使用的 LCM LORA 可在lcm-lora-sdv1-5 中找到。
StreamDiffusion 创建流
类别 : StreamDiffusionCreateStream
为 StreamDiffusion 创建一个流。
流扩散采样器
类别 : 流扩散采样器
从数据流中生成多个图像。
通过在 Image 中输入图像,可以实现 image2image。通过与VideoHelperSuite 结合,还可以实现video2video 。
流扩散热身
类别 : StreamDiffusionWarmup
从创建的流中,为快速采样器创建一个 warmup_stream。
StreamDiffusion 快速采样器
类 : 流扩散快速采样器
与 StreamDiffusionSampler 相比,它能更快地从预热的数据流中生成图像;通过将Extra(额外)选项 中的 Auto Queue ( 自动队列 )设置为 True,可以实时生成图像。
参考资料
如果您喜欢这篇文章,为什么不支持它呢?
コメント
要发表评论, 您必须先 登录 或 注册 。