import{s as Se,o as Ve,n as qe}from"../chunks/scheduler.8c3d61f6.js";import{S as Le,i as ke,g as c,s as n,r as m,A as Ee,h as d,f as t,c as i,j as $,u as _,x as y,k as Q,y as a,a as o,v as g,d as M,t as T,w}from"../chunks/index.da70eac4.js";import{D as G}from"../chunks/Docstring.6b390b9a.js";import{C as ze}from"../chunks/CodeBlock.00a903b3.js";import{E as He}from"../chunks/ExampleCodeBlock.db12be95.js";import{H as ve,E as Xe}from"../chunks/EditOnGithub.1e64e623.js";function Pe(Y){let u,A="Calculates the log probabilities for the predicted classes of the image at timestep <code>t-1</code>:",C,p,h;return p=new ze({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=c("p"),u.innerHTML=A,C=n(),m(p.$$.fragment)},l(r){u=d(r,"P",{"data-svelte-h":!0}),y(u)!=="svelte-zou50j"&&(u.innerHTML=A),C=i(r),_(p.$$.fragment,r)},m(r,x){o(r,u,x),o(r,C,x),g(p,r,x),h=!0},p:qe,i(r){h||(M(p.$$.fragment,r),h=!0)},o(r){T(p.$$.fragment,r),h=!1},d(r){r&&(t(u),t(C)),w(p,r)}}}function Be(Y){let u,A,C,p,h,r,x,Je='<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.',Z,D,Ie="The abstract from the paper is:",ee,S,Ue="<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>",te,V,se,l,q,pe,B,be="A scheduler for vector quantized diffusion.",he,O,je=`This model inherits from <a href="/docs/diffusers/pr_7067/en/api/schedulers/overview#diffusers.SchedulerMixin">SchedulerMixin</a> and <a href="/docs/diffusers/pr_7067/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.`,me,J,L,_e,N,$e=`Calculates the log probabilities of the rows from the (cumulative or non-cumulative) transition matrix for each
latent pixel in <code>x_t</code>.`,ge,I,k,Me,U,Te,b,E,we,R,Qe="Sets the discrete timesteps used for the diffusion chain (to be run before inference).",xe,j,z,Ce,F,Ae=`Predict the sample from the previous timestep by the reverse transition distribution. See
<a href="/docs/diffusers/pr_7067/en/api/schedulers/vq_diffusion#diffusers.VQDiffusionScheduler.q_posterior">q_posterior()</a> for more details about how the distribution is computer.`,ne,H,ie,v,X,ye,W,De="Output class for the scheduler’s step function output.",ae,P,oe,K,re;return h=new ve({props:{title:"VQDiffusionScheduler",local:"vqdiffusionscheduler",headingTag:"h1"}}),V=new ve({props:{title:"VQDiffusionScheduler",local:"diffusers.VQDiffusionScheduler",headingTag:"h2"}}),q=new G({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/vr_7067/src/diffusers/schedulers/scheduling_vq_diffusion.py#L106"}}),L=new G({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:": Tensor"},{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.Tensor</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/vr_7067/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.Tensor</code> of shape <code>(batch size, num classes - 1, num latent pixels)</code></p>
`}}),k=new G({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.Tensor</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/vr_7067/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.Tensor</code> of shape <code>(batch size, num classes, num latent pixels)</code></p>
`}}),U=new He({props:{anchor:"diffusers.VQDiffusionScheduler.q_posterior.example",$$slots:{default:[Pe]},$$scope:{ctx:Y}}}),E=new G({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/vr_7067/src/diffusers/schedulers/scheduling_vq_diffusion.py#L178"}}),z=new G({props:{name:"step",anchor:"diffusers.VQDiffusionScheduler.step",parameters:[{name:"model_output",val:": Tensor"},{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.log_p_x_0",description:`<strong>log_p_x_0</strong> &#x2014; (<code>torch.Tensor</code> of shape <code>(batch size, num classes - 1, num latent pixels)</code>):
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.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/pr_7067/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/vr_7067/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/pr_7067/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/pr_7067/en/api/schedulers/vq_diffusion#diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput"
>VQDiffusionSchedulerOutput</a> or <code>tuple</code></p>
`}}),H=new ve({props:{title:"VQDiffusionSchedulerOutput",local:"diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput",headingTag:"h2"}}),X=new G({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/vr_7067/src/diffusers/schedulers/scheduling_vq_diffusion.py#L27"}}),P=new Xe({props:{source:"https://github.com/huggingface/diffusers/blob/main/docs/source/en/api/schedulers/vq_diffusion.md"}}),{c(){u=c("meta"),A=n(),C=c("p"),p=n(),m(h.$$.fragment),r=n(),x=c("p"),x.innerHTML=Je,Z=n(),D=c("p"),D.textContent=Ie,ee=n(),S=c("p"),S.innerHTML=Ue,te=n(),m(V.$$.fragment),se=n(),l=c("div"),m(q.$$.fragment),pe=n(),B=c("p"),B.textContent=be,he=n(),O=c("p"),O.innerHTML=je,me=n(),J=c("div"),m(L.$$.fragment),_e=n(),N=c("p"),N.innerHTML=$e,ge=n(),I=c("div"),m(k.$$.fragment),Me=n(),m(U.$$.fragment),Te=n(),b=c("div"),m(E.$$.fragment),we=n(),R=c("p"),R.textContent=Qe,xe=n(),j=c("div"),m(z.$$.fragment),Ce=n(),F=c("p"),F.innerHTML=Ae,ne=n(),m(H.$$.fragment),ie=n(),v=c("div"),m(X.$$.fragment),ye=n(),W=c("p"),W.textContent=De,ae=n(),m(P.$$.fragment),oe=n(),K=c("p"),this.h()},l(e){const s=Ee("svelte-u9bgzb",document.head);u=d(s,"META",{name:!0,content:!0}),s.forEach(t),A=i(e),C=d(e,"P",{}),$(C).forEach(t),p=i(e),_(h.$$.fragment,e),r=i(e),x=d(e,"P",{"data-svelte-h":!0}),y(x)!=="svelte-cmslrh"&&(x.innerHTML=Je),Z=i(e),D=d(e,"P",{"data-svelte-h":!0}),y(D)!=="svelte-1cwsb16"&&(D.textContent=Ie),ee=i(e),S=d(e,"P",{"data-svelte-h":!0}),y(S)!=="svelte-688iix"&&(S.innerHTML=Ue),te=i(e),_(V.$$.fragment,e),se=i(e),l=d(e,"DIV",{class:!0});var f=$(l);_(q.$$.fragment,f),pe=i(f),B=d(f,"P",{"data-svelte-h":!0}),y(B)!=="svelte-ku5obc"&&(B.textContent=be),he=i(f),O=d(f,"P",{"data-svelte-h":!0}),y(O)!=="svelte-jf7cxd"&&(O.innerHTML=je),me=i(f),J=d(f,"DIV",{class:!0});var le=$(J);_(L.$$.fragment,le),_e=i(le),N=d(le,"P",{"data-svelte-h":!0}),y(N)!=="svelte-tm79t4"&&(N.innerHTML=$e),le.forEach(t),ge=i(f),I=d(f,"DIV",{class:!0});var ce=$(I);_(k.$$.fragment,ce),Me=i(ce),_(U.$$.fragment,ce),ce.forEach(t),Te=i(f),b=d(f,"DIV",{class:!0});var de=$(b);_(E.$$.fragment,de),we=i(de),R=d(de,"P",{"data-svelte-h":!0}),y(R)!=="svelte-1vzm9q"&&(R.textContent=Qe),de.forEach(t),xe=i(f),j=d(f,"DIV",{class:!0});var ue=$(j);_(z.$$.fragment,ue),Ce=i(ue),F=d(ue,"P",{"data-svelte-h":!0}),y(F)!=="svelte-lffby1"&&(F.innerHTML=Ae),ue.forEach(t),f.forEach(t),ne=i(e),_(H.$$.fragment,e),ie=i(e),v=d(e,"DIV",{class:!0});var fe=$(v);_(X.$$.fragment,fe),ye=i(fe),W=d(fe,"P",{"data-svelte-h":!0}),y(W)!=="svelte-7snghh"&&(W.textContent=De),fe.forEach(t),ae=i(e),_(P.$$.fragment,e),oe=i(e),K=d(e,"P",{}),$(K).forEach(t),this.h()},h(){Q(u,"name","hf:doc:metadata"),Q(u,"content",Oe),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(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(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(l,"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){a(document.head,u),o(e,A,s),o(e,C,s),o(e,p,s),g(h,e,s),o(e,r,s),o(e,x,s),o(e,Z,s),o(e,D,s),o(e,ee,s),o(e,S,s),o(e,te,s),g(V,e,s),o(e,se,s),o(e,l,s),g(q,l,null),a(l,pe),a(l,B),a(l,he),a(l,O),a(l,me),a(l,J),g(L,J,null),a(J,_e),a(J,N),a(l,ge),a(l,I),g(k,I,null),a(I,Me),g(U,I,null),a(l,Te),a(l,b),g(E,b,null),a(b,we),a(b,R),a(l,xe),a(l,j),g(z,j,null),a(j,Ce),a(j,F),o(e,ne,s),g(H,e,s),o(e,ie,s),o(e,v,s),g(X,v,null),a(v,ye),a(v,W),o(e,ae,s),g(P,e,s),o(e,oe,s),o(e,K,s),re=!0},p(e,[s]){const f={};s&2&&(f.$$scope={dirty:s,ctx:e}),U.$set(f)},i(e){re||(M(h.$$.fragment,e),M(V.$$.fragment,e),M(q.$$.fragment,e),M(L.$$.fragment,e),M(k.$$.fragment,e),M(U.$$.fragment,e),M(E.$$.fragment,e),M(z.$$.fragment,e),M(H.$$.fragment,e),M(X.$$.fragment,e),M(P.$$.fragment,e),re=!0)},o(e){T(h.$$.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),T(P.$$.fragment,e),re=!1},d(e){e&&(t(A),t(C),t(p),t(r),t(x),t(Z),t(D),t(ee),t(S),t(te),t(se),t(l),t(ne),t(ie),t(v),t(ae),t(oe),t(K)),t(u),w(h,e),w(V,e),w(q),w(L),w(k),w(U),w(E),w(z),w(H,e),w(X),w(P,e)}}}const Oe='{"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 Ne(Y){return Ve(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Ze extends Le{constructor(u){super(),ke(this,u,Ne,Be,Se,{})}}export{Ze as component};
