import{s as Jt,n as Qt,o as Yt}from"../chunks/scheduler.182ea377.js";import{S as Zt,i as eo,g as i,s as r,r as d,A as to,h as a,f as o,c as n,j as _,u as c,x as g,k as h,y as m,a as s,v as l,d as f,t as p,w as u}from"../chunks/index.abf12888.js";import{D as A}from"../chunks/Docstring.93f6f462.js";import{H as $}from"../chunks/Heading.16916d63.js";function oo(Ft){let b,De,Ce,Le,K,Te,X,Kt="An attention processor is a class for applying different types of attention mechanisms.",ke,N,ze,P,q,bt,le,Xt="Default processor for performing attention-related computations.",Re,E,Ve,v,I,Pt,fe,Nt="Processor for implementing scaled dot-product attention (enabled by default if you’re using PyTorch 2.0).",Fe,S,Ke,x,W,vt,pe,qt="Processor for implementing the LoRA attention mechanism.",Xe,O,Ne,y,j,xt,ue,Et=`Processor for implementing the LoRA attention mechanism using PyTorch 2.0’s memory-efficient scaled dot-product
attention.`,qe,B,Ee,C,U,yt,_e,It="Processor for implementing attention for the Custom Diffusion method.",Ie,H,Se,w,M,Ct,he,St=`Processor for implementing attention for the Custom Diffusion method using PyTorch 2.0’s memory-efficient scaled
dot-product attention.`,We,G,Oe,D,J,wt,ge,Wt=`Processor for performing attention-related computations with extra learnable key and value matrices for the text
encoder.`,je,Q,Be,L,Y,Dt,$e,Ot=`Processor for performing scaled dot-product attention (enabled by default if you’re using PyTorch 2.0), with extra
learnable key and value matrices for the text encoder.`,Ue,Z,He,T,ee,Lt,Ae,jt=`Processor for implementing the LoRA attention mechanism with extra learnable key and value matrices for the text
encoder.`,Me,te,Ge,k,oe,Tt,be,Bt="Processor for implementing memory efficient attention using xFormers.",Je,se,Qe,z,re,kt,Pe,Ut="Processor for implementing the LoRA attention mechanism with memory efficient attention using xFormers.",Ye,ne,Ze,R,ie,zt,ve,Ht="Processor for implementing memory efficient attention using xFormers for the Custom Diffusion method.",et,ae,tt,V,de,Rt,xe,Mt="Processor for implementing sliced attention.",ot,ce,st,F,me,Vt,ye,Gt="Processor for implementing sliced attention with extra learnable key and value matrices for the text encoder.",rt,we,nt;return K=new $({props:{title:"Attention Processor",local:"attention-processor",headingTag:"h1"}}),N=new $({props:{title:"AttnProcessor",local:"diffusers.models.attention_processor.AttnProcessor",headingTag:"h2"}}),q=new A({props:{name:"class diffusers.models.attention_processor.AttnProcessor",anchor:"diffusers.models.attention_processor.AttnProcessor",parameters:[],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L537"}}),E=new $({props:{title:"AttnProcessor2_0",local:"diffusers.models.attention_processor.AttnProcessor2_0",headingTag:"h2"}}),I=new A({props:{name:"class diffusers.models.attention_processor.AttnProcessor2_0",anchor:"diffusers.models.attention_processor.AttnProcessor2_0",parameters:[],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L975"}}),S=new $({props:{title:"LoRAAttnProcessor",local:"diffusers.models.attention_processor.LoRAAttnProcessor",headingTag:"h2"}}),W=new A({props:{name:"class diffusers.models.attention_processor.LoRAAttnProcessor",anchor:"diffusers.models.attention_processor.LoRAAttnProcessor",parameters:[{name:"hidden_size",val:""},{name:"cross_attention_dim",val:" = None"},{name:"rank",val:" = 4"},{name:"network_alpha",val:" = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"diffusers.models.attention_processor.LoRAAttnProcessor.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The hidden size of the attention layer.`,name:"hidden_size"},{anchor:"diffusers.models.attention_processor.LoRAAttnProcessor.cross_attention_dim",description:`<strong>cross_attention_dim</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The number of channels in the <code>encoder_hidden_states</code>.`,name:"cross_attention_dim"},{anchor:"diffusers.models.attention_processor.LoRAAttnProcessor.rank",description:`<strong>rank</strong> (<code>int</code>, defaults to 4) &#x2014;
The dimension of the LoRA update matrices.`,name:"rank"},{anchor:"diffusers.models.attention_processor.LoRAAttnProcessor.network_alpha",description:`<strong>network_alpha</strong> (<code>int</code>, <em>optional</em>) &#x2014;
Equivalent to <code>alpha</code> but it&#x2019;s usage is specific to Kohya (A1111) style LoRAs.`,name:"network_alpha"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L1471"}}),O=new $({props:{title:"LoRAAttnProcessor2_0",local:"diffusers.models.attention_processor.LoRAAttnProcessor2_0",headingTag:"h2"}}),j=new A({props:{name:"class diffusers.models.attention_processor.LoRAAttnProcessor2_0",anchor:"diffusers.models.attention_processor.LoRAAttnProcessor2_0",parameters:[{name:"hidden_size",val:""},{name:"cross_attention_dim",val:" = None"},{name:"rank",val:" = 4"},{name:"network_alpha",val:" = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"diffusers.models.attention_processor.LoRAAttnProcessor2_0.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>) &#x2014;
The hidden size of the attention layer.`,name:"hidden_size"},{anchor:"diffusers.models.attention_processor.LoRAAttnProcessor2_0.cross_attention_dim",description:`<strong>cross_attention_dim</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The number of channels in the <code>encoder_hidden_states</code>.`,name:"cross_attention_dim"},{anchor:"diffusers.models.attention_processor.LoRAAttnProcessor2_0.rank",description:`<strong>rank</strong> (<code>int</code>, defaults to 4) &#x2014;
The dimension of the LoRA update matrices.`,name:"rank"},{anchor:"diffusers.models.attention_processor.LoRAAttnProcessor2_0.network_alpha",description:`<strong>network_alpha</strong> (<code>int</code>, <em>optional</em>) &#x2014;
Equivalent to <code>alpha</code> but it&#x2019;s usage is specific to Kohya (A1111) style LoRAs.`,name:"network_alpha"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L1534"}}),B=new $({props:{title:"CustomDiffusionAttnProcessor",local:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor",headingTag:"h2"}}),U=new A({props:{name:"class diffusers.models.attention_processor.CustomDiffusionAttnProcessor",anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor",parameters:[{name:"train_kv",val:" = True"},{name:"train_q_out",val:" = True"},{name:"hidden_size",val:" = None"},{name:"cross_attention_dim",val:" = None"},{name:"out_bias",val:" = True"},{name:"dropout",val:" = 0.0"}],parametersDescription:[{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor.train_kv",description:`<strong>train_kv</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to newly train the key and value matrices corresponding to the text features.`,name:"train_kv"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor.train_q_out",description:`<strong>train_q_out</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to newly train query matrices corresponding to the latent image features.`,name:"train_q_out"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The hidden size of the attention layer.`,name:"hidden_size"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor.cross_attention_dim",description:`<strong>cross_attention_dim</strong> (<code>int</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The number of channels in the <code>encoder_hidden_states</code>.`,name:"cross_attention_dim"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor.out_bias",description:`<strong>out_bias</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to include the bias parameter in <code>train_q_out</code>.`,name:"out_bias"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor.dropout",description:`<strong>dropout</strong> (<code>float</code>, <em>optional</em>, defaults to 0.0) &#x2014;
The dropout probability to use.`,name:"dropout"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L606"}}),H=new $({props:{title:"CustomDiffusionAttnProcessor2_0",local:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0",headingTag:"h2"}}),M=new A({props:{name:"class diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0",anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0",parameters:[{name:"train_kv",val:" = True"},{name:"train_q_out",val:" = True"},{name:"hidden_size",val:" = None"},{name:"cross_attention_dim",val:" = None"},{name:"out_bias",val:" = True"},{name:"dropout",val:" = 0.0"}],parametersDescription:[{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0.train_kv",description:`<strong>train_kv</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to newly train the key and value matrices corresponding to the text features.`,name:"train_kv"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0.train_q_out",description:`<strong>train_q_out</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to newly train query matrices corresponding to the latent image features.`,name:"train_q_out"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The hidden size of the attention layer.`,name:"hidden_size"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0.cross_attention_dim",description:`<strong>cross_attention_dim</strong> (<code>int</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The number of channels in the <code>encoder_hidden_states</code>.`,name:"cross_attention_dim"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0.out_bias",description:`<strong>out_bias</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to include the bias parameter in <code>train_q_out</code>.`,name:"out_bias"},{anchor:"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0.dropout",description:`<strong>dropout</strong> (<code>float</code>, <em>optional</em>, defaults to 0.0) &#x2014;
The dropout probability to use.`,name:"dropout"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L1176"}}),G=new $({props:{title:"AttnAddedKVProcessor",local:"diffusers.models.attention_processor.AttnAddedKVProcessor",headingTag:"h2"}}),J=new A({props:{name:"class diffusers.models.attention_processor.AttnAddedKVProcessor",anchor:"diffusers.models.attention_processor.AttnAddedKVProcessor",parameters:[],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L704"}}),Q=new $({props:{title:"AttnAddedKVProcessor2_0",local:"diffusers.models.attention_processor.AttnAddedKVProcessor2_0",headingTag:"h2"}}),Y=new A({props:{name:"class diffusers.models.attention_processor.AttnAddedKVProcessor2_0",anchor:"diffusers.models.attention_processor.AttnAddedKVProcessor2_0",parameters:[],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L758"}}),Z=new $({props:{title:"LoRAAttnAddedKVProcessor",local:"diffusers.models.attention_processor.LoRAAttnAddedKVProcessor",headingTag:"h2"}}),ee=new A({props:{name:"class diffusers.models.attention_processor.LoRAAttnAddedKVProcessor",anchor:"diffusers.models.attention_processor.LoRAAttnAddedKVProcessor",parameters:[{name:"hidden_size",val:""},{name:"cross_attention_dim",val:" = None"},{name:"rank",val:" = 4"},{name:"network_alpha",val:" = None"}],parametersDescription:[{anchor:"diffusers.models.attention_processor.LoRAAttnAddedKVProcessor.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The hidden size of the attention layer.`,name:"hidden_size"},{anchor:"diffusers.models.attention_processor.LoRAAttnAddedKVProcessor.cross_attention_dim",description:`<strong>cross_attention_dim</strong> (<code>int</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The number of channels in the <code>encoder_hidden_states</code>.`,name:"cross_attention_dim"},{anchor:"diffusers.models.attention_processor.LoRAAttnAddedKVProcessor.rank",description:`<strong>rank</strong> (<code>int</code>, defaults to 4) &#x2014;
The dimension of the LoRA update matrices.`,name:"rank"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L1678"}}),te=new $({props:{title:"XFormersAttnProcessor",local:"diffusers.models.attention_processor.XFormersAttnProcessor",headingTag:"h2"}}),oe=new A({props:{name:"class diffusers.models.attention_processor.XFormersAttnProcessor",anchor:"diffusers.models.attention_processor.XFormersAttnProcessor",parameters:[{name:"attention_op",val:": typing.Optional[typing.Callable] = None"}],parametersDescription:[{anchor:"diffusers.models.attention_processor.XFormersAttnProcessor.attention_op",description:`<strong>attention_op</strong> (<code>Callable</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The base
<a href="https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase" rel="nofollow">operator</a> to
use as the attention operator. It is recommended to set to <code>None</code>, and allow xFormers to choose the best
operator.`,name:"attention_op"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L886"}}),se=new $({props:{title:"LoRAXFormersAttnProcessor",local:"diffusers.models.attention_processor.LoRAXFormersAttnProcessor",headingTag:"h2"}}),re=new A({props:{name:"class diffusers.models.attention_processor.LoRAXFormersAttnProcessor",anchor:"diffusers.models.attention_processor.LoRAXFormersAttnProcessor",parameters:[{name:"hidden_size",val:""},{name:"cross_attention_dim",val:""},{name:"rank",val:" = 4"},{name:"attention_op",val:": typing.Optional[typing.Callable] = None"},{name:"network_alpha",val:" = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"diffusers.models.attention_processor.LoRAXFormersAttnProcessor.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The hidden size of the attention layer.`,name:"hidden_size"},{anchor:"diffusers.models.attention_processor.LoRAXFormersAttnProcessor.cross_attention_dim",description:`<strong>cross_attention_dim</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The number of channels in the <code>encoder_hidden_states</code>.`,name:"cross_attention_dim"},{anchor:"diffusers.models.attention_processor.LoRAXFormersAttnProcessor.rank",description:`<strong>rank</strong> (<code>int</code>, defaults to 4) &#x2014;
The dimension of the LoRA update matrices.`,name:"rank"},{anchor:"diffusers.models.attention_processor.LoRAXFormersAttnProcessor.attention_op",description:`<strong>attention_op</strong> (<code>Callable</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The base
<a href="https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase" rel="nofollow">operator</a> to
use as the attention operator. It is recommended to set to <code>None</code>, and allow xFormers to choose the best
operator.`,name:"attention_op"},{anchor:"diffusers.models.attention_processor.LoRAXFormersAttnProcessor.network_alpha",description:`<strong>network_alpha</strong> (<code>int</code>, <em>optional</em>) &#x2014;
Equivalent to <code>alpha</code> but it&#x2019;s usage is specific to Kohya (A1111) style LoRAs.`,name:"network_alpha"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L1600"}}),ne=new $({props:{title:"CustomDiffusionXFormersAttnProcessor",local:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor",headingTag:"h2"}}),ie=new A({props:{name:"class diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor",anchor:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor",parameters:[{name:"train_kv",val:" = True"},{name:"train_q_out",val:" = False"},{name:"hidden_size",val:" = None"},{name:"cross_attention_dim",val:" = None"},{name:"out_bias",val:" = True"},{name:"dropout",val:" = 0.0"},{name:"attention_op",val:": typing.Optional[typing.Callable] = None"}],parametersDescription:[{anchor:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor.train_kv",description:`<strong>train_kv</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to newly train the key and value matrices corresponding to the text features.`,name:"train_kv"},{anchor:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor.train_q_out",description:`<strong>train_q_out</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to newly train query matrices corresponding to the latent image features.`,name:"train_q_out"},{anchor:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The hidden size of the attention layer.`,name:"hidden_size"},{anchor:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor.cross_attention_dim",description:`<strong>cross_attention_dim</strong> (<code>int</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The number of channels in the <code>encoder_hidden_states</code>.`,name:"cross_attention_dim"},{anchor:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor.out_bias",description:`<strong>out_bias</strong> (<code>bool</code>, defaults to <code>True</code>) &#x2014;
Whether to include the bias parameter in <code>train_q_out</code>.`,name:"out_bias"},{anchor:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor.dropout",description:`<strong>dropout</strong> (<code>float</code>, <em>optional</em>, defaults to 0.0) &#x2014;
The dropout probability to use.`,name:"dropout"},{anchor:"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor.attention_op",description:`<strong>attention_op</strong> (<code>Callable</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
The base
<a href="https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase" rel="nofollow">operator</a> to use
as the attention operator. It is recommended to set to <code>None</code>, and allow xFormers to choose the best operator.`,name:"attention_op"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L1067"}}),ae=new $({props:{title:"SlicedAttnProcessor",local:"diffusers.models.attention_processor.SlicedAttnProcessor",headingTag:"h2"}}),de=new A({props:{name:"class diffusers.models.attention_processor.SlicedAttnProcessor",anchor:"diffusers.models.attention_processor.SlicedAttnProcessor",parameters:[{name:"slice_size",val:""}],parametersDescription:[{anchor:"diffusers.models.attention_processor.SlicedAttnProcessor.slice_size",description:`<strong>slice_size</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The number of steps to compute attention. Uses as many slices as <code>attention_head_dim // slice_size</code>, and
<code>attention_head_dim</code> must be a multiple of the <code>slice_size</code>.`,name:"slice_size"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L1281"}}),ce=new $({props:{title:"SlicedAttnAddedKVProcessor",local:"diffusers.models.attention_processor.SlicedAttnAddedKVProcessor",headingTag:"h2"}}),me=new A({props:{name:"class diffusers.models.attention_processor.SlicedAttnAddedKVProcessor",anchor:"diffusers.models.attention_processor.SlicedAttnAddedKVProcessor",parameters:[{name:"slice_size",val:""}],parametersDescription:[{anchor:"diffusers.models.attention_processor.SlicedAttnAddedKVProcessor.slice_size",description:`<strong>slice_size</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The number of steps to compute attention. Uses as many slices as <code>attention_head_dim // slice_size</code>, and
<code>attention_head_dim</code> must be a multiple of the <code>slice_size</code>.`,name:"slice_size"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py#L1362"}}),{c(){b=i("meta"),De=r(),Ce=i("p"),Le=r(),d(K.$$.fragment),Te=r(),X=i("p"),X.textContent=Kt,ke=r(),d(N.$$.fragment),ze=r(),P=i("div"),d(q.$$.fragment),bt=r(),le=i("p"),le.textContent=Xt,Re=r(),d(E.$$.fragment),Ve=r(),v=i("div"),d(I.$$.fragment),Pt=r(),fe=i("p"),fe.textContent=Nt,Fe=r(),d(S.$$.fragment),Ke=r(),x=i("div"),d(W.$$.fragment),vt=r(),pe=i("p"),pe.textContent=qt,Xe=r(),d(O.$$.fragment),Ne=r(),y=i("div"),d(j.$$.fragment),xt=r(),ue=i("p"),ue.textContent=Et,qe=r(),d(B.$$.fragment),Ee=r(),C=i("div"),d(U.$$.fragment),yt=r(),_e=i("p"),_e.textContent=It,Ie=r(),d(H.$$.fragment),Se=r(),w=i("div"),d(M.$$.fragment),Ct=r(),he=i("p"),he.textContent=St,We=r(),d(G.$$.fragment),Oe=r(),D=i("div"),d(J.$$.fragment),wt=r(),ge=i("p"),ge.textContent=Wt,je=r(),d(Q.$$.fragment),Be=r(),L=i("div"),d(Y.$$.fragment),Dt=r(),$e=i("p"),$e.textContent=Ot,Ue=r(),d(Z.$$.fragment),He=r(),T=i("div"),d(ee.$$.fragment),Lt=r(),Ae=i("p"),Ae.textContent=jt,Me=r(),d(te.$$.fragment),Ge=r(),k=i("div"),d(oe.$$.fragment),Tt=r(),be=i("p"),be.textContent=Bt,Je=r(),d(se.$$.fragment),Qe=r(),z=i("div"),d(re.$$.fragment),kt=r(),Pe=i("p"),Pe.textContent=Ut,Ye=r(),d(ne.$$.fragment),Ze=r(),R=i("div"),d(ie.$$.fragment),zt=r(),ve=i("p"),ve.textContent=Ht,et=r(),d(ae.$$.fragment),tt=r(),V=i("div"),d(de.$$.fragment),Rt=r(),xe=i("p"),xe.textContent=Mt,ot=r(),d(ce.$$.fragment),st=r(),F=i("div"),d(me.$$.fragment),Vt=r(),ye=i("p"),ye.textContent=Gt,rt=r(),we=i("p"),this.h()},l(e){const t=to("svelte-u9bgzb",document.head);b=a(t,"META",{name:!0,content:!0}),t.forEach(o),De=n(e),Ce=a(e,"P",{}),_(Ce).forEach(o),Le=n(e),c(K.$$.fragment,e),Te=n(e),X=a(e,"P",{"data-svelte-h":!0}),g(X)!=="svelte-itqz7g"&&(X.textContent=Kt),ke=n(e),c(N.$$.fragment,e),ze=n(e),P=a(e,"DIV",{class:!0});var it=_(P);c(q.$$.fragment,it),bt=n(it),le=a(it,"P",{"data-svelte-h":!0}),g(le)!=="svelte-12lirf9"&&(le.textContent=Xt),it.forEach(o),Re=n(e),c(E.$$.fragment,e),Ve=n(e),v=a(e,"DIV",{class:!0});var at=_(v);c(I.$$.fragment,at),Pt=n(at),fe=a(at,"P",{"data-svelte-h":!0}),g(fe)!=="svelte-zp073y"&&(fe.textContent=Nt),at.forEach(o),Fe=n(e),c(S.$$.fragment,e),Ke=n(e),x=a(e,"DIV",{class:!0});var dt=_(x);c(W.$$.fragment,dt),vt=n(dt),pe=a(dt,"P",{"data-svelte-h":!0}),g(pe)!=="svelte-z73n2i"&&(pe.textContent=qt),dt.forEach(o),Xe=n(e),c(O.$$.fragment,e),Ne=n(e),y=a(e,"DIV",{class:!0});var ct=_(y);c(j.$$.fragment,ct),xt=n(ct),ue=a(ct,"P",{"data-svelte-h":!0}),g(ue)!=="svelte-yo3yo9"&&(ue.textContent=Et),ct.forEach(o),qe=n(e),c(B.$$.fragment,e),Ee=n(e),C=a(e,"DIV",{class:!0});var mt=_(C);c(U.$$.fragment,mt),yt=n(mt),_e=a(mt,"P",{"data-svelte-h":!0}),g(_e)!=="svelte-1gjwzkd"&&(_e.textContent=It),mt.forEach(o),Ie=n(e),c(H.$$.fragment,e),Se=n(e),w=a(e,"DIV",{class:!0});var lt=_(w);c(M.$$.fragment,lt),Ct=n(lt),he=a(lt,"P",{"data-svelte-h":!0}),g(he)!=="svelte-pottg0"&&(he.textContent=St),lt.forEach(o),We=n(e),c(G.$$.fragment,e),Oe=n(e),D=a(e,"DIV",{class:!0});var ft=_(D);c(J.$$.fragment,ft),wt=n(ft),ge=a(ft,"P",{"data-svelte-h":!0}),g(ge)!=="svelte-yqqibm"&&(ge.textContent=Wt),ft.forEach(o),je=n(e),c(Q.$$.fragment,e),Be=n(e),L=a(e,"DIV",{class:!0});var pt=_(L);c(Y.$$.fragment,pt),Dt=n(pt),$e=a(pt,"P",{"data-svelte-h":!0}),g($e)!=="svelte-hw86c4"&&($e.textContent=Ot),pt.forEach(o),Ue=n(e),c(Z.$$.fragment,e),He=n(e),T=a(e,"DIV",{class:!0});var ut=_(T);c(ee.$$.fragment,ut),Lt=n(ut),Ae=a(ut,"P",{"data-svelte-h":!0}),g(Ae)!=="svelte-zfgvyc"&&(Ae.textContent=jt),ut.forEach(o),Me=n(e),c(te.$$.fragment,e),Ge=n(e),k=a(e,"DIV",{class:!0});var _t=_(k);c(oe.$$.fragment,_t),Tt=n(_t),be=a(_t,"P",{"data-svelte-h":!0}),g(be)!=="svelte-10td8ls"&&(be.textContent=Bt),_t.forEach(o),Je=n(e),c(se.$$.fragment,e),Qe=n(e),z=a(e,"DIV",{class:!0});var ht=_(z);c(re.$$.fragment,ht),kt=n(ht),Pe=a(ht,"P",{"data-svelte-h":!0}),g(Pe)!=="svelte-yqwtom"&&(Pe.textContent=Ut),ht.forEach(o),Ye=n(e),c(ne.$$.fragment,e),Ze=n(e),R=a(e,"DIV",{class:!0});var gt=_(R);c(ie.$$.fragment,gt),zt=n(gt),ve=a(gt,"P",{"data-svelte-h":!0}),g(ve)!=="svelte-10eh8wb"&&(ve.textContent=Ht),gt.forEach(o),et=n(e),c(ae.$$.fragment,e),tt=n(e),V=a(e,"DIV",{class:!0});var $t=_(V);c(de.$$.fragment,$t),Rt=n($t),xe=a($t,"P",{"data-svelte-h":!0}),g(xe)!=="svelte-16xjg0o"&&(xe.textContent=Mt),$t.forEach(o),ot=n(e),c(ce.$$.fragment,e),st=n(e),F=a(e,"DIV",{class:!0});var At=_(F);c(me.$$.fragment,At),Vt=n(At),ye=a(At,"P",{"data-svelte-h":!0}),g(ye)!=="svelte-15dojbg"&&(ye.textContent=Gt),At.forEach(o),rt=n(e),we=a(e,"P",{}),_(we).forEach(o),this.h()},h(){h(b,"name","hf:doc:metadata"),h(b,"content",so),h(P,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(v,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(x,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(y,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(C,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(w,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(D,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(L,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(T,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(k,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(z,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(R,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(V,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),h(F,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8")},m(e,t){m(document.head,b),s(e,De,t),s(e,Ce,t),s(e,Le,t),l(K,e,t),s(e,Te,t),s(e,X,t),s(e,ke,t),l(N,e,t),s(e,ze,t),s(e,P,t),l(q,P,null),m(P,bt),m(P,le),s(e,Re,t),l(E,e,t),s(e,Ve,t),s(e,v,t),l(I,v,null),m(v,Pt),m(v,fe),s(e,Fe,t),l(S,e,t),s(e,Ke,t),s(e,x,t),l(W,x,null),m(x,vt),m(x,pe),s(e,Xe,t),l(O,e,t),s(e,Ne,t),s(e,y,t),l(j,y,null),m(y,xt),m(y,ue),s(e,qe,t),l(B,e,t),s(e,Ee,t),s(e,C,t),l(U,C,null),m(C,yt),m(C,_e),s(e,Ie,t),l(H,e,t),s(e,Se,t),s(e,w,t),l(M,w,null),m(w,Ct),m(w,he),s(e,We,t),l(G,e,t),s(e,Oe,t),s(e,D,t),l(J,D,null),m(D,wt),m(D,ge),s(e,je,t),l(Q,e,t),s(e,Be,t),s(e,L,t),l(Y,L,null),m(L,Dt),m(L,$e),s(e,Ue,t),l(Z,e,t),s(e,He,t),s(e,T,t),l(ee,T,null),m(T,Lt),m(T,Ae),s(e,Me,t),l(te,e,t),s(e,Ge,t),s(e,k,t),l(oe,k,null),m(k,Tt),m(k,be),s(e,Je,t),l(se,e,t),s(e,Qe,t),s(e,z,t),l(re,z,null),m(z,kt),m(z,Pe),s(e,Ye,t),l(ne,e,t),s(e,Ze,t),s(e,R,t),l(ie,R,null),m(R,zt),m(R,ve),s(e,et,t),l(ae,e,t),s(e,tt,t),s(e,V,t),l(de,V,null),m(V,Rt),m(V,xe),s(e,ot,t),l(ce,e,t),s(e,st,t),s(e,F,t),l(me,F,null),m(F,Vt),m(F,ye),s(e,rt,t),s(e,we,t),nt=!0},p:Qt,i(e){nt||(f(K.$$.fragment,e),f(N.$$.fragment,e),f(q.$$.fragment,e),f(E.$$.fragment,e),f(I.$$.fragment,e),f(S.$$.fragment,e),f(W.$$.fragment,e),f(O.$$.fragment,e),f(j.$$.fragment,e),f(B.$$.fragment,e),f(U.$$.fragment,e),f(H.$$.fragment,e),f(M.$$.fragment,e),f(G.$$.fragment,e),f(J.$$.fragment,e),f(Q.$$.fragment,e),f(Y.$$.fragment,e),f(Z.$$.fragment,e),f(ee.$$.fragment,e),f(te.$$.fragment,e),f(oe.$$.fragment,e),f(se.$$.fragment,e),f(re.$$.fragment,e),f(ne.$$.fragment,e),f(ie.$$.fragment,e),f(ae.$$.fragment,e),f(de.$$.fragment,e),f(ce.$$.fragment,e),f(me.$$.fragment,e),nt=!0)},o(e){p(K.$$.fragment,e),p(N.$$.fragment,e),p(q.$$.fragment,e),p(E.$$.fragment,e),p(I.$$.fragment,e),p(S.$$.fragment,e),p(W.$$.fragment,e),p(O.$$.fragment,e),p(j.$$.fragment,e),p(B.$$.fragment,e),p(U.$$.fragment,e),p(H.$$.fragment,e),p(M.$$.fragment,e),p(G.$$.fragment,e),p(J.$$.fragment,e),p(Q.$$.fragment,e),p(Y.$$.fragment,e),p(Z.$$.fragment,e),p(ee.$$.fragment,e),p(te.$$.fragment,e),p(oe.$$.fragment,e),p(se.$$.fragment,e),p(re.$$.fragment,e),p(ne.$$.fragment,e),p(ie.$$.fragment,e),p(ae.$$.fragment,e),p(de.$$.fragment,e),p(ce.$$.fragment,e),p(me.$$.fragment,e),nt=!1},d(e){e&&(o(De),o(Ce),o(Le),o(Te),o(X),o(ke),o(ze),o(P),o(Re),o(Ve),o(v),o(Fe),o(Ke),o(x),o(Xe),o(Ne),o(y),o(qe),o(Ee),o(C),o(Ie),o(Se),o(w),o(We),o(Oe),o(D),o(je),o(Be),o(L),o(Ue),o(He),o(T),o(Me),o(Ge),o(k),o(Je),o(Qe),o(z),o(Ye),o(Ze),o(R),o(et),o(tt),o(V),o(ot),o(st),o(F),o(rt),o(we)),o(b),u(K,e),u(N,e),u(q),u(E,e),u(I),u(S,e),u(W),u(O,e),u(j),u(B,e),u(U),u(H,e),u(M),u(G,e),u(J),u(Q,e),u(Y),u(Z,e),u(ee),u(te,e),u(oe),u(se,e),u(re),u(ne,e),u(ie),u(ae,e),u(de),u(ce,e),u(me)}}}const so='{"title":"Attention Processor","local":"attention-processor","sections":[{"title":"AttnProcessor","local":"diffusers.models.attention_processor.AttnProcessor","sections":[],"depth":2},{"title":"AttnProcessor2_0","local":"diffusers.models.attention_processor.AttnProcessor2_0","sections":[],"depth":2},{"title":"LoRAAttnProcessor","local":"diffusers.models.attention_processor.LoRAAttnProcessor","sections":[],"depth":2},{"title":"LoRAAttnProcessor2_0","local":"diffusers.models.attention_processor.LoRAAttnProcessor2_0","sections":[],"depth":2},{"title":"CustomDiffusionAttnProcessor","local":"diffusers.models.attention_processor.CustomDiffusionAttnProcessor","sections":[],"depth":2},{"title":"CustomDiffusionAttnProcessor2_0","local":"diffusers.models.attention_processor.CustomDiffusionAttnProcessor2_0","sections":[],"depth":2},{"title":"AttnAddedKVProcessor","local":"diffusers.models.attention_processor.AttnAddedKVProcessor","sections":[],"depth":2},{"title":"AttnAddedKVProcessor2_0","local":"diffusers.models.attention_processor.AttnAddedKVProcessor2_0","sections":[],"depth":2},{"title":"LoRAAttnAddedKVProcessor","local":"diffusers.models.attention_processor.LoRAAttnAddedKVProcessor","sections":[],"depth":2},{"title":"XFormersAttnProcessor","local":"diffusers.models.attention_processor.XFormersAttnProcessor","sections":[],"depth":2},{"title":"LoRAXFormersAttnProcessor","local":"diffusers.models.attention_processor.LoRAXFormersAttnProcessor","sections":[],"depth":2},{"title":"CustomDiffusionXFormersAttnProcessor","local":"diffusers.models.attention_processor.CustomDiffusionXFormersAttnProcessor","sections":[],"depth":2},{"title":"SlicedAttnProcessor","local":"diffusers.models.attention_processor.SlicedAttnProcessor","sections":[],"depth":2},{"title":"SlicedAttnAddedKVProcessor","local":"diffusers.models.attention_processor.SlicedAttnAddedKVProcessor","sections":[],"depth":2}],"depth":1}';function ro(Ft){return Yt(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class mo extends Zt{constructor(b){super(),eo(this,b,ro,oo,Jt,{})}}export{mo as component};
