ComfyUI-Attention-Distillation 插件保姆级教程
1. 插件简介
插件地址: https://github.com/zichongc/ComfyUI-Attention-Distillation
ComfyUI-Attention-Distillation 是一个超级厉害的风格转换和风格化图像生成插件,就像一个会模仿各种艺术风格的魔法师!它能帮你:
- 风格转换:把一张普通照片变成梵高、毕加索等艺术大师的风格,就像给照片换了个滤镜,但比普通滤镜高级一万倍
- 风格化文字生成图:根据你的文字描述生成图片,同时让图片具有特定的艺术风格,比如"一只猫,梵高风格"
- 支持多种AI模型:支持 Stable Diffusion 1.5、SDXL、FLUX 等主流AI绘画模型
- 高质量效果:使用先进的注意力蒸馏技术,生成的图片质量非常高,风格转换效果自然
这个插件就像是把世界上所有艺术大师的绘画技巧都学会了,然后可以按照你的要求来创作或者改造图片。
2. 如何安装
2.1 基础安装步骤
-
进入 ComfyUI 插件目录
cd ComfyUI/custom_nodes -
下载插件
git clone https://github.com/zichongc/ComfyUI-Attention-Distillation.git -
安装依赖包
cd ComfyUI-Attention-Distillation pip install -r requirements.txt -
重启 ComfyUI
2.2 模型文件下载
这一步很重要!你需要下载AI模型文件到 ComfyUI/models/diffusers 目录下。
支持的模型:
- Stable Diffusion v1.5:stable-diffusion-v1-5/stable-diffusion-v1-5
- SDXL:stabilityai/stable-diffusion-xl-base-1.0
- FLUX.1-dev:black-forest-labs/FLUX.1-dev
注意: 插件会自动下载缺失的模型文件,但建议提前手动下载以节省时间。
3. 节点详细解析
3.1 LoadDistiller 节点 - 模型加载器
这个节点就像一个智能的工具箱管理员,负责准备和加载不同的AI绘画模型。你可以选择用哪个"画家"来帮你工作。
3.1.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| model | model | 下拉选择 | stable-diffusion-v1-5 | 选择用哪个AI画家来工作,就像选择请哪位大师来画画 | 选择预训练的扩散模型类型 | 新手推荐用stable-diffusion-v1-5,速度快效果好 |
| precision | precision | 下拉选择 | bf16 | 选择计算精度,就像选择画笔的精细程度 | 控制模型计算的数值精度,影响速度和显存占用 | bf16节省显存,fp32质量更高但占用更多显存 |
3.2 LoadPILImage 节点 - 图片加载器
这个节点就像一个专门的图片管家,负责把你电脑里的图片文件加载到ComfyUI里使用。
3.2.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| image | image | 文件选择 | 任意图片文件 | 选择要处理的图片,就像从相册里挑照片 | 从输入目录选择图像文件进行加载 | 选择你想要进行风格转换的照片 |
3.3 ResizeImage 节点 - 图片尺寸调整器
这个节点就像一个智能的照片裁剪工具,可以把图片调整到合适的尺寸,确保后续处理效果最佳。
3.3.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| image | image | IMAGE输入 | 来自其他节点 | 接收要调整尺寸的图片,就像把照片放到裁剪台上 | 接收图像数据进行尺寸调整 | 连接LoadPILImage节点的输出 |
| resolution | resolution | INT (256-4096) | 512 | 设置图片的目标尺寸,就像选择照片打印的大小 | 设置图像的分辨率大小 | 512适合快速处理,1024适合高质量输出 |
3.4 PureText 节点 - 文字提示输入器
这个节点就像一个专门的文字输入框,你可以在这里写下你想要生成图片的描述。
3.4.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| text | text | STRING (多行文本) | 详细的描述文字 | 输入你想要生成图片的描述,就像跟画家说你想要什么样的画 | 文本提示词,用于指导图像生成 | "一只可爱的小猫坐在花园里,阳光明媚" |
3.5 ADOptimizer 节点 - 风格转换优化器
这是插件的核心节点之一,专门用于风格转换。它就像一个超级智能的艺术家,能把一张普通照片按照参考风格图片进行重新绘制。
3.5.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| distiller | distiller | DISTILLER输入 | 来自LoadDistiller | 接收加载好的AI模型,就像选择用哪个画家来工作 | 接收预加载的扩散模型实例 | 连接LoadDistiller节点的输出 |
| content | content | IMAGE输入 | 内容图片 | 要进行风格转换的原始图片,就像要重新画的素材照片 | 内容图像,提供结构和形状信息 | 上传一张人物照片或风景照片 |
| style | style | IMAGE输入 | 风格参考图片 | 风格参考图片,AI会学习这张图的艺术风格 | 风格参考图像,提供艺术风格特征 | 上传一张梵高的星空或其他艺术作品 |
| steps | steps | INT (1-500) | 200 | 处理步数,步数越多效果越好但越慢,就像画画时的精细程度 | 优化迭代步数,影响风格转换质量 | 200步适合平衡质量和速度 |
| content_weight | content_weight | FLOAT (0-10) | 0.25 | 内容保持程度,数值越高越像原图,就像调节临摹的相似度 | 内容损失权重,控制原始结构保持程度 | 0.25保持适度变化,0.5更保守 |
| lr | lr | FLOAT (0.001-0.5) | 0.05 | 学习速度,就像画家学习新风格的快慢 | 优化器学习率,控制参数更新幅度 | 0.05适合大多数情况 |
| height | height | INT (256-4096) | 512 | 输出图片的高度,就像选择画布的高度 | 生成图像的像素高度 | 512适合快速预览,1024适合高质量 |
| width | width | INT (256-4096) | 512 | 输出图片的宽度,就像选择画布的宽度 | 生成图像的像素宽度 | 512适合快速预览,1024适合高质量 |
| seed | seed | INT | 2025 | 随机种子,相同种子会得到相同结果,就像抽奖时的幸运数字 | 随机数种子,控制生成的随机性 | 固定数字可重复生成相同效果 |
3.6 ADSampler 节点 - 风格化文字生成图片器
这是插件的另一个核心节点,专门用于根据文字描述生成具有特定风格的图片。它就像一个能理解文字并按照特定艺术风格作画的智能画家。
3.6.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| distiller | distiller | DISTILLER输入 | 来自LoadDistiller | 接收加载好的AI模型,就像选择用哪个画家来工作 | 接收预加载的扩散模型实例 | 连接LoadDistiller节点的输出 |
| style | style | IMAGE输入 | 风格参考图片 | 风格参考图片,AI会按照这个风格来画你描述的内容 | 风格参考图像,提供艺术风格特征 | 上传一张印象派画作或其他艺术风格图片 |
| positive | positive | CONDITIONING输入 | 正面描述 | 你想要生成的内容描述,就像跟画家说你想要什么 | 正向文本条件,指导生成内容 | 连接PureText节点,描述想要的画面 |
| negative | negative | CONDITIONING输入 | 负面描述 | 你不想要的内容描述,就像告诉画家不要画什么 | 负向文本条件,避免不想要的内容 | "低质量,模糊,变形" |
| steps | steps | INT (1-200) | 50 | 生成步数,步数越多质量越好但越慢,就像画画的精细程度 | 扩散采样步数,影响生成质量 | 50步适合平衡质量和速度 |
| lr | lr | FLOAT (0.001-1.0) | 0.015 | 学习速度,控制风格学习的快慢,就像画家适应新风格的速度 | 优化器学习率,控制风格适应程度 | 0.015适合大多数风格 |
| iters | iters | INT (0-5) | 2 | 迭代次数,重复优化的次数,就像画家反复修改画作的次数 | 优化迭代轮数,提高风格一致性 | 2次适合平衡效果和速度 |
| cfg | cfg | FLOAT (1.0-20.0) | 7.5 | 文字引导强度,数值越高越严格按照文字描述,就像画家听话的程度 | 分类器自由引导强度,控制文本遵循程度 | 7.5适合大多数情况,太高可能过度拟合 |
| num_images_per_prompt | num_images_per_prompt | INT (1-5) | 1 | 一次生成几张图片,就像一次画几幅画 | 每个提示生成的图像数量 | 1张适合快速预览,多张可以挑选最好的 |
| seed | seed | INT | 2025 | 随机种子,相同种子会得到相同结果,就像抽奖时的幸运数字 | 随机数种子,控制生成的随机性 | 固定数字可重复生成相同效果 |
| height | height | INT (256-4096) | 512 | 输出图片的高度,就像选择画布的高度 | 生成图像的像素高度 | 512适合SD1.5,1024适合SDXL |
| width | width | INT (256-4096) | 512 | 输出图片的宽度,就像选择画布的宽度 | 生成图像的像素宽度 | 512适合SD1.5,1024适合SDXL |
4. 使用技巧和建议
4.1 风格转换技巧
- 选择合适的风格图片:风格图片的艺术特征要明显,比如梵高的星空、毕加索的立体主义作品
- 调节content_weight:如果想保持原图更多细节,增加这个值;如果想要更强烈的风格效果,减少这个值
- 步数设置:初次尝试用200步,满意后可以增加到300-400步获得更好效果
4.2 风格化生成技巧
- 文字描述要具体:不要只说"一只猫",要说"一只橙色的长毛猫坐在红色沙发上"
- 风格图片选择:选择风格特征明显的艺术作品,避免普通照片
- 参数调优:cfg值控制文字遵循程度,lr值控制风格学习强度
4.3 模型选择建议
- SD 1.5:速度快,适合快速实验和预览
- SDXL:质量高,适合最终作品制作
- FLUX:最新技术,效果最好但需要更多显存
4.4 性能优化
- 显存不足时:使用bf16精度,降低分辨率到512x512
- 追求质量时:使用fp32精度,提高分辨率到1024x1024
- 批量处理时:固定seed值确保结果一致性
5. 常见问题解答
5.1 安装相关问题
Q: 提示找不到模型文件怎么办?
A: 确保模型下载到了正确位置:ComfyUI/models/diffusers/模型名称,插件会自动下载缺失文件。
Q: 依赖包安装失败?
A: 确保PyTorch版本>=2.1.0,使用国内镜像:pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
Q: 显存不够用?
A: 使用bf16精度,降低分辨率,关闭其他占用显存的程序。
5.2 使用相关问题
Q: 风格转换效果不明显?
A: 降低content_weight值,增加steps数量,选择风格特征更明显的参考图片。
Q: 生成的图片质量不好?
A: 增加steps数量,使用更高分辨率,检查文字描述是否足够详细。
Q: 处理速度很慢?
A: 使用SD1.5模型,降低分辨率,减少steps数量,使用bf16精度。
Q: 结果不稳定?
A: 固定seed值,确保输入图片和参数一致。
5.3 高级使用问题
Q: 如何获得更好的风格转换效果?
A: 尝试不同的content_weight值(0.1-0.5),增加优化步数到300-500,使用高质量的风格参考图片。
Q: 如何控制生成图片的风格强度?
A: 在ADSampler中调节lr值,较小的lr值(0.01)产生较轻的风格效果,较大的lr值(0.05)产生较强的风格效果。
Q: 不同模型有什么区别?
A: SD1.5速度快适合实验,SDXL质量高适合正式作品,FLUX效果最好但需要更多资源。
6. 实际应用场景
6.1 艺术创作
- 照片艺术化:把普通照片转换成各种艺术风格,如油画、水彩、素描等
- 风格学习:学习和模仿著名艺术家的绘画风格
- 创意设计:为设计项目创造独特的视觉风格
6.2 内容创作
- 社交媒体:制作有艺术感的头像和封面图片
- 博客配图:为文章生成符合主题的艺术化插图
- 视频素材:为视频制作艺术风格的背景和素材
6.3 商业应用
- 品牌设计:为品牌创造独特的视觉风格
- 广告创意:制作具有艺术感的广告素材
- 产品展示:将产品照片艺术化处理
7. 进阶技巧
7.1 风格混合
虽然插件主要支持单一风格转换,但可以通过多次处理来实现风格混合效果:先用一种风格处理,再用另一种风格进行二次处理。
7.2 批量处理
通过固定seed值和参数设置,可以对一系列图片进行统一风格的批量处理,确保风格一致性。
7.3 质量优化
- 预处理:使用ResizeImage节点确保输入图片尺寸合适
- 后处理:可以结合其他ComfyUI节点进行进一步的图像增强
- 参数调优:根据不同的风格类型调整相应的参数组合
7.4 创意应用
- 时间序列风格转换:对视频帧进行逐帧风格转换
- 局部风格转换:结合遮罩技术实现局部区域的风格转换
- 风格插值:通过调节参数实现不同风格之间的平滑过渡
8. 总结
ComfyUI-Attention-Distillation 插件是一个功能强大的艺术风格转换工具,它让普通用户也能轻松创造出专业水准的艺术作品。无论你是艺术爱好者、设计师还是内容创作者,都能通过这个插件实现各种创意想法。
记住几个关键点:
- 选择合适的模型:根据需求平衡质量和速度
- 风格图片很重要:选择特征明显的艺术作品作为参考
- 参数调节要耐心:不同的参数组合会产生不同的效果
- 多尝试多实验:艺术创作需要不断尝试和调整
希望这份教程能帮助你更好地使用这个神奇的艺术创作插件,创造出属于自己的独特艺术作品!🎨