import{S as sa,i as aa,s as ia,e as n,k as l,w as f,t as i,M as da,c as r,d as t,m as c,a as s,x as m,h as d,b as a,G as o,g as p,y as h,q as _,o as g,B as v,v as la}from"../../chunks/vendor-hf-doc-builder.js";import{T as ra}from"../../chunks/Tip-hf-doc-builder.js";import{D as k}from"../../chunks/Docstring-hf-doc-builder.js";import{I as C}from"../../chunks/IconCopyLink-hf-doc-builder.js";function ca(no){let b,O;return{c(){b=n("p"),O=i("Passing `use_auth_token=True\u201C is required when you want to use a private model.")},l($){b=r($,"P",{});var D=s(b);O=d(D,"Passing `use_auth_token=True\u201C is required when you want to use a private model."),D.forEach(t)},m($,D){p($,b,D),o(b,O)},d($){$&&t(b)}}}function ua(no){let b,O,$,D,L;return{c(){b=n("p"),O=i("Activate the special "),$=n("a"),D=i("\u201Coffline-mode\u201D"),L=i(` to use
this method in a firewalled environment.`),this.h()},l(T){b=r(T,"P",{});var q=s(b);O=d(q,"Activate the special "),$=r(q,"A",{href:!0,rel:!0});var J=s($);D=d(J,"\u201Coffline-mode\u201D"),J.forEach(t),L=d(q,` to use
this method in a firewalled environment.`),q.forEach(t),this.h()},h(){a($,"href","https://huggingface.co/diffusers/installation.html#offline-mode"),a($,"rel","nofollow")},m(T,q){p(T,b,q),o(b,O),o(b,$),o($,D),o(b,L)},d(T){T&&t(b)}}}function pa(no){let b,O,$,D,L,T,q,J,Rt,st,P,Jt,_o,Zt,en,go,on,tn,at,B,Z,vo,be,nn,bo,rn,it,y,$e,sn,$o,an,dn,ro,so,ln,cn,un,yo,V,wo,pn,fn,Do,mn,hn,ao,_n,gn,vn,w,ye,bn,ko,$n,yn,F,wn,Mo,Dn,kn,xo,Mn,xn,Tn,we,En,To,Nn,Un,An,De,On,Eo,Cn,qn,Pn,ee,Vn,oe,Ln,te,ke,Bn,No,Fn,Kn,ne,Me,Qn,xe,In,Uo,zn,Sn,dt,K,re,Ao,Te,Wn,Oo,Xn,lt,Ee,Ne,ct,Q,se,Co,Ue,Hn,qo,Yn,ut,E,Ae,jn,Po,Gn,Rn,Oe,Jn,io,Zn,er,or,ae,Ce,tr,Vo,nr,pt,I,ie,Lo,qe,rr,Bo,sr,ft,Pe,Ve,mt,z,de,Fo,Le,ar,Ko,ir,ht,N,Be,dr,Qo,lr,cr,Fe,ur,lo,pr,fr,mr,le,Ke,hr,Io,_r,_t,S,ce,zo,Qe,gr,So,vr,gt,W,Ie,br,Wo,$r,vt,X,ue,Xo,ze,yr,Ho,wr,bt,H,Se,Dr,Yo,kr,$t,Y,pe,jo,We,Mr,Go,xr,yt,U,Xe,Tr,Ro,Er,Nr,He,Ur,co,Ar,Or,Cr,uo,Ye,wt,j,fe,Jo,je,qr,Zo,Pr,Dt,G,Ge,Vr,et,Lr,kt,R,me,ot,Re,Br,tt,Fr,Mt,A,Je,Kr,nt,Qr,Ir,Ze,zr,po,Sr,Wr,Xr,fo,eo,xt;return T=new C({}),be=new C({}),$e=new k({props:{name:"class diffusers.ModelMixin",anchor:"diffusers.ModelMixin",parameters:[],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/modeling_utils.py#L115"}}),ye=new k({props:{name:"from_pretrained",anchor:"diffusers.ModelMixin.from_pretrained",parameters:[{name:"pretrained_model_name_or_path",val:": typing.Union[str, os.PathLike, NoneType]"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"diffusers.ModelMixin.from_pretrained.pretrained_model_name_or_path",description:`<strong>pretrained_model_name_or_path</strong> (<code>str</code> or <code>os.PathLike</code>, <em>optional</em>) &#x2014;
Can be either:</p>
<ul>
<li>A string, the <em>model id</em> of a pretrained model hosted inside a model repo on huggingface.co.
Valid model ids should have an organization name, like <code>google/ddpm-celebahq-256</code>.</li>
<li>A path to a <em>directory</em> containing model weights saved using <code>save_config</code>, e.g.,
<code>./my_model_directory/</code>.</li>
</ul>`,name:"pretrained_model_name_or_path"},{anchor:"diffusers.ModelMixin.from_pretrained.cache_dir",description:`<strong>cache_dir</strong> (<code>Union[str, os.PathLike]</code>, <em>optional</em>) &#x2014;
Path to a directory in which a downloaded pretrained model configuration should be cached if the
standard cache should not be used.`,name:"cache_dir"},{anchor:"diffusers.ModelMixin.from_pretrained.torch_dtype",description:`<strong>torch_dtype</strong> (<code>str</code> or <code>torch.dtype</code>, <em>optional</em>) &#x2014;
Override the default <code>torch.dtype</code> and load the model under this dtype. If <code>&quot;auto&quot;</code> is passed the dtype
will be automatically derived from the model&#x2019;s weights.`,name:"torch_dtype"},{anchor:"diffusers.ModelMixin.from_pretrained.force_download",description:`<strong>force_download</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not to force the (re-)download of the model weights and configuration files, overriding the
cached versions if they exist.`,name:"force_download"},{anchor:"diffusers.ModelMixin.from_pretrained.resume_download",description:`<strong>resume_download</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not to delete incompletely received files. Will attempt to resume the download if such a
file exists.`,name:"resume_download"},{anchor:"diffusers.ModelMixin.from_pretrained.proxies",description:`<strong>proxies</strong> (<code>Dict[str, str]</code>, <em>optional</em>) &#x2014;
A dictionary of proxy servers to use by protocol or endpoint, e.g., <code>{&apos;http&apos;: &apos;foo.bar:3128&apos;, &apos;http://hostname&apos;: &apos;foo.bar:4012&apos;}</code>. The proxies are used on each request.`,name:"proxies"},{anchor:"diffusers.ModelMixin.from_pretrained.output_loading_info(bool,",description:`<strong>output_loading_info(<code>bool</code>,</strong> <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether ot not to also return a dictionary containing missing keys, unexpected keys and error messages.`,name:"output_loading_info(bool,"},{anchor:"diffusers.ModelMixin.from_pretrained.local_files_only(bool,",description:`<strong>local_files_only(<code>bool</code>,</strong> <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not to only look at local files (i.e., do not try to download the model).`,name:"local_files_only(bool,"},{anchor:"diffusers.ModelMixin.from_pretrained.use_auth_token",description:`<strong>use_auth_token</strong> (<code>str</code> or <em>bool</em>, <em>optional</em>) &#x2014;
The token to use as HTTP bearer authorization for remote files. If <code>True</code>, will use the token generated
when running <code>diffusers-cli login</code> (stored in <code>~/.huggingface</code>).`,name:"use_auth_token"},{anchor:"diffusers.ModelMixin.from_pretrained.revision",description:`<strong>revision</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;main&quot;</code>) &#x2014;
The specific model version to use. It can be a branch name, a tag name, or a commit id, since we use a
git-based system for storing models and other artifacts on huggingface.co, so <code>revision</code> can be any
identifier allowed by git.`,name:"revision"},{anchor:"diffusers.ModelMixin.from_pretrained.mirror",description:`<strong>mirror</strong> (<code>str</code>, <em>optional</em>) &#x2014;
Mirror source to accelerate downloads in China. If you are from China and have an accessibility
problem, you can set this option to resolve it. Note that we do not guarantee the timeliness or safety.
Please refer to the mirror site for more information.`,name:"mirror"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/modeling_utils.py#L181"}}),ee=new ra({props:{$$slots:{default:[ca]},$$scope:{ctx:no}}}),oe=new ra({props:{$$slots:{default:[ua]},$$scope:{ctx:no}}}),ke=new k({props:{name:"num_parameters",anchor:"diffusers.ModelMixin.num_parameters",parameters:[{name:"only_trainable",val:": bool = False"},{name:"exclude_embeddings",val:": bool = False"}],parametersDescription:[{anchor:"diffusers.ModelMixin.num_parameters.only_trainable",description:`<strong>only_trainable</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not to return only the number of trainable parameters`,name:"only_trainable"},{anchor:"diffusers.ModelMixin.num_parameters.exclude_embeddings",description:`<strong>exclude_embeddings</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not to return only the number of non-embeddings parameters`,name:"exclude_embeddings"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/modeling_utils.py#L502",returnDescription:`
<p>The number of parameters.</p>
`,returnType:`
<p><code>int</code></p>
`}}),Me=new k({props:{name:"save_pretrained",anchor:"diffusers.ModelMixin.save_pretrained",parameters:[{name:"save_directory",val:": typing.Union[str, os.PathLike]"},{name:"is_main_process",val:": bool = True"},{name:"save_function",val:": typing.Callable = <function save at 0x7fe77069f670>"}],parametersDescription:[{anchor:"diffusers.ModelMixin.save_pretrained.save_directory",description:`<strong>save_directory</strong> (<code>str</code> or <code>os.PathLike</code>) &#x2014;
Directory to which to save. Will be created if it doesn&#x2019;t exist.`,name:"save_directory"},{anchor:"diffusers.ModelMixin.save_pretrained.is_main_process",description:`<strong>is_main_process</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether the process calling this is the main process or not. Useful when in distributed training like
TPUs and need to call this function on all processes. In this case, set <code>is_main_process=True</code> only on
the main process to avoid race conditions.`,name:"is_main_process"},{anchor:"diffusers.ModelMixin.save_pretrained.save_function",description:`<strong>save_function</strong> (<code>Callable</code>) &#x2014;
The function to use to save the state dictionary. Useful on distributed training like TPUs when one
need to replace <code>torch.save</code> by another method.`,name:"save_function"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/modeling_utils.py#L131"}}),Te=new C({}),Ne=new k({props:{name:"class diffusers.models.unet_2d.UNet2DOutput",anchor:"diffusers.models.unet_2d.UNet2DOutput",parameters:[{name:"sample",val:": FloatTensor"}],parametersDescription:[{anchor:"diffusers.models.unet_2d.UNet2DOutput.sample",description:`<strong>sample</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, num_channels, height, width)</code>) &#x2014;
Hidden states output. Output of last layer of model.`,name:"sample"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/unet_2d.py#L15"}}),Ue=new C({}),Ae=new k({props:{name:"class diffusers.UNet2DModel",anchor:"diffusers.UNet2DModel",parameters:[{name:"sample_size",val:": typing.Optional[int] = None"},{name:"in_channels",val:": int = 3"},{name:"out_channels",val:": int = 3"},{name:"center_input_sample",val:": bool = False"},{name:"time_embedding_type",val:": str = 'positional'"},{name:"freq_shift",val:": int = 0"},{name:"flip_sin_to_cos",val:": bool = True"},{name:"down_block_types",val:": typing.Tuple[str] = ('DownBlock2D', 'AttnDownBlock2D', 'AttnDownBlock2D', 'AttnDownBlock2D')"},{name:"up_block_types",val:": typing.Tuple[str] = ('AttnUpBlock2D', 'AttnUpBlock2D', 'AttnUpBlock2D', 'UpBlock2D')"},{name:"block_out_channels",val:": typing.Tuple[int] = (224, 448, 672, 896)"},{name:"layers_per_block",val:": int = 2"},{name:"mid_block_scale_factor",val:": float = 1"},{name:"downsample_padding",val:": int = 1"},{name:"act_fn",val:": str = 'silu'"},{name:"attention_head_dim",val:": int = 8"},{name:"norm_num_groups",val:": int = 32"},{name:"norm_eps",val:": float = 1e-05"}],parametersDescription:[{anchor:"diffusers.UNet2DModel.sample_size",description:`<strong>sample_size</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, num_channels, height, width)</code>, <em>optional</em>) &#x2014;
Input sample size.`,name:"sample_size"},{anchor:"diffusers.UNet2DModel.in_channels",description:"<strong>in_channels</strong> (<code>int</code>, <em>optional</em>, defaults to 3) &#x2014; Number of channels in the input image.",name:"in_channels"},{anchor:"diffusers.UNet2DModel.out_channels",description:"<strong>out_channels</strong> (<code>int</code>, <em>optional</em>, defaults to 3) &#x2014; Number of channels in the output.",name:"out_channels"},{anchor:"diffusers.UNet2DModel.center_input_sample",description:"<strong>center_input_sample</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014; Whether to center the input sample.",name:"center_input_sample"},{anchor:"diffusers.UNet2DModel.time_embedding_type",description:"<strong>time_embedding_type</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;positional&quot;</code>) &#x2014; Type of time embedding to use.",name:"time_embedding_type"},{anchor:"diffusers.UNet2DModel.freq_shift",description:"<strong>freq_shift</strong> (<code>int</code>, <em>optional</em>, defaults to 0) &#x2014; Frequency shift for fourier time embedding.",name:"freq_shift"},{anchor:"diffusers.UNet2DModel.flip_sin_to_cos",description:`<strong>flip_sin_to_cos</strong> (<code>bool</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>False</code>): Whether to flip sin to cos for fourier time embedding.`,name:"flip_sin_to_cos"},{anchor:"diffusers.UNet2DModel.down_block_types",description:`<strong>down_block_types</strong> (<code>Tuple[str]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(&quot;DownBlock2D&quot;, &quot;AttnDownBlock2D&quot;, &quot;AttnDownBlock2D&quot;, &quot;AttnDownBlock2D&quot;)</code>): Tuple of downsample block
types.`,name:"down_block_types"},{anchor:"diffusers.UNet2DModel.up_block_types",description:`<strong>up_block_types</strong> (<code>Tuple[str]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(&quot;AttnUpBlock2D&quot;, &quot;AttnUpBlock2D&quot;, &quot;AttnUpBlock2D&quot;, &quot;UpBlock2D&quot;)</code>): Tuple of upsample block types.`,name:"up_block_types"},{anchor:"diffusers.UNet2DModel.block_out_channels",description:`<strong>block_out_channels</strong> (<code>Tuple[int]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(224, 448, 672, 896)</code>): Tuple of block output channels.`,name:"block_out_channels"},{anchor:"diffusers.UNet2DModel.layers_per_block",description:"<strong>layers_per_block</strong> (<code>int</code>, <em>optional</em>, defaults to <code>2</code>) &#x2014; The number of layers per block.",name:"layers_per_block"},{anchor:"diffusers.UNet2DModel.mid_block_scale_factor",description:"<strong>mid_block_scale_factor</strong> (<code>float</code>, <em>optional</em>, defaults to <code>1</code>) &#x2014; The scale factor for the mid block.",name:"mid_block_scale_factor"},{anchor:"diffusers.UNet2DModel.downsample_padding",description:"<strong>downsample_padding</strong> (<code>int</code>, <em>optional</em>, defaults to <code>1</code>) &#x2014; The padding for the downsample convolution.",name:"downsample_padding"},{anchor:"diffusers.UNet2DModel.act_fn",description:"<strong>act_fn</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;silu&quot;</code>) &#x2014; The activation function to use.",name:"act_fn"},{anchor:"diffusers.UNet2DModel.attention_head_dim",description:"<strong>attention_head_dim</strong> (<code>int</code>, <em>optional</em>, defaults to <code>8</code>) &#x2014; The attention head dimension.",name:"attention_head_dim"},{anchor:"diffusers.UNet2DModel.norm_num_groups",description:"<strong>norm_num_groups</strong> (<code>int</code>, <em>optional</em>, defaults to <code>32</code>) &#x2014; The number of groups for the normalization.",name:"norm_num_groups"},{anchor:"diffusers.UNet2DModel.norm_eps",description:"<strong>norm_eps</strong> (<code>float</code>, <em>optional</em>, defaults to <code>1e-5</code>) &#x2014; The epsilon for the normalization.",name:"norm_eps"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/unet_2d.py#L25"}}),Ce=new k({props:{name:"forward",anchor:"diffusers.UNet2DModel.forward",parameters:[{name:"sample",val:": FloatTensor"},{name:"timestep",val:": typing.Union[torch.Tensor, float, int]"},{name:"return_dict",val:": bool = True"}],parametersDescription:[{anchor:"diffusers.UNet2DModel.forward.sample",description:"<strong>sample</strong> (<code>torch.FloatTensor</code>) &#x2014; (batch, channel, height, width) noisy inputs tensor",name:"sample"},{anchor:"diffusers.UNet2DModel.forward.timestep",description:"<strong>timestep</strong> (<code>torch.FloatTensor</code> or <code>float</code> or `int) &#x2014; (batch) timesteps",name:"timestep"},{anchor:"diffusers.UNet2DModel.forward.return_dict",description:`<strong>return_dict</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not to return a <a href="/docs/diffusers/pr_430/en/api/models#diffusers.models.unet_2d.UNet2DOutput">UNet2DOutput</a> instead of a plain tuple.`,name:"return_dict"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/unet_2d.py#L165",returnDescription:`
<p><a
  href="/docs/diffusers/pr_430/en/api/models#diffusers.models.unet_2d.UNet2DOutput"
