import{s as qe,o as Le,n as ke}from"../chunks/scheduler.53228c21.js";import{S as Ee,i as ze,e as c,s as n,c as p,h as He,a as d,d as t,b as i,f as $,g as m,j as y,k as Q,l as a,m as o,n as h,t as _,o as g,p as M}from"../chunks/index.100fac89.js";import{C as Xe}from"../chunks/CopyLLMTxtMenu.999d3d86.js";import{D as K}from"../chunks/Docstring.46d0934e.js";import{C as Pe}from"../chunks/CodeBlock.d30a6509.js";import{E as Be}from"../chunks/ExampleCodeBlock.9c663ca1.js";import{H as Ie,E as Oe}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.d27ae4df.js";function Ne(Z){let u,A="Calculates the log probabilities for the predicted classes of the image at timestep <code>t-1</code>:",C,T,w;return T=new Pe({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(),p(T.$$.fragment)},l(r){u=d(r,"P",{"data-svelte-h":!0}),y(u)!=="svelte-zou50j"&&(u.innerHTML=A),C=i(r),m(T.$$.fragment,r)},m(r,x){o(r,u,x),o(r,C,x),h(T,r,x),w=!0},p:ke,i(r){w||(_(T.$$.fragment,r),w=!0)},o(r){g(T.$$.fragment,r),w=!1},d(r){r&&(t(u),t(C)),M(T,r)}}}function Re(Z){let u,A,C,T,w,r,x,ee,D,Ue='<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.',te,S,be="The abstract from the paper is:",se,V,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>",ne,q,ie,l,L,he,O,$e="A scheduler for vector quantized diffusion.",_e,N,Qe=`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.`,ge,J,k,Me,R,Ae=`Calculates the log probabilities of the rows from the (cumulative or non-cumulative) transition matrix for each
latent pixel in <code>x_t</code>.`,Te,I,E,we,U,xe,b,z,Ce,F,De="Sets the discrete timesteps used for the diffusion chain (to be run before inference).",ye,j,H,ve,W,Se=`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.`,ae,X,oe,v,P,Je,G,Ve="Output class for the scheduler’s step function output.",re,B,le,Y,ce;return w=new Xe({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),x=new Ie({props:{title:"VQDiffusionScheduler",local:"vqdiffusionscheduler",headingTag:"h1"}}),q=new Ie({props:{title:"VQDiffusionScheduler",local:"diffusers.VQDiffusionScheduler",headingTag:"h2"}}),L=new K({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"}}),k=new K({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/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.Tensor</code> of shape <code>(batch size, num classes - 1, num latent pixels)</code></p>
`}}),E=new K({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/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.Tensor</code> of shape <code>(batch size, num classes, num latent pixels)</code></p>
`}}),U=new Be({props:{anchor:"diffusers.VQDiffusionScheduler.q_posterior.example",$$slots:{default:[Ne]},$$scope:{ctx:Z}}}),z=new K({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"}}),H=new K({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/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>
`}}),X=new Ie({props:{title:"VQDiffusionSchedulerOutput",local:"diffusers.schedulers.scheduling_vq_diffusion.VQDiffusionSchedulerOutput",headingTag:"h2"}}),P=new K({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"}}),B=new Oe({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"),T=n(),p(w.$$.fragment),r=n(),p(x.$$.fragment),ee=n(),D=c("p"),D.innerHTML=Ue,te=n(),S=c("p"),S.textContent=be,se=n(),V=c("p"),V.innerHTML=je,ne=n(),p(q.$$.fragment),ie=n(),l=c("div"),p(L.$$.fragment),he=n(),O=c("p"),O.textContent=$e,_e=n(),N=c("p"),N.innerHTML=Qe,ge=n(),J=c("div"),p(k.$$.fragment),Me=n(),R=c("p"),R.innerHTML=Ae,Te=n(),I=c("div"),p(E.$$.fragment),we=n(),p(U.$$.fragment),xe=n(),b=c("div"),p(z.$$.fragment),Ce=n(),F=c("p"),F.textContent=De,ye=n(),j=c("div"),p(H.$$.fragment),ve=n(),W=c("p"),W.innerHTML=Se,ae=n(),p(X.$$.fragment),oe=n(),v=c("div"),p(P.$$.fragment),Je=n(),G=c("p"),G.textContent=Ve,re=n(),p(B.$$.fragment),le=n(),Y=c("p"),this.h()},l(e){const s=He("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),T=i(e),m(w.$$.fragment,e),r=i(e),m(x.$$.fragment,e),ee=i(e),D=d(e,"P",{"data-svelte-h":!0}),y(D)!=="svelte-cmslrh"&&(D.innerHTML=Ue),te=i(e),S=d(e,"P",{"data-svelte-h":!0}),y(S)!=="svelte-1cwsb16"&&(S.textContent=be),se=i(e),V=d(e,"P",{"data-svelte-h":!0}),y(V)!=="svelte-688iix"&&(V.innerHTML=je),ne=i(e),m(q.$$.fragment,e),ie=i(e),l=d(e,"DIV",{class:!0});var f=$(l);m(L.$$.fragment,f),he=i(f),O=d(f,"P",{"data-svelte-h":!0}),y(O)!=="svelte-ku5obc"&&(O.textContent=$e),_e=i(f),N=d(f,"P",{"data-svelte-h":!0}),y(N)!=="svelte-linuuh"&&(N.innerHTML=Qe),ge=i(f),J=d(f,"DIV",{class:!0});var de=$(J);m(k.$$.fragment,de),Me=i(de),R=d(de,"P",{"data-svelte-h":!0}),y(R)!=="svelte-tm79t4"&&(R.innerHTML=Ae),de.forEach(t),Te=i(f),I=d(f,"DIV",{class:!0});var ue=$(I);m(E.$$.fragment,ue),we=i(ue),m(U.$$.fragment,ue),ue.forEach(t),xe=i(f),b=d(f,"DIV",{class:!0});var fe=$(b);m(z.$$.fragment,fe),Ce=i(fe),F=d(fe,"P",{"data-svelte-h":!0}),y(F)!=="svelte-1vzm9q"&&(F.textContent=De),fe.forEach(t),ye=i(f),j=d(f,"DIV",{class:!0});var pe=$(j);m(H.$$.fragment,pe),ve=i(pe),W=d(pe,"P",{"data-svelte-h":!0}),y(W)!=="svelte-1j5il0n"&&(W.innerHTML=Se),pe.forEach(t),f.forEach(t),ae=i(e),m(X.$$.fragment,e),oe=i(e),v=d(e,"DIV",{class:!0});var me=$(v);m(P.$$.fragment,me),Je=i(me),G=d(me,"P",{"data-svelte-h":!0}),y(G)!=="svelte-7snghh"&&(G.textContent=Ve),me.forEach(t),re=i(e),m(B.$$.fragment,e),le=i(e),Y=d(e,"P",{}),$(Y).forEach(t),this.h()},h(){Q(u,"name","hf:doc:metadata"),Q(u,"content",Fe),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,T,s),h(w,e,s),o(e,r,s),h(x,e,s),o(e,ee,s),o(e,D,s),o(e,te,s),o(e,S,s),o(e,se,s),o(e,V,s),o(e,ne,s),h(q,e,s),o(e,ie,s),o(e,l,s),h(L,l,null),a(l,he),a(l,O),a(l,_e),a(l,N),a(l,ge),a(l,J),h(k,J,null),a(J,Me),a(J,R),a(l,Te),a(l,I),h(E,I,null),a(I,we),h(U,I,null),a(l,xe),a(l,b),h(z,b,null),a(b,Ce),a(b,F),a(l,ye),a(l,j),h(H,j,null),a(j,ve),a(j,W),o(e,ae,s),h(X,e,s),o(e,oe,s),o(e,v,s),h(P,v,null),a(v,Je),a(v,G),o(e,re,s),h(B,e,s),o(e,le,s),o(e,Y,s),ce=!0},p(e,[s]){const f={};s&2&&(f.$$scope={dirty:s,ctx:e}),U.$set(f)},i(e){ce||(_(w.$$.fragment,e),_(x.$$.fragment,e),_(q.$$.fragment,e),_(L.$$.fragment,e),_(k.$$.fragment,e),_(E.$$.fragment,e),_(U.$$.fragment,e),_(z.$$.fragment,e),_(H.$$.fragment,e),_(X.$$.fragment,e),_(P.$$.fragment,e),_(B.$$.fragment,e),ce=!0)},o(e){g(w.$$.fragment,e),g(x.$$.fragment,e),g(q.$$.fragment,e),g(L.$$.fragment,e),g(k.$$.fragment,e),g(E.$$.fragment,e),g(U.$$.fragment,e),g(z.$$.fragment,e),g(H.$$.fragment,e),g(X.$$.fragment,e),g(P.$$.fragment,e),g(B.$$.fragment,e),ce=!1},d(e){e&&(t(A),t(C),t(T),t(r),t(ee),t(D),t(te),t(S),t(se),t(V),t(ne),t(ie),t(l),t(ae),t(oe),t(v),t(re),t(le),t(Y)),t(u),M(w,e),M(x,e),M(q,e),M(L),M(k),M(E),M(U),M(z),M(H),M(X,e),M(P),M(B,e)}}}const Fe='{"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 We(Z){return Le(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class nt extends Ee{constructor(u){super(),ze(this,u,We,Re,qe,{})}}export{nt as component};
