IP-Adapter
IP-Adapter 是一款轻量级适配器,用于使用图像提示扩散模型。此方法隔离了图像和文本特征的交叉注意层。图像特征由图像编码器生成。
IPAdapterMixin
IP Adapter 相关的 Mixin。
load_ip_adapter
< 源代码 >( pretrained_model_name_or_path_or_dict: Union subfolder: Union weight_name: Union image_encoder_folder: Optional = 'image_encoder' **kwargs )
参数 str
或 List[str]
或 os.PathLike
或 List[os.PathLike]
或 dict
或 List[dict]
) — 可以是任一选项:
google/ddpm-celebahq-256
),该模型托管在 Hub 上。./my_model_directory
)的路径。str
或 List[str]
) — Hub 上更大的模型仓库或本地中模型文件的子文件夹位置。若传递了一个列表,则其长度应与 weight_name
相同。 str
或 List[str]
) — 要加载的权重文件的名称。如果传入列表,则其长度应与 weight_name
相同。 str
,可选,默认为 image_encoder
) — 在 Hub 的较大模型仓库或本地中图像编码器的子文件夹位置。传 None
不加载图像编码器。如果图像编码器位于 subfolder
中的某个文件夹中,则只需要传入包含图像编码器权重的文件夹的名称即可,例如 image_encoder_folder="image_encoder"
。如果图像编码器位于 subfolder
之外的文件夹中,则应传入包含图像编码器权重的文件夹的路径,例如 image_encoder_folder="different_subfolder/image_encoder"
。 Union[str, os.PathLike]
,可选) — 下载的预训练模型配置缓存的目录路径,如果未使用标准缓存。 bool
,可选,默认为False
) — 是否强制(重新)下载模型权重和配置文件,覆盖存在的缓存版本。 Dict[str, str]
,可选) — 用于根据协议或端点使用的代理服务器字典,例如, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}
。代理服务器用于每个请求。 bool
,可选,默认为 False
) — 是否仅加载符合当地模型权重和配置文件。如果设置为 True
,不会从 Hub 下载该模型。 str
或 bool,可选) — 用于远程文件的 HTTP 持有者授权的令牌。如果为 True
,则使用从 diffusers-cli login
(存储在 ~/.huggingface
) 中生成的令牌。 str
,可选,默认为 "main"
) — 要使用的特定模型版本。它可以是分支名称、标签名称、提交 ID 或 Git 允许的任何标识符。 布尔值
,可选,默认为 True
,如果火炬版本 >= 1.9.0 则为 False
) — 仅加载预训练权重而不初始化权重,从而加快模型加载速度。这还尝试在加载模型时不使用超过 1 倍的 CPU 内存(包括峰值内存)。仅支持 PyTorch >= 1.9.0。如果你使用的是旧版 PyTorch,则将此参数设置为 True
将引发错误。
按变压器块设置 IP 适配器比例。输入 scale
可以是单个配置或配置列表,以便对每个 IP 适配器行为进行精细控制。配置可以是浮点数或字典。
示例
# To use original IP-Adapter
scale = 1.0
pipeline.set_ip_adapter_scale(scale)
# To use style block only
scale = {
"up": {"block_0": [0.0, 1.0, 0.0]},
}
pipeline.set_ip_adapter_scale(scale)
# To use style+layout blocks
scale = {
"down": {"block_2": [0.0, 1.0]},
"up": {"block_0": [0.0, 1.0, 0.0]},
}
pipeline.set_ip_adapter_scale(scale)
# To use style and layout from 2 reference images
scales = [{"down": {"block_2": [0.0, 1.0]}}, {"up": {"block_0": [0.0, 1.0, 0.0]}}]
pipeline.set_ip_adapter_scale(scales)
卸载 IP 适配器权重
IPAdapterMaskProcessor
IP 适配器图像掩码的图像处理器。
降采样
< 源 > ( 掩码: 张量 批大小: int 查询次数: int value_embed_dim: int ) → torch.张量
对提供的掩码张量进行下采样,使其匹配缩放点积注意力的预期尺寸。如果掩码的纵横比与目标图像的纵横比不匹配,则会发出警告。