import{s as Ae,o as De,n as Se}from"../chunks/scheduler.182ea377.js";import{S as Ve,i as qe,g as l,s as a,r as _,A as Le,h as c,f as t,c as i,j as $,u as g,x,k as Q,y as n,a as d,v as M,d as T,t as w,w as C}from"../chunks/index.1ea56653.js";import{H as ye,g as ke}from"../chunks/Heading.71ac6e9f.js";import{D as W}from"../chunks/Docstring.59aaf0cd.js";import{C as Ee}from"../chunks/CodeBlock.82c2494b.js";import{E as ze}from"../chunks/ExampleCodeBlock.95ae1d71.js";function He(K){let u,A="Calculates the log probabilities for the predicted classes of the image at timestep <code>t-1</code>:",y,p,m;return p=new Ee({props:{code:"cCh4XyU3QnQtMSU3RCUyMCU3QyUyMHhfdCklMjAlM0QlMjBzdW0oJTIwcSh4X3QlMjAlN0MlMjB4XyU3QnQtMSU3RCklMjAqJTIwcSh4XyU3QnQtMSU3RCUyMCU3QyUyMHhfMCklMjAqJTIwcCh4XzApJTIwJTJGJTIwcSh4X3QlMjAlN0MlMjB4XzApJTIwKQ==",highlighted:'p(<span class="hljs-keyword">x</span><span class="hljs-number">_</span>{t-<span class="hljs-number">1</span>} | x_t) = sum( <span class="hljs-string">q(x_t | x_{t-1})</span> * <span class="hljs-string">q(x_{t-1} | x_0)</span> * p(x_<span class="hljs-number">0</span>) / <span class="hljs-string">q(x_t | x_0)</span> )',wrap:!1}}),{c(){u=l("p"),u.innerHTML=A,y=a(),_(p.$$.fragment)},l(o){u=c(o,"P",{"data-svelte-h":!0}),x(u)!=="svelte-zou50j"&&(u.innerHTML=A),y=i(o),g(p.$$.fragment,o)},m(o,h){d(o,u,h),d(o,y,h),M(p,o,h),m=!0},p:Se,i(o){m||(T(p.$$.fragment,o),m=!0)},o(o){w(p.$$.fragment,o),m=!1},d(o){o&&(t(u),t(y)),C(p,o)}}}function Xe(K){let u,A,y,p,m,o,h,xe='<code>VQDiffusionScheduler</code> converts the transformer model’s output into a sample for the unnoised image at the previous diffusion timestep. It was introduced in <a href="https://huggingface.co/papers/2111.14822" rel="nofollow">Vector Quantized Diffusion Model for Text-to-Image Synthesis</a> by Shuyang Gu, Dong Chen, Jianmin Bao, Fang Wen, Bo Zhang, Dongdong Chen, Lu Yuan, Baining Guo.',Y,D,ve="The abstract from the paper is:",Z,S,Je="<em>We present the vector quantized diffusion (VQ-Diffusion) model for text-to-image generation. This method is based on a vector quantized variational autoencoder (VQ-VAE) whose latent space is modeled by a conditional variant of the recently developed Denoising Diffusion Probabilistic Model (DDPM). We find that this latent-space method is well-suited for text-to-image generation tasks because it not only eliminates the unidirectional bias with existing methods but also allows us to incorporate a mask-and-replace diffusion strategy to avoid the accumulation of errors, which is a serious problem with existing methods. Our experiments show that the VQ-Diffusion produces significantly better text-to-image generation results when compared with conventional autoregressive (AR) models with similar numbers of parameters. Compared with previous GAN-based text-to-image methods, our VQ-Diffusion can handle more complex scenes and improve the synthesized image quality by a large margin. Finally, we show that the image generation computation in our method can be made highly efficient by reparameterization. With traditional AR methods, the text-to-image generation time increases linearly with the output image resolution and hence is quite time consuming even for normal size images. The VQ-Diffusion allows us to achieve a better trade-off between quality and speed. Our experiments indicate that the VQ-Diffusion model with the reparameterization is fifteen times faster than traditional AR methods while achieving a better image quality.</em>",ee,V,te,r,q,ue,P,Ie="A scheduler for vector quantized diffusion.",fe,B,Ue=`This model inherits from <a href="/docs/diffusers/main/en/api/schedulers/overview#diffusers.SchedulerMixin">SchedulerMixin</a> and <a href="/docs/diffusers/main/en/api/configuration#diffusers.ConfigMixin">ConfigMixin</a>. Check the superclass documentation for the generic
methods the library implements for all schedulers such as loading and saving.`,pe,J,L,me,F,je=`Calculates the log probabilities of the rows from the (cumulative or non-cumulative) transition matrix for each
latent pixel in <code>x_t</code>.`,he,I,k,_e,U,ge,j,E,Me,N,be="Sets the discrete timesteps used for the diffusion chain (to be run before inference).",Te,b,z,we,O,$e=`Predict the sample from the previous timestep by the reverse transition distribution. See
<a href="/docs/diffusers/main/en/api/schedulers/vq_diffusion#diffusers.VQDiffusionScheduler.q_posterior">q_posterior()</a> for more details about how the distribution is computer.`,se,H,ne,v,X,Ce,R,Qe="Output class for the scheduler’s step function output.",ae,G,ie;return m=new ye({props:{title:"VQDiffusionScheduler",local:"vqdiffusionscheduler",headingTag:"h1"}}),V=new ye({props:{title:"VQDiffusionScheduler",local:"diffusers.VQDiffusionScheduler",headingTag:"h2"}}),q=new W({props:{name:"class diffusers.VQDiffusionScheduler",anchor:"diffusers.VQDiffusionScheduler",parameters:[{name:"num_vec_classes",val:": int"},{name:"num_train_timesteps",val:": int = 100"},{name:"alpha_cum_start",val:": float = 0.99999"},{name:"alpha_cum_end",val:": float = 9e-06"},{name:"gamma_cum_start",val:": float = 9e-06"},{name:"gamma_cum_end",val:": float = 0.99999"}],parametersDescription:[{anchor:"diffusers.VQDiffusionScheduler.num_vec_classes",description:`<strong>num_vec_classes</strong> (<code>int</code>) &#x2014;
The number of classes of the vector embeddings of the latent pixels. Includes the class for the masked
latent pixel.`,name:"num_vec_classes"},{anchor:"diffusers.VQDiffusionScheduler.num_train_timesteps",description:`<strong>num_train_timesteps</strong> (<code>int</code>, defaults to 100) &#x2014;
The number of diffusion steps to train the model.`,name:"num_train_timesteps"},{anchor:"diffusers.VQDiffusionScheduler.alpha_cum_start",description:`<strong>alpha_cum_start</strong> (<code>float</code>, defaults to 0.99999) &#x2014;
The starting cumulative alpha value.`,name:"alpha_cum_start"},{anchor:"diffusers.VQDiffusionScheduler.alpha_cum_end",description:`<strong>alpha_cum_end</strong> (<code>float</code>, defaults to 0.00009) &#x2014;
The ending cumulative alpha value.`,name:"alpha_cum_end"},{anchor:"diffusers.VQDiffusionScheduler.gamma_cum_start",description:`<strong>gamma_cum_start</strong> (<code>float</code>, defaults to 0.00009) &#x2014;
The starting cumulative gamma value.`,name:"gamma_cum_start"},{anchor:"diffusers.VQDiffusionScheduler.gamma_cum_end",description:`<strong>gamma_cum_end</strong> (<code>float</code>, defaults to 0.99999) &#x2014;
The ending cumulative gamma value.`,name:"gamma_cum_end"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_vq_diffusion.py#L106"}}),L=new W({props:{name:"log_Q_t_transitioning_to_known_class",anchor:"diffusers.VQDiffusionScheduler.log_Q_t_transitioning_to_known_class",parameters:[{name:"t",val:": torch.int32"},{name:"x_t",val:": LongTensor"},{name:"log_onehot_x_t",val:": FloatTensor"},{name:"cumulative",val:": bool"}],parametersDescription:[{anchor:"diffusers.VQDiffusionScheduler.log_Q_t_transitioning_to_known_class.t",description:`<strong>t</strong> (<code>torch.Long</code>) &#x2014;
The timestep that determines which transition matrix is used.`,name:"t"},{anchor:"diffusers.VQDiffusionScheduler.log_Q_t_transitioning_to_known_class.x_t",description:`<strong>x_t</strong> (<code>torch.LongTensor</code> of shape <code>(batch size, num latent pixels)</code>) &#x2014;
The classes of each latent pixel at time <code>t</code>.`,name:"x_t"},{anchor:"diffusers.VQDiffusionScheduler.log_Q_t_transitioning_to_known_class.log_onehot_x_t",description:`<strong>log_onehot_x_t</strong> (<code>torch.FloatTensor</code> of shape <code>(batch size, num classes, num latent pixels)</code>) &#x2014;
The log one-hot vectors of <code>x_t</code>.`,name:"log_onehot_x_t"},{anchor:"diffusers.VQDiffusionScheduler.log_Q_t_transitioning_to_known_class.cumulative",description:`<strong>cumulative</strong> (<code>bool</code>) &#x2014;
If cumulative is <code>False</code>, the single step transition matrix <code>t-1</code>-&gt;<code>t</code> is used. If cumulative is
<code>True</code>, the cumulative transition matrix <code>0</code>-&gt;<code>t</code> is used.`,name:"cumulative"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_vq_diffusion.py#L356",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>Each <em>column</em> of the returned matrix is a <em>row</em> of log probabilities of the complete probability
transition matrix.</p>
<p>When non cumulative, returns <code>self.num_classes - 1</code> rows because the initial latent pixel cannot be
masked.</p>
<p>Where:</p>
<ul>
<li><code>q_n</code> is the probability distribution for the forward process of the <code>n</code>th latent pixel.</li>
<li>C_0 is a class of a latent pixel embedding</li>
<li>C_k is the class of the masked latent pixel</li>
</ul>
<p>non-cumulative result (omitting logarithms):</p>

	<CodeBlock 
		code={\`cV8wKHhfdCUyMCU3QyUyMHhfJTdCdC0xJTdEJTIwJTNEJTIwQ18wKSUyMC4uLiUyMHFfbih4X3QlMjAlN0MlMjB4XyU3QnQtMSU3RCUyMCUzRCUyMENfMCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAuJTIwJTIwJTIwJTIwJTIwJTIwLiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC4lMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC4lMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLiUyMCUyMCUyMCUyMCUyMC4lMEFxXzAoeF90JTIwJTdDJTIweF8lN0J0LTElN0QlMjAlM0QlMjBDX2spJTIwLi4uJTIwcV9uKHhfdCUyMCU3QyUyMHhfJTdCdC0xJTdEJTIwJTNEJTIwQ19rKQ==\`}
		highlighted={\`q<span class="hljs-constructor">_0(<span class="hljs-params">x_t</span> | <span class="hljs-params">x_</span>{<span class="hljs-params">t</span>-1\\} = C_0)</span><span class="hljs-operator"> ... </span>q<span class="hljs-constructor">_n(<span class="hljs-params">x_t</span> | <span class="hljs-params">x_</span>{<span class="hljs-params">t</span>-1\\} = C_0)</span>
          .      .                     .
          .               .            .
          .                      .     .
q<span class="hljs-constructor">_0(<span class="hljs-params">x_t</span> | <span class="hljs-params">x_</span>{<span class="hljs-params">t</span>-1\\} = C_k)</span><span class="hljs-operator"> ... </span>q<span class="hljs-constructor">_n(<span class="hljs-params">x_t</span> | <span class="hljs-params">x_</span>{<span class="hljs-params">t</span>-1\\} = C_k)</span>\`}
		wrap={false}
	/>
<p>cumulative result (omitting logarithms):</p>

	<CodeBlock 
		code={\`cV8wX2N1bXVsYXRpdmUoeF90JTIwJTdDJTIweF8wJTIwJTNEJTIwQ18wKSUyMCUyMCUyMCUyMC4uLiUyMCUyMHFfbl9jdW11bGF0aXZlKHhfdCUyMCU3QyUyMHhfMCUyMCUzRCUyMENfMCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC4lMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC4lMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC4lMEFxXzBfY3VtdWxhdGl2ZSh4X3QlMjAlN0MlMjB4XzAlMjAlM0QlMjBDXyU3QmstMSU3RCklMjAuLi4lMjBxX25fY3VtdWxhdGl2ZSh4X3QlMjAlN0MlMjB4XzAlMjAlM0QlMjBDXyU3QmstMSU3RCk=\`}
		highlighted={\`q<span class="hljs-constructor">_0_cumulative(<span class="hljs-params">x_t</span> | <span class="hljs-params">x_0</span> = C_0)</span><span class="hljs-operator">    ...  </span>q<span class="hljs-constructor">_n_cumulative(<span class="hljs-params">x_t</span> | <span class="hljs-params">x_0</span> = C_0)</span>
          .               .                          .
          .                        .                 .
          .                               .          .
q<span class="hljs-constructor">_0_cumulative(<span class="hljs-params">x_t</span> | <span class="hljs-params">x_0</span> = C_{<span class="hljs-params">k</span>-1\\})</span><span class="hljs-operator"> ... </span>q<span class="hljs-constructor">_n_cumulative(<span class="hljs-params">x_t</span> | <span class="hljs-params">x_0</span> = C_{<span class="hljs-params">k</span>-1\\})</span>\`}
		wrap={false}
	/>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>torch.FloatTensor</code> of shape <code>(batch size, num classes - 1, num latent pixels)</code></p>
`}}),k=new W({props:{name:"q_posterior",anchor:"diffusers.VQDiffusionScheduler.q_posterior",parameters:[{name:"log_p_x_0",val:""},{name:"x_t",val:""},{name:"t",val:""}],parametersDescription:[{anchor:"diffusers.VQDiffusionScheduler.q_posterior.log_p_x_0",description:`<strong>log_p_x_0</strong> (<code>torch.FloatTensor</code> of shape <code>(batch size, num classes - 1, num latent pixels)</code>) &#x2014;
The log probabilities for the predicted classes of the initial latent pixels. Does not include a
prediction for the masked class as the initial unnoised image cannot be masked.`,name:"log_p_x_0"},{anchor:"diffusers.VQDiffusionScheduler.q_posterior.x_t",description:`<strong>x_t</strong> (<code>torch.LongTensor</code> of shape <code>(batch size, num latent pixels)</code>) &#x2014;
The classes of each latent pixel at time <code>t</code>.`,name:"x_t"},{anchor:"diffusers.VQDiffusionScheduler.q_posterior.t",description:`<strong>t</strong> (<code>torch.Long</code>) &#x2014;
The timestep that determines which transition matrix is used.`,name:"t"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_vq_diffusion.py#L245",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>The log probabilities for the predicted classes of the image at timestep <code>t-1</code>.</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>torch.FloatTensor</code> of shape <code>(batch size, num classes, num latent pixels)</code></p>
`}}),U=new ze({props:{anchor:"diffusers.VQDiffusionScheduler.q_posterior.example",$$slots:{default:[He]},$$scope:{ctx:K}}}),E=new W({props:{name:"set_timesteps",anchor:"diffusers.VQDiffusionScheduler.set_timesteps",parameters:[{name:"num_inference_steps",val:": int"},{name:"device",val:": typing.Union[str, torch.device] = None"}],parametersDescription:[{anchor:"diffusers.VQDiffusionScheduler.set_timesteps.num_inference_steps",description:`<strong>num_inference_steps</strong> (<code>int</code>) &#x2014;
The number of diffusion steps used when generating samples with a pre-trained model.`,name:"num_inference_steps"},{anchor:"diffusers.VQDiffusionScheduler.set_timesteps.device",description:`<strong>device</strong> (<code>str</code> or <code>torch.device</code>, <em>optional</em>) &#x2014;
The device to which the timesteps and diffusion process parameters (alpha, beta, gamma) should be moved
to.`,name:"device"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_vq_diffusion.py#L178"}}),z=new W({props:{name:"step",anchor:"diffusers.VQDiffusionScheduler.step",parameters:[{name:"model_output",val:": FloatTensor"},{name:"timestep",val:": torch.int64"},{name:"sample",val:": LongTensor"},{name:"generator",val:": typing.Optional[torch._C.Generator] = None"},{name:"return_dict",val:": bool = True"}],parametersDescription:[{anchor:"diffusers.VQDiffusionScheduler.step.t",description:`<strong>t</strong> (<code>torch.long</code>) &#x2014;
The timestep that determines which transition matrices are used.`,name:"t"},{anchor:"diffusers.VQDiffusionScheduler.step.x_t",description:`<strong>x_t</strong> (<code>torch.LongTensor</code> of shape <code>(batch size, num latent pixels)</code>) &#x2014;
The classes of each latent pixel at time <code>t</code>.`,name:"x_t"},{anchor:"diffusers.VQDiffusionScheduler.step.generator",description:`<strong>generator</strong> (<code>torch.Generator</code>, or <code>None</code>) &#x2014;
A random number generator for the noise applied to <code>p(x_{t-1} | x_t)</code> before it is sampled from.`,name:"generator"},{anchor:"diffusers.VQDiffusionScheduler.step.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/main/en/api/schedulers/vq_diffusion#diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput">VQDiffusionSchedulerOutput</a> or
<code>tuple</code>.`,name:"return_dict"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_vq_diffusion.py#L200",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>If return_dict is <code>True</code>, <a
  href="/docs/diffusers/main/en/api/schedulers/vq_diffusion#diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput"
>VQDiffusionSchedulerOutput</a> is
returned, otherwise a tuple is returned where the first element is the sample tensor.</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><a
  href="/docs/diffusers/main/en/api/schedulers/vq_diffusion#diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput"
>VQDiffusionSchedulerOutput</a> or <code>tuple</code></p>
`}}),H=new ye({props:{title:"VQDiffusionSchedulerOutput",local:"diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput",headingTag:"h2"}}),X=new W({props:{name:"class diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput",anchor:"diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput",parameters:[{name:"prev_sample",val:": LongTensor"}],parametersDescription:[{anchor:"diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput.prev_sample",description:`<strong>prev_sample</strong> (<code>torch.LongTensor</code> of shape <code>(batch size, num latent pixels)</code>) &#x2014;
Computed sample x_{t-1} of previous timestep. <code>prev_sample</code> should be used as next model input in the
denoising loop.`,name:"prev_sample"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_vq_diffusion.py#L28"}}),{c(){u=l("meta"),A=a(),y=l("p"),p=a(),_(m.$$.fragment),o=a(),h=l("p"),h.innerHTML=xe,Y=a(),D=l("p"),D.textContent=ve,Z=a(),S=l("p"),S.innerHTML=Je,ee=a(),_(V.$$.fragment),te=a(),r=l("div"),_(q.$$.fragment),ue=a(),P=l("p"),P.textContent=Ie,fe=a(),B=l("p"),B.innerHTML=Ue,pe=a(),J=l("div"),_(L.$$.fragment),me=a(),F=l("p"),F.innerHTML=je,he=a(),I=l("div"),_(k.$$.fragment),_e=a(),_(U.$$.fragment),ge=a(),j=l("div"),_(E.$$.fragment),Me=a(),N=l("p"),N.textContent=be,Te=a(),b=l("div"),_(z.$$.fragment),we=a(),O=l("p"),O.innerHTML=$e,se=a(),_(H.$$.fragment),ne=a(),v=l("div"),_(X.$$.fragment),Ce=a(),R=l("p"),R.textContent=Qe,ae=a(),G=l("p"),this.h()},l(e){const s=Le("svelte-u9bgzb",document.head);u=c(s,"META",{name:!0,content:!0}),s.forEach(t),A=i(e),y=c(e,"P",{}),$(y).forEach(t),p=i(e),g(m.$$.fragment,e),o=i(e),h=c(e,"P",{"data-svelte-h":!0}),x(h)!=="svelte-cmslrh"&&(h.innerHTML=xe),Y=i(e),D=c(e,"P",{"data-svelte-h":!0}),x(D)!=="svelte-1cwsb16"&&(D.textContent=ve),Z=i(e),S=c(e,"P",{"data-svelte-h":!0}),x(S)!=="svelte-688iix"&&(S.innerHTML=Je),ee=i(e),g(V.$$.fragment,e),te=i(e),r=c(e,"DIV",{class:!0});var f=$(r);g(q.$$.fragment,f),ue=i(f),P=c(f,"P",{"data-svelte-h":!0}),x(P)!=="svelte-ku5obc"&&(P.textContent=Ie),fe=i(f),B=c(f,"P",{"data-svelte-h":!0}),x(B)!=="svelte-linuuh"&&(B.innerHTML=Ue),pe=i(f),J=c(f,"DIV",{class:!0});var oe=$(J);g(L.$$.fragment,oe),me=i(oe),F=c(oe,"P",{"data-svelte-h":!0}),x(F)!=="svelte-tm79t4"&&(F.innerHTML=je),oe.forEach(t),he=i(f),I=c(f,"DIV",{class:!0});var re=$(I);g(k.$$.fragment,re),_e=i(re),g(U.$$.fragment,re),re.forEach(t),ge=i(f),j=c(f,"DIV",{class:!0});var le=$(j);g(E.$$.fragment,le),Me=i(le),N=c(le,"P",{"data-svelte-h":!0}),x(N)!=="svelte-1vzm9q"&&(N.textContent=be),le.forEach(t),Te=i(f),b=c(f,"DIV",{class:!0});var ce=$(b);g(z.$$.fragment,ce),we=i(ce),O=c(ce,"P",{"data-svelte-h":!0}),x(O)!=="svelte-1j5il0n"&&(O.innerHTML=$e),ce.forEach(t),f.forEach(t),se=i(e),g(H.$$.fragment,e),ne=i(e),v=c(e,"DIV",{class:!0});var de=$(v);g(X.$$.fragment,de),Ce=i(de),R=c(de,"P",{"data-svelte-h":!0}),x(R)!=="svelte-7snghh"&&(R.textContent=Qe),de.forEach(t),ae=i(e),G=c(e,"P",{}),$(G).forEach(t),this.h()},h(){Q(u,"name","hf:doc:metadata"),Q(u,"content",Pe),Q(J,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),Q(I,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),Q(j,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),Q(b,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),Q(r,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),Q(v,"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,s){n(document.head,u),d(e,A,s),d(e,y,s),d(e,p,s),M(m,e,s),d(e,o,s),d(e,h,s),d(e,Y,s),d(e,D,s),d(e,Z,s),d(e,S,s),d(e,ee,s),M(V,e,s),d(e,te,s),d(e,r,s),M(q,r,null),n(r,ue),n(r,P),n(r,fe),n(r,B),n(r,pe),n(r,J),M(L,J,null),n(J,me),n(J,F),n(r,he),n(r,I),M(k,I,null),n(I,_e),M(U,I,null),n(r,ge),n(r,j),M(E,j,null),n(j,Me),n(j,N),n(r,Te),n(r,b),M(z,b,null),n(b,we),n(b,O),d(e,se,s),M(H,e,s),d(e,ne,s),d(e,v,s),M(X,v,null),n(v,Ce),n(v,R),d(e,ae,s),d(e,G,s),ie=!0},p(e,[s]){const f={};s&2&&(f.$$scope={dirty:s,ctx:e}),U.$set(f)},i(e){ie||(T(m.$$.fragment,e),T(V.$$.fragment,e),T(q.$$.fragment,e),T(L.$$.fragment,e),T(k.$$.fragment,e),T(U.$$.fragment,e),T(E.$$.fragment,e),T(z.$$.fragment,e),T(H.$$.fragment,e),T(X.$$.fragment,e),ie=!0)},o(e){w(m.$$.fragment,e),w(V.$$.fragment,e),w(q.$$.fragment,e),w(L.$$.fragment,e),w(k.$$.fragment,e),w(U.$$.fragment,e),w(E.$$.fragment,e),w(z.$$.fragment,e),w(H.$$.fragment,e),w(X.$$.fragment,e),ie=!1},d(e){e&&(t(A),t(y),t(p),t(o),t(h),t(Y),t(D),t(Z),t(S),t(ee),t(te),t(r),t(se),t(ne),t(v),t(ae),t(G)),t(u),C(m,e),C(V,e),C(q),C(L),C(k),C(U),C(E),C(z),C(H,e),C(X)}}}const Pe='{"title":"VQDiffusionScheduler","local":"vqdiffusionscheduler","sections":[{"title":"VQDiffusionScheduler","local":"diffusers.VQDiffusionScheduler","sections":[],"depth":2},{"title":"VQDiffusionSchedulerOutput","local":"diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput","sections":[],"depth":2}],"depth":1}';function Be(K){return De(()=>{new URLSearchParams(window.location.search).get("fw"),window.hfDocGoto=ke}),[]}class Ke extends Ve{constructor(u){super(),qe(this,u,Be,Xe,Ae,{})}}export{Ke as component};