>UNet2DOutput</a> if <code>return_dict</code> is True,
otherwise a <code>tuple</code>. When returning a tuple, the first element is the sample tensor.</p>
`,returnType:`
<p><a
  href="/docs/diffusers/pr_430/en/api/models#diffusers.models.unet_2d.UNet2DOutput"
>UNet2DOutput</a> or <code>tuple</code></p>
`}}),qe=new C({}),Ve=new k({props:{name:"class diffusers.models.unet_2d_condition.UNet2DConditionOutput",anchor:"diffusers.models.unet_2d_condition.UNet2DConditionOutput",parameters:[{name:"sample",val:": FloatTensor"}],parametersDescription:[{anchor:"diffusers.models.unet_2d_condition.UNet2DConditionOutput.sample",description:`<strong>sample</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, num_channels, height, width)</code>) &#x2014;
Hidden states conditioned on <code>encoder_hidden_states</code> input. Output of last layer of model.`,name:"sample"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/unet_2d_condition.py#L15"}}),Le=new C({}),Be=new k({props:{name:"class diffusers.UNet2DConditionModel",anchor:"diffusers.UNet2DConditionModel",parameters:[{name:"sample_size",val:": typing.Optional[int] = None"},{name:"in_channels",val:": int = 4"},{name:"out_channels",val:": int = 4"},{name:"center_input_sample",val:": bool = False"},{name:"flip_sin_to_cos",val:": bool = True"},{name:"freq_shift",val:": int = 0"},{name:"down_block_types",val:": typing.Tuple[str] = ('CrossAttnDownBlock2D', 'CrossAttnDownBlock2D', 'CrossAttnDownBlock2D', 'DownBlock2D')"},{name:"up_block_types",val:": typing.Tuple[str] = ('UpBlock2D', 'CrossAttnUpBlock2D', 'CrossAttnUpBlock2D', 'CrossAttnUpBlock2D')"},{name:"block_out_channels",val:": typing.Tuple[int] = (320, 640, 1280, 1280)"},{name:"layers_per_block",val:": int = 2"},{name:"downsample_padding",val:": int = 1"},{name:"mid_block_scale_factor",val:": float = 1"},{name:"act_fn",val:": str = 'silu'"},{name:"norm_num_groups",val:": int = 32"},{name:"norm_eps",val:": float = 1e-05"},{name:"cross_attention_dim",val:": int = 1280"},{name:"attention_head_dim",val:": int = 8"}],parametersDescription:[{anchor:"diffusers.UNet2DConditionModel.sample_size",description:"<strong>sample_size</strong> (<code>int</code>, <em>optional</em>) &#x2014; The size of the input sample.",name:"sample_size"},{anchor:"diffusers.UNet2DConditionModel.in_channels",description:"<strong>in_channels</strong> (<code>int</code>, <em>optional</em>, defaults to 4) &#x2014; The number of channels in the input sample.",name:"in_channels"},{anchor:"diffusers.UNet2DConditionModel.out_channels",description:"<strong>out_channels</strong> (<code>int</code>, <em>optional</em>, defaults to 4) &#x2014; The number of channels in the output.",name:"out_channels"},{anchor:"diffusers.UNet2DConditionModel.center_input_sample",description:"<strong>center_input_sample</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014; Whether to center the input sample.",name:"center_input_sample"},{anchor:"diffusers.UNet2DConditionModel.flip_sin_to_cos",description:`<strong>flip_sin_to_cos</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether to flip the sin to cos in the time embedding.`,name:"flip_sin_to_cos"},{anchor:"diffusers.UNet2DConditionModel.freq_shift",description:"<strong>freq_shift</strong> (<code>int</code>, <em>optional</em>, defaults to 0) &#x2014; The frequency shift to apply to the time embedding.",name:"freq_shift"},{anchor:"diffusers.UNet2DConditionModel.down_block_types",description:`<strong>down_block_types</strong> (<code>Tuple[str]</code>, <em>optional</em>, defaults to <code>(&quot;CrossAttnDownBlock2D&quot;, &quot;CrossAttnDownBlock2D&quot;, &quot;CrossAttnDownBlock2D&quot;, &quot;DownBlock2D&quot;)</code>) &#x2014;
The tuple of downsample blocks to use.`,name:"down_block_types"},{anchor:"diffusers.UNet2DConditionModel.up_block_types",description:`<strong>up_block_types</strong> (<code>Tuple[str]</code>, <em>optional</em>, defaults to <code>(&quot;UpBlock2D&quot;, &quot;CrossAttnUpBlock2D&quot;, &quot;CrossAttnUpBlock2D&quot;, &quot;CrossAttnUpBlock2D&quot;,)</code>) &#x2014;
The tuple of upsample blocks to use.`,name:"up_block_types"},{anchor:"diffusers.UNet2DConditionModel.block_out_channels",description:`<strong>block_out_channels</strong> (<code>Tuple[int]</code>, <em>optional</em>, defaults to <code>(320, 640, 1280, 1280)</code>) &#x2014;
The tuple of output channels for each block.`,name:"block_out_channels"},{anchor:"diffusers.UNet2DConditionModel.layers_per_block",description:"<strong>layers_per_block</strong> (<code>int</code>, <em>optional</em>, defaults to 2) &#x2014; The number of layers per block.",name:"layers_per_block"},{anchor:"diffusers.UNet2DConditionModel.downsample_padding",description:"<strong>downsample_padding</strong> (<code>int</code>, <em>optional</em>, defaults to 1) &#x2014; The padding to use for the downsampling convolution.",name:"downsample_padding"},{anchor:"diffusers.UNet2DConditionModel.mid_block_scale_factor",description:"<strong>mid_block_scale_factor</strong> (<code>float</code>, <em>optional</em>, defaults to 1.0) &#x2014; The scale factor to use for the mid block.",name:"mid_block_scale_factor"},{anchor:"diffusers.UNet2DConditionModel.act_fn",description:"<strong>act_fn</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;silu&quot;</code>) &#x2014; The activation function to use.",name:"act_fn"},{anchor:"diffusers.UNet2DConditionModel.norm_num_groups",description:"<strong>norm_num_groups</strong> (<code>int</code>, <em>optional</em>, defaults to 32) &#x2014; The number of groups to use for the normalization.",name:"norm_num_groups"},{anchor:"diffusers.UNet2DConditionModel.norm_eps",description:"<strong>norm_eps</strong> (<code>float</code>, <em>optional</em>, defaults to 1e-5) &#x2014; The epsilon to use for the normalization.",name:"norm_eps"},{anchor:"diffusers.UNet2DConditionModel.cross_attention_dim",description:"<strong>cross_attention_dim</strong> (<code>int</code>, <em>optional</em>, defaults to 1280) &#x2014; The dimension of the cross attention features.",name:"cross_attention_dim"},{anchor:"diffusers.UNet2DConditionModel.attention_head_dim",description:"<strong>attention_head_dim</strong> (<code>int</code>, <em>optional</em>, defaults to 8) &#x2014; The dimension of the attention heads.",name:"attention_head_dim"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/unet_2d_condition.py#L25"}}),Ke=new k({props:{name:"forward",anchor:"diffusers.UNet2DConditionModel.forward",parameters:[{name:"sample",val:": FloatTensor"},{name:"timestep",val:": typing.Union[torch.Tensor, float, int]"},{name:"encoder_hidden_states",val:": Tensor"},{name:"return_dict",val:": bool = True"}],parametersDescription:[{anchor:"diffusers.UNet2DConditionModel.forward.sample",description:"<strong>sample</strong> (<code>torch.FloatTensor</code>) &#x2014; (batch, channel, height, width) noisy inputs tensor",name:"sample"},{anchor:"diffusers.UNet2DConditionModel.forward.timestep",description:"<strong>timestep</strong> (<code>torch.FloatTensor</code> or <code>float</code> or `int) &#x2014; (batch) timesteps",name:"timestep"},{anchor:"diffusers.UNet2DConditionModel.forward.encoder_hidden_states",description:"<strong>encoder_hidden_states</strong> (<code>torch.FloatTensor</code>) &#x2014; (batch, channel, height, width) encoder hidden states",name:"encoder_hidden_states"},{anchor:"diffusers.UNet2DConditionModel.forward.return_dict",description:`<strong>return_dict</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not to return a <a href="/docs/diffusers/pr_430/en/api/models#diffusers.models.unet_2d_condition.UNet2DConditionOutput">models.unet_2d_condition.UNet2DConditionOutput</a> instead of a plain tuple.`,name:"return_dict"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/unet_2d_condition.py#L189",returnDescription:`
<p><a
  href="/docs/diffusers/pr_430/en/api/models#diffusers.models.unet_2d_condition.UNet2DConditionOutput"
