IP-Adapter:文本兼容图像提示适配器,用于文本到图像扩散模型

IP-Adapter这是一种有效且轻量级的适配器,用于实现预训练文本到图像扩散模型的图像提示功能。只有 22M 参数的 IP 适配器可以实现与微调图像提示模型相当甚至更好的性能。IP-Adapter 不仅可以推广到从同一基本模型微调的其他自定义模型,还可以推广到使用现有可控工具的可控生成。此外,图像提示还可以与文本提示配合使用,以完成多模态图像生成。

项目地址:https://github.com/tencent-ailab/IP-Adapter

释放

  • 2023/11/22\] 由于 [Diffusers 团队,Diffusers](https://github.com/huggingface/diffusers/pull/5713) 中提供了 IP-Adapter。

  • 2023/11/05\] 🔥 使用 IP 适配器和 [Kandinsky 2.2 Prior 添加](https://huggingface.co/kandinsky-community/kandinsky-2-2-prior)文本到图像[的演示](https://github.com/tencent-ailab/IP-Adapter/blob/main/ip_adapter_t2i_demo.ipynb)

  • 2023/9/08\] 🔥 更新新版本的 IP-Adapter SDXL_1.0。更多信息可以[在这里](https://github.com/tencent-ailab/IP-Adapter#sdxl_10)找到。

  • 2023/8/30\] 🔥 根据提示添加带有人脸图像的 IP 适配器。演示[在这里。](https://github.com/tencent-ailab/IP-Adapter/blob/main/ip_adapter-plus-face_demo.ipynb)

  • 2023/8/23\] 🔥 添加具有细粒度功能的 IP-Adapter 代码和型号。演示[在这里。](https://github.com/tencent-ailab/IP-Adapter/blob/main/ip_adapter-plus_demo.ipynb)

  • 2023/8/16\] 🔥 我们发布代码和模型。

    install latest diffusers

    pip install diffusers==0.22.1

    install ip-adapter

    pip install git+https://github.com/tencent-ailab/IP-Adapter.git

    download the models

    cd IP-Adapter
    git lfs install
    git clone https://huggingface.co/h94/IP-Adapter
    mv IP-Adapter/models models
    mv IP-Adapter/sdxl_models sdxl_models

    then you can use the notebook

install ip-adapter

pip install git+https://github.com/tencent-ailab/IP-Adapter.git

download the models

cd IP-Adapter

git lfs install

git clone https://huggingface.co/h94/IP-Adapter

mv IP-Adapter/models models

mv IP-Adapter/sdxl_models sdxl_models

下载模型

您可以从这里下载模型。要运行演示,您还应该下载以下模型:

如何使用

最佳实践

  • 如果仅使用图像提示,则可以设置 and(或一些通用文本提示,例如"最佳质量",也可以使用任何否定文本提示)。如果降低 ,可以生成更多样化的图像,但它们可能与图像提示不一致。scale=1.0``text_prompt=""``scale
  • 对于多模式提示,您可以调整 以获得最佳结果。在大多数情况下,设置可以获得良好的效果。对于 SD 1.5 版本,我们建议使用社区模型来生成良好的图像。scale``scale=0.5

用于非方形图像的 IP 适配器

由于图像在 CLIP 的默认图像处理器中居中裁剪,因此 IP 适配器最适合方形图像。对于非正方形图像,它会错过中心之外的信息。

SDXL_1.0

IP-Adapter_XLReimagine XL的比较如下:

[图片上传失败...(image-8cda2a-1701140382732)]

新版本 (2023.9.8) 中的改进

  • 切换到 CLIP-ViT-H:我们使用 OpenCLIP-ViT-H-14 而不是 OpenCLIP-ViT-bigG-14 训练新的 IP 适配器。虽然ViT-bigG比ViT-H大得多,但我们的实验结果没有发现显著的差异,更小的模型可以减少推理阶段的内存使用。
  • 更快、更好的训练秘诀:在我们之前的版本中,直接以 1024x1024 的分辨率进行训练被证明是非常低效的。但是,在新版本中,我们实施了更有效的两阶段培训策略。首先,我们以 512x512 的分辨率进行预训练。然后,我们采用多尺度策略进行微调。(也许这种训练策略也可以用来加速控制网的训练)。

如何训练

对于训练,您应该安装 accelerate 并将自己的数据集制作成 json 文件。

复制代码
accelerate launch --num_processes 8 --multi_gpu --mixed_precision "fp16" \
  tutorial_train.py \
  --pretrained_model_name_or_path="runwayml/stable-diffusion-v1-5/" \
  --image_encoder_path="{image_encoder_path}" \
  --data_json_file="{data.json}" \
  --data_root_path="{image_path}" \
  --mixed_precision="fp16" \
  --resolution=512 \
  --train_batch_size=8 \
  --dataloader_num_workers=4 \
  --learning_rate=1e-04 \
  --weight_decay=0.01 \
  --output_dir="{output_dir}" \
  --save_steps=10000

第三方使用

相关推荐
深圳南柯电子2 分钟前
深圳南柯电子|EMC电磁兼容测试系统:5G时代应对频段的干扰挑战
网络·人工智能·互联网·实验室·emc
fy zs7 分钟前
传输层协议UDP
网络协议·tcp/ip·udp
w陆压8 分钟前
2.TCP三次握手、四次挥手
网络·网络协议·计网知识点
紫色的路15 分钟前
TCP消息边界处理的精妙算法
c++·网络协议·tcp/ip·算法
知乎的哥廷根数学学派15 分钟前
基于高阶统计量引导的小波自适应块阈值地震信号降噪算法(MATLAB)
网络·人工智能·pytorch·深度学习·算法·机器学习·matlab
DeepFlow 零侵扰全栈可观测16 分钟前
DeepFlow 实践:利用 eBPF 实现覆盖从网关到数据库的全栈分布式追踪
网络·分布式·云原生·云计算
松涛和鸣19 分钟前
51、51单片机
c语言·网络·单片机·嵌入式硬件·tcp/ip·51单片机
CHENKONG_CK29 分钟前
晨控CK-FR09EIP与汇川H5U系列PLC配置EtherNet/IP通讯连接手册
网络·网络协议·自动化·rfid
上海云盾安全满满31 分钟前
面对T级大流量攻击,业务如何确保稳定可用
网络
古城小栈39 分钟前
Rust 异步、并发 一文全解
网络·rust