Buckets:

hf-doc-build/doc / diffusers /v0.43.0 /pt /api /attnprocessor.md
mishig's picture
|
download
raw
33.6 kB
# Processador de Atenção
Um processador de atenção é uma classe para aplicar diferentes tipos de mecanismos de atenção.
## AttnProcessor[[diffusers.models.attention_processor.AttnProcessor]]
#### diffusers.models.attention_processor.AttnProcessor[[diffusers.models.attention_processor.AttnProcessor]]
```python
diffusers.models.attention_processor.AttnProcessor()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1103)
Processador padrão para realizar cálculos relacionados à atenção.
#### diffusers.models.attention_processor.AttnProcessor2_0[[diffusers.models.attention_processor.AttnProcessor2_0]]
```python
diffusers.models.attention_processor.AttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2684)
Processador para implementar atenção de produto escalar (ativado por padrão se você estiver usando PyTorch 2.0).
#### diffusers.models.attention_processor.AttnAddedKVProcessor[[diffusers.models.attention_processor.AttnAddedKVProcessor]]
```python
diffusers.models.attention_processor.AttnAddedKVProcessor()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1279)
Processador para realizar cálculos relacionados à atenção com matrizes de chave e valor adicionais e aprendíveis para o codificador de texto.
#### diffusers.models.attention_processor.AttnAddedKVProcessor2_0[[diffusers.models.attention_processor.AttnAddedKVProcessor2_0]]
```python
diffusers.models.attention_processor.AttnAddedKVProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1346)
Processador para executar atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0), com matrizes adicionais de chave e valor aprendíveis para o codificador de texto.
#### diffusers.models.attention_processor.AttnProcessorNPU[[diffusers.models.attention_processor.AttnProcessorNPU]]
```python
diffusers.models.attention_processor.AttnProcessorNPU()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2570)
Processador para implementar flash attention usando torch_npu. O torch_npu suporta apenas os tipos de dados fp16 e bf16. Se fp32 for usado, F.scaled_dot_product_attention será usado para o cálculo, mas o efeito de aceleração na NPU não é significativo.
#### diffusers.models.attention_processor.FusedAttnProcessor2_0[[diffusers.models.attention_processor.FusedAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FusedAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3656)
Processador para implementar atenção de produto escalar escalonado (habilitado por padrão se você estiver usando PyTorch 2.0). Ele usa camadas de projeção fundidas. Para os módulos de autoatenção, todas as matrizes de projeção (ou seja, query, key, value) são fundidas. Para os módulos de atenção cruzada, as matrizes de projeção de key e value são fundidas.
> [!WARNING] > Esta API é atualmente 🧪 experimental e pode mudar no futuro.
## Allegro[[diffusers.models.attention_processor.AllegroAttnProcessor2_0]]
#### diffusers.models.attention_processor.AllegroAttnProcessor2_0[[diffusers.models.attention_processor.AllegroAttnProcessor2_0]]
```python
diffusers.models.attention_processor.AllegroAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1993)
Processador para implementar atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0). Isso é usado no modelo Allegro. Ele aplica uma camada de normalização e incorporação rotacional nos vetores de consulta e chave.
## AuraFlow[[diffusers.models.attention_processor.AuraFlowAttnProcessor2_0]]
#### diffusers.models.attention_processor.AuraFlowAttnProcessor2_0[[diffusers.models.attention_processor.AuraFlowAttnProcessor2_0]]
```python
diffusers.models.attention_processor.AuraFlowAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2087)
Processador de atenção usado tipicamente no processamento do Aura Flow.
#### diffusers.models.attention_processor.FusedAuraFlowAttnProcessor2_0[[diffusers.models.attention_processor.FusedAuraFlowAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FusedAuraFlowAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2174)
Processador de atenção usado tipicamente no processamento do Aura Flow com projeções fundidas.
## CogVideoX[[diffusers.models.attention_processor.CogVideoXAttnProcessor2_0]]
#### diffusers.models.attention_processor.CogVideoXAttnProcessor2_0[[diffusers.models.attention_processor.CogVideoXAttnProcessor2_0]]
```python
diffusers.models.attention_processor.CogVideoXAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2265)
Processador para implementar a atenção de produto escalar (scaled dot-product) para o modelo CogVideoX. Ele aplica um incorporação rotacional (rotary embedding) nos vetores de consulta e chave, mas não inclui normalização espacial.
#### diffusers.models.attention_processor.FusedCogVideoXAttnProcessor2_0[[diffusers.models.attention_processor.FusedCogVideoXAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FusedCogVideoXAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2334)
Processador para implementar a atenção de produto escalar (scaled dot-product) para o modelo CogVideoX. Ele aplica um incorporação rotacional (rotary embedding) nos vetores de consulta e chave, mas não inclui normalização espacial.
## DreamLite[[diffusers.models.unets.unet_dreamlite.DreamLiteAttnProcessor2_0]]
#### diffusers.models.unets.unet_dreamlite.DreamLiteAttnProcessor2_0[[diffusers.models.unets.unet_dreamlite.DreamLiteAttnProcessor2_0]]
```python
diffusers.models.unets.unet_dreamlite.DreamLiteAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/unets/unet_dreamlite.py#L285)
Processador para implementar atenção de produto escalar com suporte a Grouped Query Attention (GQA / MQA).
Idêntico ao `AttnProcessor2_0`, exceto que o ramo de reshape de chave/valor trata corretamente `attn.kv_heads != attn.heads` ao fazer o reshape de K/V para `kv_heads` e, em seguida, aplicando `repeat_interleave` até `attn.heads`. Isso é necessário pelo DreamLite UNet, que combina GQA com `qk_norm` — uma combinação que o `AttnProcessor2_0` padrão não trata. O SDPA é delegado ao `dispatch_attention_fn`, permitindo o uso de qualquer um dos backends de atenção do diffusers (SDPA nativo do PyTorch, FlashAttention, etc.).
## Custom Diffusion[[diffusers.models.attention_processor.CustomDiffusionAttnProcessor]]
#### diffusers.models.attention_processor.CustomDiffusionAttnProcessor[[diffusers.models.attention_processor.CustomDiffusionAttnProcessor]]
```python
diffusers.models.attention_processor.CustomDiffusionAttnProcessor(train_kv: bool = True, train_q_out: bool = True, hidden_size: int | None = None, cross_attention_dim: int | None = None, out_bias: bool = True, dropout: float = 0.0)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1175)
**Parâmetros:**
train_kv (`bool`, padrão `True`) : Se treinar novamente as matrizes de chave e valor correspondentes aos recursos de texto.
train_q_out (`bool`, padrão `True`) : Se treinar novas matrizes de consulta correspondentes aos recursos latentes da imagem.
hidden_size (`int`, *opcional*, padrão `None`) : O tamanho oculto da camada de atenção.
cross_attention_dim (`int`, *opcional*, padrão `None`) : O número de canais em `encoder_hidden_states`.
out_bias (`bool`, padrão `True`) : Se deve incluir o parâmetro de viés em `train_q_out`.
dropout (`float`, *opcional*, padrão 0.0) : A probabilidade de dropout a ser utilizada.
Processador para implementar a atenção no método Custom Diffusion.
#### diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0[[diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0]]
```python
diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0(train_kv: bool = True, train_q_out: bool = True, hidden_size: int | None = None, cross_attention_dim: int | None = None, out_bias: bool = True, dropout: float = 0.0)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3874)
**Parâmetros:**
train_kv (`bool`, padrão `True`) : Se treinar novamente as matrizes de chave e valor correspondentes aos recursos de texto.
train_q_out (`bool`, padrão `True`) : Se treinar novas matrizes de consulta correspondentes aos recursos latentes da imagem.
hidden_size (`int`, *opcional*, padrão `None`) : O tamanho oculto da camada de atenção.
cross_attention_dim (`int`, *opcional*, padrão `None`) : O número de canais em `encoder_hidden_states`.
out_bias (`bool`, padrão `True`) : Se deve incluir o parâmetro de viés em `train_q_out`.
dropout (`float`, *opcional*, padrão 0.0) : A probabilidade de dropout a ser utilizada.
Processador para implementar a atenção no método Custom Diffusion usando a atenção de produto escalar dot-product com eficiência de memória do PyTorch 2.0.
#### diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor[[diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor]]
```python
diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor(train_kv: bool = True, train_q_out: bool = False, hidden_size: int | None = None, cross_attention_dim: int | None = None, out_bias: bool = True, dropout: float = 0.0, attention_op: Callable | None = None)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3758)
**Parâmetros:**
train_kv (`bool`, padrão `True`) : Se treinar novamente as matrizes de chave e valor correspondentes aos recursos de texto.
train_q_out (`bool`, padrão `True`) : Se treinar novas matrizes de consulta correspondentes aos recursos latentes da imagem.
hidden_size (`int`, *opcional*, padrão `None`) : O tamanho oculto da camada de atenção.
cross_attention_dim (`int`, *opcional*, padrão `None`) : O número de canais em `encoder_hidden_states`.
out_bias (`bool`, padrão `True`) : Se deve incluir o parâmetro de viés em `train_q_out`.
dropout (`float`, *opcional*, padrão 0.0) : A probabilidade de dropout a ser utilizada.
attention_op (`Callable`, *opcional*, padrão `None`) : O [operador](https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase) base a ser usado como operador de atenção. É recomendável definir como `None` e permitir que o xFormers escolha o melhor operador.
Processador para implementar atenção eficiente em memória usando xFormers para o método Custom Diffusion.
## Flux[[diffusers.models.attention_processor.FluxAttnProcessor2_0]]
#### diffusers.models.attention_processor.FluxAttnProcessor2_0[[diffusers.models.attention_processor.FluxAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FluxAttnProcessor2_0(*args, **kwargs)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5493)
#### diffusers.models.attention_processor.FusedFluxAttnProcessor2_0[[diffusers.models.attention_processor.FusedFluxAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FusedFluxAttnProcessor2_0(*args, **kwargs)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5517)
#### diffusers.models.attention_processor.FluxSingleAttnProcessor2_0[[diffusers.models.attention_processor.FluxSingleAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FluxSingleAttnProcessor2_0(*args, **kwargs)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5503)
Processador para implementar atenção de produto escalar (ativado por padrão se você estiver usando PyTorch 2.0).
## Hunyuan[[diffusers.models.attention_processor.HunyuanAttnProcessor2_0]]
#### diffusers.models.attention_processor.HunyuanAttnProcessor2_0[[diffusers.models.attention_processor.HunyuanAttnProcessor2_0]]
```python
diffusers.models.attention_processor.HunyuanAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3112)
Processador para implementar atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0). Isso é usado no modelo HunyuanDiT. Ele aplica uma camada de normalização s e incorporação rotacional nos vetores de consulta e chave.
#### diffusers.models.attention_processor.FusedHunyuanAttnProcessor2_0[[diffusers.models.attention_processor.FusedHunyuanAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FusedHunyuanAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3210)
Processador para implementar atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0) com camadas de projeção fundidas. Isso é usado no modelo HunyuanDiT. Ele aplica uma camada de normalização s e incorporação rotacional nos vetores de consulta e chave.
#### diffusers.models.attention_processor.PAGHunyuanAttnProcessor2_0[[diffusers.models.attention_processor.PAGHunyuanAttnProcessor2_0]]
```python
diffusers.models.attention_processor.PAGHunyuanAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3313)
Processador para implementar atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0). Isso é usado no modelo HunyuanDiT. Ele aplica uma camada de normalização e incorporação rotacional nos vetores de consulta e chave. Esta variante do processador emprega [Pertubed Attention Guidance](https://huggingface.co/papers/2403.17377).
#### diffusers.models.attention_processor.PAGCFGHunyuanAttnProcessor2_0[[diffusers.models.attention_processor.PAGCFGHunyuanAttnProcessor2_0]]
```python
diffusers.models.attention_processor.PAGCFGHunyuanAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3436)
Processador para implementar atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0). Isso é usado no modelo HunyuanDiT. Ele aplica uma camada de normalização e incorporação rotacional nos vetores de consulta e chave. Esta variante do processador emprega [Pertubed Attention Guidance](https://huggingface.co/papers/2403.17377).
## IdentitySelfAttnProcessor2_0[[diffusers.models.attention_processor.PAGIdentitySelfAttnProcessor2_0]]
#### diffusers.models.attention_processor.PAGIdentitySelfAttnProcessor2_0[[diffusers.models.attention_processor.PAGIdentitySelfAttnProcessor2_0]]
```python
diffusers.models.attention_processor.PAGIdentitySelfAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5031)
Processador para implementar PAG usando atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0). Referência de PAG: https://huggingface.co/papers/2403.17377
#### diffusers.models.attention_processor.PAGCFGIdentitySelfAttnProcessor2_0[[diffusers.models.attention_processor.PAGCFGIdentitySelfAttnProcessor2_0]]
```python
diffusers.models.attention_processor.PAGCFGIdentitySelfAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5130)
Processador para implementar PAG usando atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0). Referência de PAG: https://huggingface.co/papers/2403.17377
## IP-Adapter[[diffusers.models.attention_processor.IPAdapterAttnProcessor]]
#### diffusers.models.attention_processor.IPAdapterAttnProcessor[[diffusers.models.attention_processor.IPAdapterAttnProcessor]]
```python
diffusers.models.attention_processor.IPAdapterAttnProcessor(hidden_size, cross_attention_dim = None, num_tokens = (4,), scale = 1.0)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L4196)
**Parâmetros:**
hidden_size (`int`) : O tamanho oculto da camada de atenção.
cross_attention_dim (`int`) : O número de canais em `encoder_hidden_states`.
num_tokens (`int`, `tuple[int]` ou `list[int]`, padrão `(4,)`) : O comprimento do contexto dos recursos da imagem.
scale (`float` ou lista`float`, padrão 1.0) : a escala de peso do prompt de imagem.
Processador de atenção para múltiplos IP-Adapters.
#### diffusers.models.attention_processor.IPAdapterAttnProcessor2_0[[diffusers.models.attention_processor.IPAdapterAttnProcessor2_0]]
```python
diffusers.models.attention_processor.IPAdapterAttnProcessor2_0(hidden_size, cross_attention_dim = None, num_tokens = (4,), scale = 1.0)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L4396)
**Parâmetros:**
hidden_size (`int`) : O tamanho oculto da camada de atenção.
cross_attention_dim (`int`) : O número de canais em `encoder_hidden_states`.
num_tokens (`int`, `tuple[int]` ou `list[int]`, padrão `(4,)`) : O comprimento do contexto dos recursos da imagem.
scale (`float` ou `list[float]`, padrão 1.0) : a escala de peso do prompt de imagem.
Processador de atenção para IP-Adapter para PyTorch 2.0.
#### diffusers.models.attention_processor.SD3IPAdapterJointAttnProcessor2_0[[diffusers.models.attention_processor.SD3IPAdapterJointAttnProcessor2_0]]
```python
diffusers.models.attention_processor.SD3IPAdapterJointAttnProcessor2_0(hidden_size: int, ip_hidden_states_dim: int, head_dim: int, timesteps_emb_dim: int = 1280, scale: float = 0.5)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L4860)
**Parâmetros:**
hidden_size (`int`) : O número de canais ocultos.
ip_hidden_states_dim (`int`) : A dimensão do recurso da imagem.
head_dim (`int`) : O número de canais de cabeçalho.
timesteps_emb_dim (`int`, padrão 1280) : O número de canais de entrada para a incorporação de passo de tempo.
scale (`float`, padrão 0.5) : Escala do IP-Adapter.
Processador de atenção para IP-Adapter, usado tipicamente no processamento das projeções de autoatenção semelhantes às do SD3, com informações adicionais baseadas em imagem e incorporações de passo de tempo.
## JointAttnProcessor2_0[[diffusers.models.attention_processor.JointAttnProcessor2_0]]
#### diffusers.models.attention_processor.JointAttnProcessor2_0[[diffusers.models.attention_processor.JointAttnProcessor2_0]]
```python
diffusers.models.attention_processor.JointAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1422)
Processador de atenção usado tipicamente no processamento das projeções de autoatenção semelhantes às do SD3.
#### diffusers.models.attention_processor.PAGJointAttnProcessor2_0[[diffusers.models.attention_processor.PAGJointAttnProcessor2_0]]
```python
diffusers.models.attention_processor.PAGJointAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1508)
Processador de atenção usado tipicamente no processamento das projeções de autoatenção semelhantes às do SD3.
#### diffusers.models.attention_processor.PAGCFGJointAttnProcessor2_0[[diffusers.models.attention_processor.PAGCFGJointAttnProcessor2_0]]
```python
diffusers.models.attention_processor.PAGCFGJointAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1664)
Processador de atenção usado tipicamente no processamento das projeções de autoatenção semelhantes às do SD3.
#### diffusers.models.attention_processor.FusedJointAttnProcessor2_0[[diffusers.models.attention_processor.FusedJointAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FusedJointAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1829)
Processador de atenção usado tipicamente no processamento das projeções de autoatenção semelhantes às do SD3.
## LoRA[[diffusers.models.attention_processor.LoRAAttnProcessor]]
#### diffusers.models.attention_processor.LoRAAttnProcessor[[diffusers.models.attention_processor.LoRAAttnProcessor]]
```python
diffusers.models.attention_processor.LoRAAttnProcessor()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5293)
Processador para implementar atenção com LoRA.
#### diffusers.models.attention_processor.LoRAAttnProcessor2_0[[diffusers.models.attention_processor.LoRAAttnProcessor2_0]]
```python
diffusers.models.attention_processor.LoRAAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5302)
Processador para implementar atenção com LoRA (habilitado por padrão se você estiver usando PyTorch 2.0).
#### diffusers.models.attention_processor.LoRAAttnAddedKVProcessor[[diffusers.models.attention_processor.LoRAAttnAddedKVProcessor]]
```python
diffusers.models.attention_processor.LoRAAttnAddedKVProcessor()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5320)
Processador para implementar atenção com LoRA com matrizes de chave e valor adicionais e aprendíveis para o codificador de texto.
#### diffusers.models.attention_processor.LoRAXFormersAttnProcessor[[diffusers.models.attention_processor.LoRAXFormersAttnProcessor]]
```python
diffusers.models.attention_processor.LoRAXFormersAttnProcessor()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5311)
Processador para implementar atenção com LoRA usando xFormers.
## Lumina-T2X[[diffusers.models.attention_processor.LuminaAttnProcessor2_0]]
#### diffusers.models.attention_processor.LuminaAttnProcessor2_0[[diffusers.models.attention_processor.LuminaAttnProcessor2_0]]
```python
diffusers.models.attention_processor.LuminaAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3560)
Processador para implementar atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0). Isso é usado no modelo LuminaNextDiT. Ele aplica uma camada de normalização s e incorporação rotacional nos vetores de consulta e chave.
## Mochi[[diffusers.models.attention_processor.MochiAttnProcessor2_0]]
#### diffusers.models.attention_processor.MochiAttnProcessor2_0[[diffusers.models.attention_processor.MochiAttnProcessor2_0]]
```python
diffusers.models.attention_processor.MochiAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L998)
Processador de atenção usado no Mochi.
#### diffusers.models.attention_processor.MochiVaeAttnProcessor2_0[[diffusers.models.attention_processor.MochiVaeAttnProcessor2_0]]
```python
diffusers.models.attention_processor.MochiVaeAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2894)
Processador de atenção usado no Mochi VAE.
## Sana[[diffusers.models.attention_processor.SanaLinearAttnProcessor2_0]]
#### diffusers.models.attention_processor.SanaLinearAttnProcessor2_0[[diffusers.models.attention_processor.SanaLinearAttnProcessor2_0]]
```python
diffusers.models.attention_processor.SanaLinearAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5329)
Processador para implementar atenção linear de produto escalar escalonado.
#### diffusers.models.attention_processor.SanaMultiscaleAttnProcessor2_0[[diffusers.models.attention_processor.SanaMultiscaleAttnProcessor2_0]]
```python
diffusers.models.attention_processor.SanaMultiscaleAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5233)
Processador para implementar atenção quadrática multiescala.
#### diffusers.models.attention_processor.PAGCFGSanaLinearAttnProcessor2_0[[diffusers.models.attention_processor.PAGCFGSanaLinearAttnProcessor2_0]]
```python
diffusers.models.attention_processor.PAGCFGSanaLinearAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5381)
Processador para implementar atenção linear de produto escalar escalonado.
#### diffusers.models.attention_processor.PAGIdentitySanaLinearAttnProcessor2_0[[diffusers.models.attention_processor.PAGIdentitySanaLinearAttnProcessor2_0]]
```python
diffusers.models.attention_processor.PAGIdentitySanaLinearAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5436)
Processador para implementar atenção linear de produto escalar escalonado.
## Stable Audio[[diffusers.models.attention_processor.StableAudioAttnProcessor2_0]]
#### diffusers.models.attention_processor.StableAudioAttnProcessor2_0[[diffusers.models.attention_processor.StableAudioAttnProcessor2_0]]
```python
diffusers.models.attention_processor.StableAudioAttnProcessor2_0()
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2979)
Processador para implementar atenção de produto escalar (habilitado por padrão se você estiver usando PyTorch 2.0). Isso é usado no modelo Stable Audio. Ele aplica incorporação rotacional nos vetores de consulta e chave, e permite MHA, GQA ou MQA.
## SlicedAttnProcessor[[diffusers.models.attention_processor.SlicedAttnProcessor]]
#### diffusers.models.attention_processor.SlicedAttnProcessor[[diffusers.models.attention_processor.SlicedAttnProcessor]]
```python
diffusers.models.attention_processor.SlicedAttnProcessor(slice_size: int)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L3988)
**Parâmetros:**
slice_size (`int`, *opcional*) : O número de etapas para calcular a atenção. Usa tantas fatias quanto `attention_head_dim // slice_size`, e `attention_head_dim` deve ser um múltiplo do `slice_size`.
Processador para implementar atenção fatiada.
#### diffusers.models.attention_processor.SlicedAttnAddedKVProcessor[[diffusers.models.attention_processor.SlicedAttnAddedKVProcessor]]
```python
diffusers.models.attention_processor.SlicedAttnAddedKVProcessor(slice_size)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L4075)
**Parâmetros:**
slice_size (`int`, *opcional*) : O número de etapas para calcular a atenção. Usa tantas fatias quanto `attention_head_dim // slice_size`, e `attention_head_dim` deve ser um múltiplo do `slice_size`.
Processador para implementar atenção fatiada com matrizes de chave e valor adicionais e aprendíveis para o codificador de texto.
## XFormersAttnProcessor[[diffusers.models.attention_processor.XFormersAttnProcessor]]
#### diffusers.models.attention_processor.XFormersAttnProcessor[[diffusers.models.attention_processor.XFormersAttnProcessor]]
```python
diffusers.models.attention_processor.XFormersAttnProcessor(attention_op: Callable | None = None)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2476)
**Parâmetros:**
attention_op (`Callable`, *opcional*, padrão `None`) : O [operador](https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase) base a ser usado como operador de atenção. É recomendável definir como `None` e permitir que o xFormers escolha o melhor operador.
Processador para implementar atenção eficiente em memória usando xFormers.
#### diffusers.models.attention_processor.XFormersAttnAddedKVProcessor[[diffusers.models.attention_processor.XFormersAttnAddedKVProcessor]]
```python
diffusers.models.attention_processor.XFormersAttnAddedKVProcessor(attention_op: Callable | None = None)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2405)
**Parâmetros:**
attention_op (`Callable`, *opcional*, padrão `None`) : O [operador](https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase) base a ser usado como operador de atenção. É recomendável definir como `None` e permitir que o xFormers escolha o melhor operador.
Processador para implementar atenção eficiente em memória usando xFormers.
## XLAFlashAttnProcessor2_0[[diffusers.models.attention_processor.XLAFlashAttnProcessor2_0]]
#### diffusers.models.attention_processor.XLAFlashAttnProcessor2_0[[diffusers.models.attention_processor.XLAFlashAttnProcessor2_0]]
```python
diffusers.models.attention_processor.XLAFlashAttnProcessor2_0(partition_spec: tuple[str | None, ...] | None = None)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L2778)
Processador para implementar atenção de produto escalar com o kernel pallas flash attention ao usar `torch_xla`.
## XFormersJointAttnProcessor[[diffusers.models.attention_processor.XFormersJointAttnProcessor]]
#### diffusers.models.attention_processor.XFormersJointAttnProcessor[[diffusers.models.attention_processor.XFormersJointAttnProcessor]]
```python
diffusers.models.attention_processor.XFormersJointAttnProcessor(attention_op: Callable | None = None)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L1908)
**Parâmetros:**
attention_op (`Callable`, *opcional*, padrão `None`) : O [operador](https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase) base a ser usado como operador de atenção. É recomendável definir como `None` e permitir que o xFormers escolha o melhor operador.
Processador para implementar atenção eficiente em memória usando xFormers.
## IPAdapterXFormersAttnProcessor[[diffusers.models.attention_processor.IPAdapterXFormersAttnProcessor]]
#### diffusers.models.attention_processor.IPAdapterXFormersAttnProcessor[[diffusers.models.attention_processor.IPAdapterXFormersAttnProcessor]]
```python
diffusers.models.attention_processor.IPAdapterXFormersAttnProcessor(hidden_size, cross_attention_dim = None, num_tokens = (4,), scale = 1.0, attention_op: Callable | None = None)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L4628)
**Parâmetros:**
hidden_size (`int`) : O tamanho oculto da camada de atenção.
cross_attention_dim (`int`) : O número de canais em `encoder_hidden_states`.
num_tokens (`int`, `tuple[int]` ou `list[int]`, padrão `(4,)`) : O comprimento do contexto dos recursos da imagem.
scale (`float` ou `list[float]`, padrão 1.0) : a escala de peso do prompt de imagem.
attention_op (`Callable`, *opcional*, padrão `None`) : O [operador](https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase) base a ser usado como operador de atenção. É recomendável definir como `None` e permitir que o xFormers escolha o melhor operador.
Processador de atenção para IP-Adapter usando xFormers.
## FluxIPAdapterJointAttnProcessor2_0[[diffusers.models.attention_processor.FluxIPAdapterJointAttnProcessor2_0]]
#### diffusers.models.attention_processor.FluxIPAdapterJointAttnProcessor2_0[[diffusers.models.attention_processor.FluxIPAdapterJointAttnProcessor2_0]]
```python
diffusers.models.attention_processor.FluxIPAdapterJointAttnProcessor2_0(*args, **kwargs)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5527)
## XLAFluxFlashAttnProcessor2_0[[diffusers.models.attention_processor.XLAFluxFlashAttnProcessor2_0]]
#### diffusers.models.attention_processor.XLAFluxFlashAttnProcessor2_0[[diffusers.models.attention_processor.XLAFluxFlashAttnProcessor2_0]]
```python
diffusers.models.attention_processor.XLAFluxFlashAttnProcessor2_0(*args, **kwargs)
```
[Fonte](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/attention_processor.py#L5567)
Processador para implementar atenção de produto escalar com o kernel pallas flash attention ao usar `torch_xla`.

Xet Storage Details

Size:
33.6 kB
·
Xet hash:
ae3ef1a186f49bbead71a2daa0dc7847e1875eca5d3d08ba4521d8fd927ce56c

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.