>UNet2DConditionOutput</a> if <code>return_dict</code> is True, otherwise a <code>tuple</code>. When
returning a tuple, the first element is the sample tensor.</p>
`,returnType:`
<p><a
  href="/docs/diffusers/pr_430/en/api/models#diffusers.models.unet_2d_condition.UNet2DConditionOutput"
>UNet2DConditionOutput</a> or <code>tuple</code></p>
`}}),Qe=new C({}),Ie=new k({props:{name:"class diffusers.models.vae.DecoderOutput",anchor:"diffusers.models.vae.DecoderOutput",parameters:[{name:"sample",val:": FloatTensor"}],parametersDescription:[{anchor:"diffusers.models.vae.DecoderOutput.sample",description:`<strong>sample</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, num_channels, height, width)</code>) &#x2014;
Decoded output sample of the model. Output of the last layer of the model.`,name:"sample"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/vae.py#L15"}}),ze=new C({}),Se=new k({props:{name:"class diffusers.models.vae.VQEncoderOutput",anchor:"diffusers.models.vae.VQEncoderOutput",parameters:[{name:"latents",val:": FloatTensor"}],parametersDescription:[{anchor:"diffusers.models.vae.VQEncoderOutput.latents",description:`<strong>latents</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, num_channels, height, width)</code>) &#x2014;
Encoded output sample of the model. Output of the last layer of the model.`,name:"latents"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/vae.py#L28"}}),We=new C({}),Xe=new k({props:{name:"class diffusers.VQModel",anchor:"diffusers.VQModel",parameters:[{name:"in_channels",val:": int = 3"},{name:"out_channels",val:": int = 3"},{name:"down_block_types",val:": typing.Tuple[str] = ('DownEncoderBlock2D',)"},{name:"up_block_types",val:": typing.Tuple[str] = ('UpDecoderBlock2D',)"},{name:"block_out_channels",val:": typing.Tuple[int] = (64,)"},{name:"layers_per_block",val:": int = 1"},{name:"act_fn",val:": str = 'silu'"},{name:"latent_channels",val:": int = 3"},{name:"sample_size",val:": int = 32"},{name:"num_vq_embeddings",val:": int = 256"}],parametersDescription:[{anchor:"diffusers.VQModel.in_channels",description:"<strong>in_channels</strong> (int, <em>optional</em>, defaults to 3) &#x2014; Number of channels in the input image.",name:"in_channels"},{anchor:"diffusers.VQModel.out_channels",description:"<strong>out_channels</strong> (int,  <em>optional</em>, defaults to 3) &#x2014; Number of channels in the output.",name:"out_channels"},{anchor:"diffusers.VQModel.down_block_types",description:`<strong>down_block_types</strong> (<code>Tuple[str]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(&quot;DownEncoderBlock2D&quot;,)</code>): Tuple of downsample block types.`,name:"down_block_types"},{anchor:"diffusers.VQModel.up_block_types",description:`<strong>up_block_types</strong> (<code>Tuple[str]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(&quot;UpDecoderBlock2D&quot;,)</code>): Tuple of upsample block types.`,name:"up_block_types"},{anchor:"diffusers.VQModel.block_out_channels",description:`<strong>block_out_channels</strong> (<code>Tuple[int]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(64,)</code>): Tuple of block output channels.`,name:"block_out_channels"},{anchor:"diffusers.VQModel.act_fn",description:"<strong>act_fn</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;silu&quot;</code>) &#x2014; The activation function to use.",name:"act_fn"},{anchor:"diffusers.VQModel.latent_channels",description:"<strong>latent_channels</strong> (<code>int</code>, <em>optional</em>, defaults to <code>3</code>) &#x2014; Number of channels in the latent space.",name:"latent_channels"},{anchor:"diffusers.VQModel.sample_size",description:"<strong>sample_size</strong> (<code>int</code>, <em>optional</em>, defaults to <code>32</code>) &#x2014; TODO",name:"sample_size"},{anchor:"diffusers.VQModel.num_vq_embeddings",description:"<strong>num_vq_embeddings</strong> (<code>int</code>, <em>optional</em>, defaults to <code>256</code>) &#x2014; Number of codebook vectors in the VQ-VAE.",name:"num_vq_embeddings"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/vae.py#L373"}}),Ye=new k({props:{name:"forward",anchor:"diffusers.VQModel.forward",parameters:[{name:"sample",val:": FloatTensor"},{name:"return_dict",val:": bool = True"}],parametersDescription:[{anchor:"diffusers.VQModel.forward.sample",description:"<strong>sample</strong> (<code>torch.FloatTensor</code>) &#x2014; Input sample.",name:"sample"},{anchor:"diffusers.VQModel.forward.return_dict",description:`<strong>return_dict</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not to return a <code>DecoderOutput</code> instead of a plain tuple.`,name:"return_dict"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/vae.py#L463"}}),je=new C({}),Ge=new k({props:{name:"class diffusers.models.vae.AutoencoderKLOutput",anchor:"diffusers.models.vae.AutoencoderKLOutput",parameters:[{name:"latent_dist",val:": DiagonalGaussianDistribution"}],parametersDescription:[{anchor:"diffusers.models.vae.AutoencoderKLOutput.latent_dist",description:`<strong>latent_dist</strong> (<code>DiagonalGaussianDistribution</code>) &#x2014;
Encoded outputs of <code>Encoder</code> represented as the mean and logvar of <code>DiagonalGaussianDistribution</code>.
<code>DiagonalGaussianDistribution</code> allows for sampling latents from the distribution.`,name:"latent_dist"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/vae.py#L41"}}),Re=new C({}),Je=new k({props:{name:"class diffusers.AutoencoderKL",anchor:"diffusers.AutoencoderKL",parameters:[{name:"in_channels",val:": int = 3"},{name:"out_channels",val:": int = 3"},{name:"down_block_types",val:": typing.Tuple[str] = ('DownEncoderBlock2D',)"},{name:"up_block_types",val:": typing.Tuple[str] = ('UpDecoderBlock2D',)"},{name:"block_out_channels",val:": typing.Tuple[int] = (64,)"},{name:"layers_per_block",val:": int = 1"},{name:"act_fn",val:": str = 'silu'"},{name:"latent_channels",val:": int = 4"},{name:"sample_size",val:": int = 32"}],parametersDescription:[{anchor:"diffusers.AutoencoderKL.in_channels",description:"<strong>in_channels</strong> (int, <em>optional</em>, defaults to 3) &#x2014; Number of channels in the input image.",name:"in_channels"},{anchor:"diffusers.AutoencoderKL.out_channels",description:"<strong>out_channels</strong> (int,  <em>optional</em>, defaults to 3) &#x2014; Number of channels in the output.",name:"out_channels"},{anchor:"diffusers.AutoencoderKL.down_block_types",description:`<strong>down_block_types</strong> (<code>Tuple[str]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(&quot;DownEncoderBlock2D&quot;,)</code>): Tuple of downsample block types.`,name:"down_block_types"},{anchor:"diffusers.AutoencoderKL.up_block_types",description:`<strong>up_block_types</strong> (<code>Tuple[str]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(&quot;UpDecoderBlock2D&quot;,)</code>): Tuple of upsample block types.`,name:"up_block_types"},{anchor:"diffusers.AutoencoderKL.block_out_channels",description:`<strong>block_out_channels</strong> (<code>Tuple[int]</code>, <em>optional</em>, defaults to  &#x2014;
obj:<code>(64,)</code>): Tuple of block output channels.`,name:"block_out_channels"},{anchor:"diffusers.AutoencoderKL.act_fn",description:"<strong>act_fn</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;silu&quot;</code>) &#x2014; The activation function to use.",name:"act_fn"},{anchor:"diffusers.AutoencoderKL.latent_channels",description:"<strong>latent_channels</strong> (<code>int</code>, <em>optional</em>, defaults to <code>4</code>) &#x2014; Number of channels in the latent space.",name:"latent_channels"},{anchor:"diffusers.AutoencoderKL.sample_size",description:"<strong>sample_size</strong> (<code>int</code>, <em>optional</em>, defaults to <code>32</code>) &#x2014; TODO",name:"sample_size"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/vae.py#L480"}}),eo=new k({props:{name:"forward",anchor:"diffusers.AutoencoderKL.forward",parameters:[{name:"sample",val:": FloatTensor"},{name:"sample_posterior",val:": bool = False"},{name:"return_dict",val:": bool = True"}],parametersDescription:[{anchor:"diffusers.AutoencoderKL.forward.sample",description:"<strong>sample</strong> (<code>torch.FloatTensor</code>) &#x2014; Input sample.",name:"sample"},{anchor:"diffusers.AutoencoderKL.forward.sample_posterior",description:`<strong>sample_posterior</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether to sample from the posterior.`,name:"sample_posterior"},{anchor:"diffusers.AutoencoderKL.forward.return_dict",description:`<strong>return_dict</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not to return a <code>DecoderOutput</code> instead of a plain tuple.`,name:"return_dict"}],source:"https://github.com/huggingface/diffusers/blob/vr_430/src/diffusers/models/vae.py#L559"}}),{c(){b=n("meta"),O=l(),$=n("h1"),D=n("a"),L=n("span"),f(T.$$.fragment),q=l(),J=n("span"),Rt=i("Models"),st=l(),P=n("p"),Jt=i(`Diffusers contains pretrained models for popular algorithms and modules for creating the next set of diffusion models.
The primary function of these models is to denoise an input sample, by modeling the distribution $p`),_o=n("em"),Zt=i("\\theta(\\mathbf{x}"),en=i(`{t-1}|\\mathbf{x}_t)$.
The models are built on the base class [\u2018ModelMixin\u2019] that is a `),go=n("code"),on=i("torch.nn.module"),tn=i(" with basic functionality for saving and loading models both locally and from the HuggingFace hub."),at=l(),B=n("h2"),Z=n("a"),vo=n("span"),f(be.$$.fragment),nn=l(),bo=n("span"),rn=i("ModelMixin"),it=l(),y=n("div"),f($e.$$.fragment),sn=l(),$o=n("p"),an=i("Base class for all models."),dn=l(),ro=n("p"),so=n("a"),ln=i("ModelMixin"),cn=i(` takes care of storing the configuration of the models and handles methods for loading, downloading
and saving models.`),un=l(),yo=n("ul"),V=n("li"),wo=n("strong"),pn=i("config_name"),fn=i(" ("),Do=n("code"),mn=i("str"),hn=i(`) \u2014 A filename under which the model should be stored when calling
`),ao=n("a"),_n=i("save_pretrained()"),gn=i("."),vn=l(),w=n("div"),f(ye.$$.fragment),bn=l(),ko=n("p"),$n=i("Instantiate a pretrained pytorch model from a pre-trained model configuration."),yn=l(),F=n("p"),wn=i("The model is set in evaluation mode by default using "),Mo=n("code"),Dn=i("model.eval()"),kn=i(` (Dropout modules are deactivated). To train
the model, you should first set it back in training mode with `),xo=n("code"),Mn=i("model.train()"),xn=i("."),Tn=l(),we=n("p"),En=i("The warning "),To=n("em"),Nn=i("Weights from XXX not initialized from pretrained model"),Un=i(` means that the weights of XXX do not come
pretrained with the rest of the model. It is up to you to train those weights with a downstream fine-tuning
task.`),An=l(),De=n("p"),On=i("The warning "),Eo=n("em"),Cn=i("Weights from XXX not used in YYY"),qn=i(` means that the layer XXX is not used by YYY, therefore those
weights are discarded.`),Pn=l(),f(ee.$$.fragment),Vn=l(),f(oe.$$.fragment),Ln=l(),te=n("div"),f(ke.$$.fragment),Bn=l(),No=n("p"),Fn=i("Get number of (optionally, trainable or non-embeddings) parameters in the module."),Kn=l(),ne=n("div"),f(Me.$$.fragment),Qn=l(),xe=n("p"),In=i(`Save a model and its configuration file to a directory, so that it can be re-loaded using the
`),Uo=n("code"),zn=i("[from_pretrained()](/docs/diffusers/pr_430/en/api/models#diffusers.ModelMixin.from_pretrained)"),Sn=i(" class method."),dt=l(),K=n("h2"),re=n("a"),Ao=n("span"),f(Te.$$.fragment),Wn=l(),Oo=n("span"),Xn=i("UNet2DOutput"),lt=l(),Ee=n("div"),f(Ne.$$.fragment),ct=l(),Q=n("h2"),se=n("a"),Co=n("span"),f(Ue.$$.fragment),Hn=l(),qo=n("span"),Yn=i("UNet2DModel"),ut=l(),E=n("div"),f(Ae.$$.fragment),jn=l(),Po=n("p"),Gn=i("UNet2DModel is a 2D UNet model that takes in a noisy sample and a timestep and returns sample shaped output."),Rn=l(),Oe=n("p"),Jn=i("This model inherits from "),io=n("a"),Zn=i("ModelMixin"),er=i(`. Check the superclass documentation for the generic methods the library
implements for all the model (such as downloading or saving, etc.)`),or=l(),ae=n("div"),f(Ce.$$.fragment),tr=l(),Vo=n("p"),nr=i("r"),pt=l(),I=n("h2"),ie=n("a"),Lo=n("span"),f(qe.$$.fragment),rr=l(),Bo=n("span"),sr=i("UNet2DConditionOutput"),ft=l(),Pe=n("div"),f(Ve.$$.fragment),mt=l(),z=n("h2"),de=n("a"),Fo=n("span"),f(Le.$$.fragment),ar=l(),Ko=n("span"),ir=i("UNet2DConditionModel"),ht=l(),N=n("div"),f(Be.$$.fragment),dr=l(),Qo=n("p"),lr=i(`UNet2DConditionModel is a conditional 2D UNet model that takes in a noisy sample, conditional state, and a timestep
and returns sample shaped output.`),cr=l(),Fe=n("p"),ur=i("This model inherits from "),lo=n("a"),pr=i("ModelMixin"),fr=i(`. Check the superclass documentation for the generic methods the library
implements for all the model (such as downloading or saving, etc.)`),mr=l(),le=n("div"),f(Ke.$$.fragment),hr=l(),Io=n("p"),_r=i("r"),_t=l(),S=n("h2"),ce=n("a"),zo=n("span"),f(Qe.$$.fragment),gr=l(),So=n("span"),vr=i("DecoderOutput"),gt=l(),W=n("div"),f(Ie.$$.fragment),br=l(),Wo=n("p"),$r=i("Output of decoding method."),vt=l(),X=n("h2"),ue=n("a"),Xo=n("span"),f(ze.$$.fragment),yr=l(),Ho=n("span"),wr=i("VQEncoderOutput"),bt=l(),H=n("div"),f(Se.$$.fragment),Dr=l(),Yo=n("p"),kr=i("Output of VQModel encoding method."),$t=l(),Y=n("h2"),pe=n("a"),jo=n("span"),f(We.$$.fragment),Mr=l(),Go=n("span"),xr=i("VQModel"),yt=l(),U=n("div"),f(Xe.$$.fragment),Tr=l(),Ro=n("p"),Er=i(`VQ-VAE model from the paper Neural Discrete Representation Learning by Aaron van den Oord, Oriol Vinyals and Koray
Kavukcuoglu.`),Nr=l(),He=n("p"),Ur=i("This model inherits from "),co=n("a"),Ar=i("ModelMixin"),Or=i(`. Check the superclass documentation for the generic methods the library
implements for all the model (such as downloading or saving, etc.)`),Cr=l(),uo=n("div"),f(Ye.$$.fragment),wt=l(),j=n("h2"),fe=n("a"),Jo=n("span"),f(je.$$.fragment),qr=l(),Zo=n("span"),Pr=i("AutoencoderKLOutput"),Dt=l(),G=n("div"),f(Ge.$$.fragment),Vr=l(),et=n("p"),Lr=i("Output of AutoencoderKL encoding method."),kt=l(),R=n("h2"),me=n("a"),ot=n("span"),f(Re.$$.fragment),Br=l(),tt=n("span"),Fr=i("AutoencoderKL"),Mt=l(),A=n("div"),f(Je.$$.fragment),Kr=l(),nt=n("p"),Qr=i(`Variational Autoencoder (VAE) model with KL loss from the paper Auto-Encoding Variational Bayes by Diederik P. Kingma
and Max Welling.`),Ir=l(),Ze=n("p"),zr=i("This model inherits from "),po=n("a"),Sr=i("ModelMixin"),Wr=i(`. Check the superclass documentation for the generic methods the library
implements for all the model (such as downloading or saving, etc.)`),Xr=l(),fo=n("div"),f(eo.$$.fragment),this.h()},l(e){const u=da('[data-svelte="svelte-1phssyn"]',document.head);b=r(u,"META",{name:!0,content:!0}),u.forEach(t),O=c(e),$=r(e,"H1",{class:!0});var oo=s($);D=r(oo,"A",{id:!0,class:!0,href:!0});var rt=s(D);L=r(rt,"SPAN",{});var Yr=s(L);m(T.$$.fragment,Yr),Yr.forEach(t),rt.forEach(t),q=c(oo),J=r(oo,"SPAN",{});var jr=s(J);Rt=d(jr,"Models"),jr.forEach(t),oo.forEach(t),st=c(e),P=r(e,"P",{});var mo=s(P);Jt=d(mo,`Diffusers contains pretrained models for popular algorithms and modules for creating the next set of diffusion models.
The primary function of these models is to denoise an input sample, by modeling the distribution $p`),_o=r(mo,"EM",{});var Gr=s(_o);Zt=d(Gr,"\\theta(\\mathbf{x}"),Gr.forEach(t),en=d(mo,`{t-1}|\\mathbf{x}_t)$.
The models are built on the base class [\u2018ModelMixin\u2019] that is a `),go=r(mo,"CODE",{});var Rr=s(go);on=d(Rr,"torch.nn.module"),Rr.forEach(t),tn=d(mo," with basic functionality for saving and loading models both locally and from the HuggingFace hub."),mo.forEach(t),at=c(e),B=r(e,"H2",{class:!0});var Tt=s(B);Z=r(Tt,"A",{id:!0,class:!0,href:!0});var Jr=s(Z);vo=r(Jr,"SPAN",{});var Zr=s(vo);m(be.$$.fragment,Zr),Zr.forEach(t),Jr.forEach(t),nn=c(Tt),bo=r(Tt,"SPAN",{});var es=s(bo);rn=d(es,"ModelMixin"),es.forEach(t),Tt.forEach(t),it=c(e),y=r(e,"DIV",{class:!0});var M=s(y);m($e.$$.fragment,M),sn=c(M),$o=r(M,"P",{});var os=s($o);an=d(os,"Base class for all models."),os.forEach(t),dn=c(M),ro=r(M,"P",{});var Hr=s(ro);so=r(Hr,"A",{href:!0});var ts=s(so);ln=d(ts,"ModelMixin"),ts.forEach(t),cn=d(Hr,` takes care of storing the configuration of the models and handles methods for loading, downloading
and saving models.`),Hr.forEach(t),un=c(M),yo=r(M,"UL",{});var ns=s(yo);V=r(ns,"LI",{});var to=s(V);wo=r(to,"STRONG",{});var rs=s(wo);pn=d(rs,"config_name"),rs.forEach(t),fn=d(to," ("),Do=r(to,"CODE",{});var ss=s(Do);mn=d(ss,"str"),ss.forEach(t),hn=d(to,`) \u2014 A filename under which the model should be stored when calling
`),ao=r(to,"A",{href:!0});var as=s(ao);_n=d(as,"save_pretrained()"),as.forEach(t),gn=d(to,"."),to.forEach(t),ns.forEach(t),vn=c(M),w=r(M,"DIV",{class:!0});var x=s(w);m(ye.$$.fragment,x),bn=c(x),ko=r(x,"P",{});var is=s(ko);$n=d(is,"Instantiate a pretrained pytorch model from a pre-trained model configuration."),is.forEach(t),yn=c(x),F=r(x,"P",{});var ho=s(F);wn=d(ho,"The model is set in evaluation mode by default using "),Mo=r(ho,"CODE",{});var ds=s(Mo);Dn=d(ds,"model.eval()"),ds.forEach(t),kn=d(ho,` (Dropout modules are deactivated). To train
the model, you should first set it back in training mode with `),xo=r(ho,"CODE",{});var ls=s(xo);Mn=d(ls,"model.train()"),ls.forEach(t),xn=d(ho,"."),ho.forEach(t),Tn=c(x),we=r(x,"P",{});var Et=s(we);En=d(Et,"The warning "),To=r(Et,"EM",{});var cs=s(To);Nn=d(cs,"Weights from XXX not initialized from pretrained model"),cs.forEach(t),Un=d(Et,` means that the weights of XXX do not come
pretrained with the rest of the model. It is up to you to train those weights with a downstream fine-tuning
task.`),Et.forEach(t),An=c(x),De=r(x,"P",{});var Nt=s(De);On=d(Nt,"The warning "),Eo=r(Nt,"EM",{});var us=s(Eo);Cn=d(us,"Weights from XXX not used in YYY"),us.forEach(t),qn=d(Nt,` means that the layer XXX is not used by YYY, therefore those
weights are discarded.`),Nt.forEach(t),Pn=c(x),m(ee.$$.fragment,x),Vn=c(x),m(oe.$$.fragment,x),x.forEach(t),Ln=c(M),te=r(M,"DIV",{class:!0});var Ut=s(te);m(ke.$$.fragment,Ut),Bn=c(Ut),No=r(Ut,"P",{});var ps=s(No);Fn=d(ps,"Get number of (optionally, trainable or non-embeddings) parameters in the module."),ps.forEach(t),Ut.forEach(t),Kn=c(M),ne=r(M,"DIV",{class:!0});var At=s(ne);m(Me.$$.fragment,At),Qn=c(At),xe=r(At,"P",{});var Ot=s(xe);In=d(Ot,`Save a model and its configuration file to a directory, so that it can be re-loaded using the
`),Uo=r(Ot,"CODE",{});var fs=s(Uo);zn=d(fs,"[from_pretrained()](/docs/diffusers/pr_430/en/api/models#diffusers.ModelMixin.from_pretrained)"),fs.forEach(t),Sn=d(Ot," class method."),Ot.forEach(t),At.forEach(t),M.forEach(t),dt=c(e),K=r(e,"H2",{class:!0});var Ct=s(K);re=r(Ct,"A",{id:!0,class:!0,href:!0});var ms=s(re);Ao=r(ms,"SPAN",{});var hs=s(Ao);m(Te.$$.fragment,hs),hs.forEach(t),ms.forEach(t),Wn=c(Ct),Oo=r(Ct,"SPAN",{});var _s=s(Oo);Xn=d(_s,"UNet2DOutput"),_s.forEach(t),Ct.forEach(t),lt=c(e),Ee=r(e,"DIV",{class:!0});var gs=s(Ee);m(Ne.$$.fragment,gs),gs.forEach(t),ct=c(e),Q=r(e,"H2",{class:!0});var qt=s(Q);se=r(qt,"A",{id:!0,class:!0,href:!0});var vs=s(se);Co=r(vs,"SPAN",{});var bs=s(Co);m(Ue.$$.fragment,bs),bs.forEach(t),vs.forEach(t),Hn=c(qt),qo=r(qt,"SPAN",{});var $s=s(qo);Yn=d($s,"UNet2DModel"),$s.forEach(t),qt.forEach(t),ut=c(e),E=r(e,"DIV",{class:!0});var he=s(E);m(Ae.$$.fragment,he),jn=c(he),Po=r(he,"P",{});var ys=s(Po);Gn=d(ys,"UNet2DModel is a 2D UNet model that takes in a noisy sample and a timestep and returns sample shaped output."),ys.forEach(t),Rn=c(he),Oe=r(he,"P",{});var Pt=s(Oe);Jn=d(Pt,"This model inherits from "),io=r(Pt,"A",{href:!0});var ws=s(io);Zn=d(ws,"ModelMixin"),ws.forEach(t),er=d(Pt,`. Check the superclass documentation for the generic methods the library
implements for all the model (such as downloading or saving, etc.)`),Pt.forEach(t),or=c(he),ae=r(he,"DIV",{class:!0});var Vt=s(ae);m(Ce.$$.fragment,Vt),tr=c(Vt),Vo=r(Vt,"P",{});var Ds=s(Vo);nr=d(Ds,"r"),Ds.forEach(t),Vt.forEach(t),he.forEach(t),pt=c(e),I=r(e,"H2",{class:!0});var Lt=s(I);ie=r(Lt,"A",{id:!0,class:!0,href:!0});var ks=s(ie);Lo=r(ks,"SPAN",{});var Ms=s(Lo);m(qe.$$.fragment,Ms),Ms.forEach(t),ks.forEach(t),rr=c(Lt),Bo=r(Lt,"SPAN",{});var xs=s(Bo);sr=d(xs,"UNet2DConditionOutput"),xs.forEach(t),Lt.forEach(t),ft=c(e),Pe=r(e,"DIV",{class:!0});var Ts=s(Pe);m(Ve.$$.fragment,Ts),Ts.forEach(t),mt=c(e),z=r(e,"H2",{class:!0});var Bt=s(z);de=r(Bt,"A",{id:!0,class:!0,href:!0});var Es=s(de);Fo=r(Es,"SPAN",{});var Ns=s(Fo);m(Le.$$.fragment,Ns),Ns.forEach(t),Es.forEach(t),ar=c(Bt),Ko=r(Bt,"SPAN",{});var Us=s(Ko);ir=d(Us,"UNet2DConditionModel"),Us.forEach(t),Bt.forEach(t),ht=c(e),N=r(e,"DIV",{class:!0});var _e=s(N);m(Be.$$.fragment,_e),dr=c(_e),Qo=r(_e,"P",{});var As=s(Qo);lr=d(As,`UNet2DConditionModel is a conditional 2D UNet model that takes in a noisy sample, conditional state, and a timestep
and returns sample shaped output.`),As.forEach(t),cr=c(_e),Fe=r(_e,"P",{});var Ft=s(Fe);ur=d(Ft,"This model inherits from "),lo=r(Ft,"A",{href:!0});var Os=s(lo);pr=d(Os,"ModelMixin"),Os.forEach(t),fr=d(Ft,`. Check the superclass documentation for the generic methods the library
implements for all the model (such as downloading or saving, etc.)`),Ft.forEach(t),mr=c(_e),le=r(_e,"DIV",{class:!0});var Kt=s(le);m(Ke.$$.fragment,Kt),hr=c(Kt),Io=r(Kt,"P",{});var Cs=s(Io);_r=d(Cs,"r"),Cs.forEach(t),Kt.forEach(t),_e.forEach(t),_t=c(e),S=r(e,"H2",{class:!0});var Qt=s(S);ce=r(Qt,"A",{id:!0,class:!0,href:!0});var qs=s(ce);zo=r(qs,"SPAN",{});var Ps=s(zo);m(Qe.$$.fragment,Ps),Ps.forEach(t),qs.forEach(t),gr=c(Qt),So=r(Qt,"SPAN",{});var Vs=s(So);vr=d(Vs,"DecoderOutput"),Vs.forEach(t),Qt.forEach(t),gt=c(e),W=r(e,"DIV",{class:!0});var It=s(W);m(Ie.$$.fragment,It),br=c(It),Wo=r(It,"P",{});var Ls=s(Wo);$r=d(Ls,"Output of decoding method."),Ls.forEach(t),It.forEach(t),vt=c(e),X=r(e,"H2",{class:!0});var zt=s(X);ue=r(zt,"A",{id:!0,class:!0,href:!0});var Bs=s(ue);Xo=r(Bs,"SPAN",{});var Fs=s(Xo);m(ze.$$.fragment,Fs),Fs.forEach(t),Bs.forEach(t),yr=c(zt),Ho=r(zt,"SPAN",{});var Ks=s(Ho);wr=d(Ks,"VQEncoderOutput"),Ks.forEach(t),zt.forEach(t),bt=c(e),H=r(e,"DIV",{class:!0});var St=s(H);m(Se.$$.fragment,St),Dr=c(St),Yo=r(St,"P",{});var Qs=s(Yo);kr=d(Qs,"Output of VQModel encoding method."),Qs.forEach(t),St.forEach(t),$t=c(e),Y=r(e,"H2",{class:!0});var Wt=s(Y);pe=r(Wt,"A",{id:!0,class:!0,href:!0});var Is=s(pe);jo=r(Is,"SPAN",{});var zs=s(jo);m(We.$$.fragment,zs),zs.forEach(t),Is.forEach(t),Mr=c(Wt),Go=r(Wt,"SPAN",{});var Ss=s(Go);xr=d(Ss,"VQModel"),Ss.forEach(t),Wt.forEach(t),yt=c(e),U=r(e,"DIV",{class:!0});var ge=s(U);m(Xe.$$.fragment,ge),Tr=c(ge),Ro=r(ge,"P",{});var Ws=s(Ro);Er=d(Ws,`VQ-VAE model from the paper Neural Discrete Representation Learning by Aaron van den Oord, Oriol Vinyals and Koray
Kavukcuoglu.`),Ws.forEach(t),Nr=c(ge),He=r(ge,"P",{});var Xt=s(He);Ur=d(Xt,"This model inherits from "),co=r(Xt,"A",{href:!0});var Xs=s(co);Ar=d(Xs,"ModelMixin"),Xs.forEach(t),Or=d(Xt,`. Check the superclass documentation for the generic methods the library
implements for all the model (such as downloading or saving, etc.)`),Xt.forEach(t),Cr=c(ge),uo=r(ge,"DIV",{class:!0});var Hs=s(uo);m(Ye.$$.fragment,Hs),Hs.forEach(t),ge.forEach(t),wt=c(e),j=r(e,"H2",{class:!0});var Ht=s(j);fe=r(Ht,"A",{id:!0,class:!0,href:!0});var Ys=s(fe);Jo=r(Ys,"SPAN",{});var js=s(Jo);m(je.$$.fragment,js),js.forEach(t),Ys.forEach(t),qr=c(Ht),Zo=r(Ht,"SPAN",{});var Gs=s(Zo);Pr=d(Gs,"AutoencoderKLOutput"),Gs.forEach(t),Ht.forEach(t),Dt=c(e),G=r(e,"DIV",{class:!0});var Yt=s(G);m(Ge.$$.fragment,Yt),Vr=c(Yt),et=r(Yt,"P",{});var Rs=s(et);Lr=d(Rs,"Output of AutoencoderKL encoding method."),Rs.forEach(t),Yt.forEach(t),kt=c(e),R=r(e,"H2",{class:!0});var jt=s(R);me=r(jt,"A",{id:!0,class:!0,href:!0});var Js=s(me);ot=r(Js,"SPAN",{});var Zs=s(ot);m(Re.$$.fragment,Zs),Zs.forEach(t),Js.forEach(t),Br=c(jt),tt=r(jt,"SPAN",{});var ea=s(tt);Fr=d(ea,"AutoencoderKL"),ea.forEach(t),jt.forEach(t),Mt=c(e),A=r(e,"DIV",{class:!0});var ve=s(A);m(Je.$$.fragment,ve),Kr=c(ve),nt=r(ve,"P",{});var oa=s(nt);Qr=d(oa,`Variational Autoencoder (VAE) model with KL loss from the paper Auto-Encoding Variational Bayes by Diederik P. Kingma
and Max Welling.`),oa.forEach(t),Ir=c(ve),Ze=r(ve,"P",{});var Gt=s(Ze);zr=d(Gt,"This model inherits from "),po=r(Gt,"A",{href:!0});var ta=s(po);Sr=d(ta,"ModelMixin"),ta.forEach(t),Wr=d(Gt,`. Check the superclass documentation for the generic methods the library
implements for all the model (such as downloading or saving, etc.)`),Gt.forEach(t),Xr=c(ve),fo=r(ve,"DIV",{class:!0});var na=s(fo);m(eo.$$.fragment,na),na.forEach(t),ve.forEach(t),this.h()},h(){a(b,"name","hf:doc:metadata"),a(b,"content",JSON.stringify(fa)),a(D,"id","models"),a(D,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(D,"href","#models"),a($,"class","relative group"),a(Z,"id","diffusers.ModelMixin"),a(Z,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(Z,"href","#diffusers.ModelMixin"),a(B,"class","relative group"),a(so,"href","/docs/diffusers/pr_430/en/api/models#diffusers.ModelMixin"),a(ao,"href","/docs/diffusers/pr_430/en/api/models#diffusers.ModelMixin.save_pretrained"),a(w,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(te,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(ne,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(y,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(re,"id","diffusers.models.unet_2d.UNet2DOutput"),a(re,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(re,"href","#diffusers.models.unet_2d.UNet2DOutput"),a(K,"class","relative group"),a(Ee,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(se,"id","diffusers.UNet2DModel"),a(se,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(se,"href","#diffusers.UNet2DModel"),a(Q,"class","relative group"),a(io,"href","/docs/diffusers/pr_430/en/api/models#diffusers.ModelMixin"),a(ae,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(E,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(ie,"id","diffusers.models.unet_2d_condition.UNet2DConditionOutput"),a(ie,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(ie,"href","#diffusers.models.unet_2d_condition.UNet2DConditionOutput"),a(I,"class","relative group"),a(Pe,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(de,"id","diffusers.UNet2DConditionModel"),a(de,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(de,"href","#diffusers.UNet2DConditionModel"),a(z,"class","relative group"),a(lo,"href","/docs/diffusers/pr_430/en/api/models#diffusers.ModelMixin"),a(le,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(N,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(ce,"id","diffusers.models.vae.DecoderOutput"),a(ce,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(ce,"href","#diffusers.models.vae.DecoderOutput"),a(S,"class","relative group"),a(W,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(ue,"id","diffusers.models.vae.VQEncoderOutput"),a(ue,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(ue,"href","#diffusers.models.vae.VQEncoderOutput"),a(X,"class","relative group"),a(H,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(pe,"id","diffusers.VQModel"),a(pe,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(pe,"href","#diffusers.VQModel"),a(Y,"class","relative group"),a(co,"href","/docs/diffusers/pr_430/en/api/models#diffusers.ModelMixin"),a(uo,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(U,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(fe,"id","diffusers.models.vae.AutoencoderKLOutput"),a(fe,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(fe,"href","#diffusers.models.vae.AutoencoderKLOutput"),a(j,"class","relative group"),a(G,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(me,"id","diffusers.AutoencoderKL"),a(me,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(me,"href","#diffusers.AutoencoderKL"),a(R,"class","relative group"),a(po,"href","/docs/diffusers/pr_430/en/api/models#diffusers.ModelMixin"),a(fo,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),a(A,"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,u){o(document.head,b),p(e,O,u),p(e,$,u),o($,D),o(D,L),h(T,L,null),o($,q),o($,J),o(J,Rt),p(e,st,u),p(e,P,u),o(P,Jt),o(P,_o),o(_o,Zt),o(P,en),o(P,go),o(go,on),o(P,tn),p(e,at,u),p(e,B,u),o(B,Z),o(Z,vo),h(be,vo,null),o(B,nn),o(B,bo),o(bo,rn),p(e,it,u),p(e,y,u),h($e,y,null),o(y,sn),o(y,$o),o($o,an),o(y,dn),o(y,ro),o(ro,so),o(so,ln),o(ro,cn),o(y,un),o(y,yo),o(yo,V),o(V,wo),o(wo,pn),o(V,fn),o(V,Do),o(Do,mn),o(V,hn),o(V,ao),o(ao,_n),o(V,gn),o(y,vn),o(y,w),h(ye,w,null),o(w,bn),o(w,ko),o(ko,$n),o(w,yn),o(w,F),o(F,wn),o(F,Mo),o(Mo,Dn),o(F,kn),o(F,xo),o(xo,Mn),o(F,xn),o(w,Tn),o(w,we),o(we,En),o(we,To),o(To,Nn),o(we,Un),o(w,An),o(w,De),o(De,On),o(De,Eo),o(Eo,Cn),o(De,qn),o(w,Pn),h(ee,w,null),o(w,Vn),h(oe,w,null),o(y,Ln),o(y,te),h(ke,te,null),o(te,Bn),o(te,No),o(No,Fn),o(y,Kn),o(y,ne),h(Me,ne,null),o(ne,Qn),o(ne,xe),o(xe,In),o(xe,Uo),o(Uo,zn),o(xe,Sn),p(e,dt,u),p(e,K,u),o(K,re),o(re,Ao),h(Te,Ao,null),o(K,Wn),o(K,Oo),o(Oo,Xn),p(e,lt,u),p(e,Ee,u),h(Ne,Ee,null),p(e,ct,u),p(e,Q,u),o(Q,se),o(se,Co),h(Ue,Co,null),o(Q,Hn),o(Q,qo),o(qo,Yn),p(e,ut,u),p(e,E,u),h(Ae,E,null),o(E,jn),o(E,Po),o(Po,Gn),o(E,Rn),o(E,Oe),o(Oe,Jn),o(Oe,io),o(io,Zn),o(Oe,er),o(E,or),o(E,ae),h(Ce,ae,null),o(ae,tr),o(ae,Vo),o(Vo,nr),p(e,pt,u),p(e,I,u),o(I,ie),o(ie,Lo),h(qe,Lo,null),o(I,rr),o(I,Bo),o(Bo,sr),p(e,ft,u),p(e,Pe,u),h(Ve,Pe,null),p(e,mt,u),p(e,z,u),o(z,de),o(de,Fo),h(Le,Fo,null),o(z,ar),o(z,Ko),o(Ko,ir),p(e,ht,u),p(e,N,u),h(Be,N,null),o(N,dr),o(N,Qo),o(Qo,lr),o(N,cr),o(N,Fe),o(Fe,ur),o(Fe,lo),o(lo,pr),o(Fe,fr),o(N,mr),o(N,le),h(Ke,le,null),o(le,hr),o(le,Io),o(Io,_r),p(e,_t,u),p(e,S,u),o(S,ce),o(ce,zo),h(Qe,zo,null),o(S,gr),o(S,So),o(So,vr),p(e,gt,u),p(e,W,u),h(Ie,W,null),o(W,br),o(W,Wo),o(Wo,$r),p(e,vt,u),p(e,X,u),o(X,ue),o(ue,Xo),h(ze,Xo,null),o(X,yr),o(X,Ho),o(Ho,wr),p(e,bt,u),p(e,H,u),h(Se,H,null),o(H,Dr),o(H,Yo),o(Yo,kr),p(e,$t,u),p(e,Y,u),o(Y,pe),o(pe,jo),h(We,jo,null),o(Y,Mr),o(Y,Go),o(Go,xr),p(e,yt,u),p(e,U,u),h(Xe,U,null),o(U,Tr),o(U,Ro),o(Ro,Er),o(U,Nr),o(U,He),o(He,Ur),o(He,co),o(co,Ar),o(He,Or),o(U,Cr),o(U,uo),h(Ye,uo,null),p(e,wt,u),p(e,j,u),o(j,fe),o(fe,Jo),h(je,Jo,null),o(j,qr),o(j,Zo),o(Zo,Pr),p(e,Dt,u),p(e,G,u),h(Ge,G,null),o(G,Vr),o(G,et),o(et,Lr),p(e,kt,u),p(e,R,u),o(R,me),o(me,ot),h(Re,ot,null),o(R,Br),o(R,tt),o(tt,Fr),p(e,Mt,u),p(e,A,u),h(Je,A,null),o(A,Kr),o(A,nt),o(nt,Qr),o(A,Ir),o(A,Ze),o(Ze,zr),o(Ze,po),o(po,Sr),o(Ze,Wr),o(A,Xr),o(A,fo),h(eo,fo,null),xt=!0},p(e,[u]){const oo={};u&2&&(oo.$$scope={dirty:u,ctx:e}),ee.$set(oo);const rt={};u&2&&(rt.$$scope={dirty:u,ctx:e}),oe.$set(rt)},i(e){xt||(_(T.$$.fragment,e),_(be.$$.fragment,e),_($e.$$.fragment,e),_(ye.$$.fragment,e),_(ee.$$.fragment,e),_(oe.$$.fragment,e),_(ke.$$.fragment,e),_(Me.$$.fragment,e),_(Te.$$.fragment,e),_(Ne.$$.fragment,e),_(Ue.$$.fragment,e),_(Ae.$$.fragment,e),_(Ce.$$.fragment,e),_(qe.$$.fragment,e),_(Ve.$$.fragment,e),_(Le.$$.fragment,e),_(Be.$$.fragment,e),_(Ke.$$.fragment,e),_(Qe.$$.fragment,e),_(Ie.$$.fragment,e),_(ze.$$.fragment,e),_(Se.$$.fragment,e),_(We.$$.fragment,e),_(Xe.$$.fragment,e),_(Ye.$$.fragment,e),_(je.$$.fragment,e),_(Ge.$$.fragment,e),_(Re.$$.fragment,e),_(Je.$$.fragment,e),_(eo.$$.fragment,e),xt=!0)},o(e){g(T.$$.fragment,e),g(be.$$.fragment,e),g($e.$$.fragment,e),g(ye.$$.fragment,e),g(ee.$$.fragment,e),g(oe.$$.fragment,e),g(ke.$$.fragment,e),g(Me.$$.fragment,e),g(Te.$$.fragment,e),g(Ne.$$.fragment,e),g(Ue.$$.fragment,e),g(Ae.$$.fragment,e),g(Ce.$$.fragment,e),g(qe.$$.fragment,e),g(Ve.$$.fragment,e),g(Le.$$.fragment,e),g(Be.$$.fragment,e),g(Ke.$$.fragment,e),g(Qe.$$.fragment,e),g(Ie.$$.fragment,e),g(ze.$$.fragment,e),g(Se.$$.fragment,e),g(We.$$.fragment,e),g(Xe.$$.fragment,e),g(Ye.$$.fragment,e),g(je.$$.fragment,e),g(Ge.$$.fragment,e),g(Re.$$.fragment,e),g(Je.$$.fragment,e),g(eo.$$.fragment,e),xt=!1},d(e){t(b),e&&t(O),e&&t($),v(T),e&&t(st),e&&t(P),e&&t(at),e&&t(B),v(be),e&&t(it),e&&t(y),v($e),v(ye),v(ee),v(oe),v(ke),v(Me),e&&t(dt),e&&t(K),v(Te),e&&t(lt),e&&t(Ee),v(Ne),e&&t(ct),e&&t(Q),v(Ue),e&&t(ut),e&&t(E),v(Ae),v(Ce),e&&t(pt),e&&t(I),v(qe),e&&t(ft),e&&t(Pe),v(Ve),e&&t(mt),e&&t(z),v(Le),e&&t(ht),e&&t(N),v(Be),v(Ke),e&&t(_t),e&&t(S),v(Qe),e&&t(gt),e&&t(W),v(Ie),e&&t(vt),e&&t(X),v(ze),e&&t(bt),e&&t(H),v(Se),e&&t($t),e&&t(Y),v(We),e&&t(yt),e&&t(U),v(Xe),v(Ye),e&&t(wt),e&&t(j),v(je),e&&t(Dt),e&&t(G),v(Ge),e&&t(kt),e&&t(R),v(Re),e&&t(Mt),e&&t(A),v(Je),v(eo)}}}const fa={local:"models",sections:[{local:"diffusers.ModelMixin",title:"ModelMixin"},{local:"diffusers.models.unet_2d.UNet2DOutput",title:"UNet2DOutput"},{local:"diffusers.UNet2DModel",title:"UNet2DModel"},{local:"diffusers.models.unet_2d_condition.UNet2DConditionOutput",title:"UNet2DConditionOutput"},{local:"diffusers.UNet2DConditionModel",title:"UNet2DConditionModel"},{local:"diffusers.models.vae.DecoderOutput",title:"DecoderOutput"},{local:"diffusers.models.vae.VQEncoderOutput",title:"VQEncoderOutput"},{local:"diffusers.VQModel",title:"VQModel"},{local:"diffusers.models.vae.AutoencoderKLOutput",title:"AutoencoderKLOutput"},{local:"diffusers.AutoencoderKL",title:"AutoencoderKL"}],title:"Models"};function ma(no){return la(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class ba extends sa{constructor(b){super();aa(this,b,ma,pa,ia,{})}}export{ba as default,fa as metadata};
