import{S as di,i as ui,s as pi,e as o,k as f,w as W,t as s,M as hi,c as n,d as i,m as c,a,x as B,h as l,b as r,G as t,g as u,y as H,L as mi,q as R,o as U,B as J,v as gi}from"../../../chunks/vendor-hf-doc-builder.js";import{D as At}from"../../../chunks/Docstring-hf-doc-builder.js";import{I as Fe}from"../../../chunks/IconCopyLink-hf-doc-builder.js";function _i(Ct){let m,De,g,x,oe,q,We,ne,Be,xe,_,P,ae,A,He,re,Re,Pe,C,I,Ue,Je,Te,Y,Ye,Ve,Z,Ze,$e,T,je,z,Ke,Xe,Ee,v,V,se,L,et,le,tt,Qe,$,fe,b,ce,it,ot,de,nt,at,j,rt,st,ue,w,pe,M,lt,ft,he,me,ct,dt,K,ut,ke,y,E,ge,S,pt,_e,ht,qe,p,O,mt,ve,gt,_t,N,vt,X,bt,wt,yt,Q,G,Dt,be,xt,Pt,k,F,Tt,D,Vt,we,$t,Et,ye,Qt,kt,Ae;return q=new Fe({}),A=new Fe({}),L=new Fe({}),S=new Fe({}),O=new At({props:{name:"class diffusers.VQDiffusionPipeline",anchor:"diffusers.VQDiffusionPipeline",parameters:[{name:"vqvae",val:": VQModel"},{name:"text_encoder",val:": CLIPTextModel"},{name:"tokenizer",val:": CLIPTokenizer"},{name:"transformer",val:": Transformer2DModel"},{name:"scheduler",val:": VQDiffusionScheduler"},{name:"learned_classifier_free_sampling_embeddings",val:": LearnedClassifierFreeSamplingEmbeddings"}],parametersDescription:[{anchor:"diffusers.VQDiffusionPipeline.vqvae",description:`<strong>vqvae</strong> (<a href="/docs/diffusers/main/en/api/models#diffusers.VQModel">VQModel</a>) &#x2014;
Vector Quantized Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent
representations.`,name:"vqvae"},{anchor:"diffusers.VQDiffusionPipeline.text_encoder",description:`<strong>text_encoder</strong> (<code>CLIPTextModel</code>) &#x2014;
Frozen text-encoder. VQ Diffusion uses the text portion of
<a href="https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel" rel="nofollow">CLIP</a>, specifically
the <a href="https://huggingface.co/openai/clip-vit-base-patch32" rel="nofollow">clip-vit-base-patch32</a> variant.`,name:"text_encoder"},{anchor:"diffusers.VQDiffusionPipeline.tokenizer",description:`<strong>tokenizer</strong> (<code>CLIPTokenizer</code>) &#x2014;
Tokenizer of class
<a href="https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer" rel="nofollow">CLIPTokenizer</a>.`,name:"tokenizer"},{anchor:"diffusers.VQDiffusionPipeline.transformer",description:`<strong>transformer</strong> (<a href="/docs/diffusers/main/en/api/models#diffusers.Transformer2DModel">Transformer2DModel</a>) &#x2014;
Conditional transformer to denoise the encoded image latents.`,name:"transformer"},{anchor:"diffusers.VQDiffusionPipeline.scheduler",description:`<strong>scheduler</strong> (<a href="/docs/diffusers/main/en/api/schedulers/vq_diffusion#diffusers.VQDiffusionScheduler">VQDiffusionScheduler</a>) &#x2014;
A scheduler to be used in combination with <code>transformer</code> to denoise the encoded image latents.`,name:"scheduler"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/vq_diffusion/pipeline_vq_diffusion.py#L52"}}),G=new At({props:{name:"__call__",anchor:"diffusers.VQDiffusionPipeline.__call__",parameters:[{name:"prompt",val:": typing.Union[str, typing.List[str]]"},{name:"num_inference_steps",val:": int = 100"},{name:"guidance_scale",val:": float = 5.0"},{name:"truncation_rate",val:": float = 1.0"},{name:"num_images_per_prompt",val:": int = 1"},{name:"generator",val:": typing.Union[torch._C.Generator, typing.List[torch._C.Generator], NoneType] = None"},{name:"latents",val:": typing.Optional[torch.FloatTensor] = None"},{name:"output_type",val:": typing.Optional[str] = 'pil'"},{name:"return_dict",val:": bool = True"},{name:"callback",val:": typing.Union[typing.Callable[[int, int, torch.FloatTensor], NoneType], NoneType] = None"},{name:"callback_steps",val:": int = 1"}],parametersDescription:[{anchor:"diffusers.VQDiffusionPipeline.__call__.prompt",description:`<strong>prompt</strong> (<code>str</code> or <code>List[str]</code>) &#x2014;
The prompt or prompts to guide the image generation.`,name:"prompt"},{anchor:"diffusers.VQDiffusionPipeline.__call__.num_inference_steps",description:`<strong>num_inference_steps</strong> (<code>int</code>, <em>optional</em>, defaults to 100) &#x2014;
The number of denoising steps. More denoising steps usually lead to a higher quality image at the
expense of slower inference.`,name:"num_inference_steps"},{anchor:"diffusers.VQDiffusionPipeline.__call__.guidance_scale",description:`<strong>guidance_scale</strong> (<code>float</code>, <em>optional</em>, defaults to 7.5) &#x2014;
Guidance scale as defined in <a href="https://arxiv.org/abs/2207.12598" rel="nofollow">Classifier-Free Diffusion Guidance</a>.
<code>guidance_scale</code> is defined as <code>w</code> of equation 2. of <a href="https://arxiv.org/pdf/2205.11487.pdf" rel="nofollow">Imagen
Paper</a>. Guidance scale is enabled by setting <code>guidance_scale &gt; 1</code>. Higher guidance scale encourages to generate images that are closely linked to the text <code>prompt</code>,
usually at the expense of lower image quality.`,name:"guidance_scale"},{anchor:"diffusers.VQDiffusionPipeline.__call__.truncation_rate",description:`<strong>truncation_rate</strong> (<code>float</code>, <em>optional</em>, defaults to 1.0 (equivalent to no truncation)) &#x2014;
Used to &#x201C;truncate&#x201D; the predicted classes for x_0 such that the cumulative probability for a pixel is at
most <code>truncation_rate</code>. The lowest probabilities that would increase the cumulative probability above
<code>truncation_rate</code> are set to zero.`,name:"truncation_rate"},{anchor:"diffusers.VQDiffusionPipeline.__call__.num_images_per_prompt",description:`<strong>num_images_per_prompt</strong> (<code>int</code>, <em>optional</em>, defaults to 1) &#x2014;
The number of images to generate per prompt.`,name:"num_images_per_prompt"},{anchor:"diffusers.VQDiffusionPipeline.__call__.generator",description:`<strong>generator</strong> (<code>torch.Generator</code>, <em>optional</em>) &#x2014;
One or a list of <a href="https://pytorch.org/docs/stable/generated/torch.Generator.html" rel="nofollow">torch generator(s)</a>
to make generation deterministic.`,name:"generator"},{anchor:"diffusers.VQDiffusionPipeline.__call__.latents",description:`<strong>latents</strong> (<code>torch.FloatTensor</code> of shape (batch), <em>optional</em>) &#x2014;
Pre-generated noisy latents to be used as inputs for image generation. Must be valid embedding indices.
Can be used to tweak the same generation with different prompts. If not provided, a latents tensor will
be generated of completely masked latent pixels.`,name:"latents"},{anchor:"diffusers.VQDiffusionPipeline.__call__.output_type",description:`<strong>output_type</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;pil&quot;</code>) &#x2014;
The output format of the generated image. Choose between
<a href="https://pillow.readthedocs.io/en/stable/" rel="nofollow">PIL</a>: <code>PIL.Image.Image</code> or <code>np.array</code>.`,name:"output_type"},{anchor:"diffusers.VQDiffusionPipeline.__call__.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/diffusion_pipeline#diffusers.ImagePipelineOutput">ImagePipelineOutput</a> instead of a plain tuple.`,name:"return_dict"},{anchor:"diffusers.VQDiffusionPipeline.__call__.callback",description:`<strong>callback</strong> (<code>Callable</code>, <em>optional</em>) &#x2014;
A function that will be called every <code>callback_steps</code> steps during inference. The function will be
called with the following arguments: <code>callback(step: int, timestep: int, latents: torch.FloatTensor)</code>.`,name:"callback"},{anchor:"diffusers.VQDiffusionPipeline.__call__.callback_steps",description:`<strong>callback_steps</strong> (<code>int</code>, <em>optional</em>, defaults to 1) &#x2014;
The frequency at which the <code>callback</code> function will be called. If not specified, the callback will be
called at every step.`,name:"callback_steps"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/vq_diffusion/pipeline_vq_diffusion.py#L166",returnDescription:`
<p><code>~ pipeline_utils.ImagePipelineOutput </code> if <code>return_dict</code>
is True, otherwise a \`tuple. When returning a tuple, the first element is a list with the generated images.</p>
`,returnType:`
<p><a
  href="/docs/diffusers/main/en/api/diffusion_pipeline#diffusers.ImagePipelineOutput"
>ImagePipelineOutput</a> or <code>tuple</code></p>
`}}),F=new At({props:{name:"truncate",anchor:"diffusers.VQDiffusionPipeline.truncate",parameters:[{name:"log_p_x_0",val:": FloatTensor"},{name:"truncation_rate",val:": float"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/vq_diffusion/pipeline_vq_diffusion.py#L310"}}),{c(){m=o("meta"),De=f(),g=o("h1"),x=o("a"),oe=o("span"),W(q.$$.fragment),We=f(),ne=o("span"),Be=s("VQDiffusion"),xe=f(),_=o("h2"),P=o("a"),ae=o("span"),W(A.$$.fragment),He=f(),re=o("span"),Re=s("Overview"),Pe=f(),C=o("p"),I=o("a"),Ue=s("Vector Quantized Diffusion Model for Text-to-Image Synthesis"),Je=s(" by Shuyang Gu, Dong Chen, Jianmin Bao, Fang Wen, Bo Zhang, Dongdong Chen, Lu Yuan, Baining Guo"),Te=f(),Y=o("p"),Ye=s("The abstract of the paper is the following:"),Ve=f(),Z=o("p"),Ze=s("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."),$e=f(),T=o("p"),je=s("The original codebase can be found "),z=o("a"),Ke=s("here"),Xe=s("."),Ee=f(),v=o("h2"),V=o("a"),se=o("span"),W(L.$$.fragment),et=f(),le=o("span"),tt=s("Available Pipelines:"),Qe=f(),$=o("table"),fe=o("thead"),b=o("tr"),ce=o("th"),it=s("Pipeline"),ot=f(),de=o("th"),nt=s("Tasks"),at=f(),j=o("th"),rt=s("Colab"),st=f(),ue=o("tbody"),w=o("tr"),pe=o("td"),M=o("a"),lt=s("pipeline_vq_diffusion.py"),ft=f(),he=o("td"),me=o("em"),ct=s("Text-to-Image Generation"),dt=f(),K=o("td"),ut=s("-"),ke=f(),y=o("h2"),E=o("a"),ge=o("span"),W(S.$$.fragment),pt=f(),_e=o("span"),ht=s("VQDiffusionPipeline"),qe=f(),p=o("div"),W(O.$$.fragment),mt=f(),ve=o("p"),gt=s("Pipeline for text-to-image generation using VQ Diffusion"),_t=f(),N=o("p"),vt=s("This model inherits from "),X=o("a"),bt=s("DiffusionPipeline"),wt=s(`. Check the superclass documentation for the generic methods the
library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)`),yt=f(),Q=o("div"),W(G.$$.fragment),Dt=f(),be=o("p"),xt=s("Function invoked when calling the pipeline for generation."),Pt=f(),k=o("div"),W(F.$$.fragment),Tt=f(),D=o("p"),Vt=s("Truncates log_p_x_0 such that for each column vector, the total cumulative probability is "),we=o("code"),$t=s("truncation_rate"),Et=s(` The
lowest probabilities that would increase the cumulative probability above `),ye=o("code"),Qt=s("truncation_rate"),kt=s(" are set to zero."),this.h()},l(e){const d=hi('[data-svelte="svelte-1phssyn"]',document.head);m=n(d,"META",{name:!0,content:!0}),d.forEach(i),De=c(e),g=n(e,"H1",{class:!0});var Ce=a(g);x=n(Ce,"A",{id:!0,class:!0,href:!0});var It=a(x);oe=n(It,"SPAN",{});var zt=a(oe);B(q.$$.fragment,zt),zt.forEach(i),It.forEach(i),We=c(Ce),ne=n(Ce,"SPAN",{});var Lt=a(ne);Be=l(Lt,"VQDiffusion"),Lt.forEach(i),Ce.forEach(i),xe=c(e),_=n(e,"H2",{class:!0});var Ie=a(_);P=n(Ie,"A",{id:!0,class:!0,href:!0});var Mt=a(P);ae=n(Mt,"SPAN",{});var St=a(ae);B(A.$$.fragment,St),St.forEach(i),Mt.forEach(i),He=c(Ie),re=n(Ie,"SPAN",{});var Ot=a(re);Re=l(Ot,"Overview"),Ot.forEach(i),Ie.forEach(i),Pe=c(e),C=n(e,"P",{});var qt=a(C);I=n(qt,"A",{href:!0,rel:!0});var Nt=a(I);Ue=l(Nt,"Vector Quantized Diffusion Model for Text-to-Image Synthesis"),Nt.forEach(i),Je=l(qt," by Shuyang Gu, Dong Chen, Jianmin Bao, Fang Wen, Bo Zhang, Dongdong Chen, Lu Yuan, Baining Guo"),qt.forEach(i),Te=c(e),Y=n(e,"P",{});var Gt=a(Y);Ye=l(Gt,"The abstract of the paper is the following:"),Gt.forEach(i),Ve=c(e),Z=n(e,"P",{});var Ft=a(Z);Ze=l(Ft,"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."),Ft.forEach(i),$e=c(e),T=n(e,"P",{});var ze=a(T);je=l(ze,"The original codebase can be found "),z=n(ze,"A",{href:!0,rel:!0});var Wt=a(z);Ke=l(Wt,"here"),Wt.forEach(i),Xe=l(ze,"."),ze.forEach(i),Ee=c(e),v=n(e,"H2",{class:!0});var Le=a(v);V=n(Le,"A",{id:!0,class:!0,href:!0});var Bt=a(V);se=n(Bt,"SPAN",{});var Ht=a(se);B(L.$$.fragment,Ht),Ht.forEach(i),Bt.forEach(i),et=c(Le),le=n(Le,"SPAN",{});var Rt=a(le);tt=l(Rt,"Available Pipelines:"),Rt.forEach(i),Le.forEach(i),Qe=c(e),$=n(e,"TABLE",{});var Me=a($);fe=n(Me,"THEAD",{});var Ut=a(fe);b=n(Ut,"TR",{});var ee=a(b);ce=n(ee,"TH",{});var Jt=a(ce);it=l(Jt,"Pipeline"),Jt.forEach(i),ot=c(ee),de=n(ee,"TH",{});var Yt=a(de);nt=l(Yt,"Tasks"),Yt.forEach(i),at=c(ee),j=n(ee,"TH",{align:!0});var Zt=a(j);rt=l(Zt,"Colab"),Zt.forEach(i),ee.forEach(i),Ut.forEach(i),st=c(Me),ue=n(Me,"TBODY",{});var jt=a(ue);w=n(jt,"TR",{});var te=a(w);pe=n(te,"TD",{});var Kt=a(pe);M=n(Kt,"A",{href:!0,rel:!0});var Xt=a(M);lt=l(Xt,"pipeline_vq_diffusion.py"),Xt.forEach(i),Kt.forEach(i),ft=c(te),he=n(te,"TD",{});var ei=a(he);me=n(ei,"EM",{});var ti=a(me);ct=l(ti,"Text-to-Image Generation"),ti.forEach(i),ei.forEach(i),dt=c(te),K=n(te,"TD",{align:!0});var ii=a(K);ut=l(ii,"-"),ii.forEach(i),te.forEach(i),jt.forEach(i),Me.forEach(i),ke=c(e),y=n(e,"H2",{class:!0});var Se=a(y);E=n(Se,"A",{id:!0,class:!0,href:!0});var oi=a(E);ge=n(oi,"SPAN",{});var ni=a(ge);B(S.$$.fragment,ni),ni.forEach(i),oi.forEach(i),pt=c(Se),_e=n(Se,"SPAN",{});var ai=a(_e);ht=l(ai,"VQDiffusionPipeline"),ai.forEach(i),Se.forEach(i),qe=c(e),p=n(e,"DIV",{class:!0});var h=a(p);B(O.$$.fragment,h),mt=c(h),ve=n(h,"P",{});var ri=a(ve);gt=l(ri,"Pipeline for text-to-image generation using VQ Diffusion"),ri.forEach(i),_t=c(h),N=n(h,"P",{});var Oe=a(N);vt=l(Oe,"This model inherits from "),X=n(Oe,"A",{href:!0});var si=a(X);bt=l(si,"DiffusionPipeline"),si.forEach(i),wt=l(Oe,`. Check the superclass documentation for the generic methods the
library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)`),Oe.forEach(i),yt=c(h),Q=n(h,"DIV",{class:!0});var Ne=a(Q);B(G.$$.fragment,Ne),Dt=c(Ne),be=n(Ne,"P",{});var li=a(be);xt=l(li,"Function invoked when calling the pipeline for generation."),li.forEach(i),Ne.forEach(i),Pt=c(h),k=n(h,"DIV",{class:!0});var Ge=a(k);B(F.$$.fragment,Ge),Tt=c(Ge),D=n(Ge,"P",{});var ie=a(D);Vt=l(ie,"Truncates log_p_x_0 such that for each column vector, the total cumulative probability is "),we=n(ie,"CODE",{});var fi=a(we);$t=l(fi,"truncation_rate"),fi.forEach(i),Et=l(ie,` The
lowest probabilities that would increase the cumulative probability above `),ye=n(ie,"CODE",{});var ci=a(ye);Qt=l(ci,"truncation_rate"),ci.forEach(i),kt=l(ie," are set to zero."),ie.forEach(i),Ge.forEach(i),h.forEach(i),this.h()},h(){r(m,"name","hf:doc:metadata"),r(m,"content",JSON.stringify(vi)),r(x,"id","vqdiffusion"),r(x,"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"),r(x,"href","#vqdiffusion"),r(g,"class","relative group"),r(P,"id","overview"),r(P,"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"),r(P,"href","#overview"),r(_,"class","relative group"),r(I,"href","https://arxiv.org/abs/2111.14822"),r(I,"rel","nofollow"),r(z,"href","https://github.com/microsoft/VQ-Diffusion"),r(z,"rel","nofollow"),r(V,"id","available-pipelines"),r(V,"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"),r(V,"href","#available-pipelines"),r(v,"class","relative group"),r(j,"align","center"),r(M,"href","https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/vq_diffusion/pipeline_vq_diffusion.py"),r(M,"rel","nofollow"),r(K,"align","center"),r(E,"id","diffusers.VQDiffusionPipeline"),r(E,"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"),r(E,"href","#diffusers.VQDiffusionPipeline"),r(y,"class","relative group"),r(X,"href","/docs/diffusers/main/en/api/diffusion_pipeline#diffusers.DiffusionPipeline"),r(Q,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),r(k,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),r(p,"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,d){t(document.head,m),u(e,De,d),u(e,g,d),t(g,x),t(x,oe),H(q,oe,null),t(g,We),t(g,ne),t(ne,Be),u(e,xe,d),u(e,_,d),t(_,P),t(P,ae),H(A,ae,null),t(_,He),t(_,re),t(re,Re),u(e,Pe,d),u(e,C,d),t(C,I),t(I,Ue),t(C,Je),u(e,Te,d),u(e,Y,d),t(Y,Ye),u(e,Ve,d),u(e,Z,d),t(Z,Ze),u(e,$e,d),u(e,T,d),t(T,je),t(T,z),t(z,Ke),t(T,Xe),u(e,Ee,d),u(e,v,d),t(v,V),t(V,se),H(L,se,null),t(v,et),t(v,le),t(le,tt),u(e,Qe,d),u(e,$,d),t($,fe),t(fe,b),t(b,ce),t(ce,it),t(b,ot),t(b,de),t(de,nt),t(b,at),t(b,j),t(j,rt),t($,st),t($,ue),t(ue,w),t(w,pe),t(pe,M),t(M,lt),t(w,ft),t(w,he),t(he,me),t(me,ct),t(w,dt),t(w,K),t(K,ut),u(e,ke,d),u(e,y,d),t(y,E),t(E,ge),H(S,ge,null),t(y,pt),t(y,_e),t(_e,ht),u(e,qe,d),u(e,p,d),H(O,p,null),t(p,mt),t(p,ve),t(ve,gt),t(p,_t),t(p,N),t(N,vt),t(N,X),t(X,bt),t(N,wt),t(p,yt),t(p,Q),H(G,Q,null),t(Q,Dt),t(Q,be),t(be,xt),t(p,Pt),t(p,k),H(F,k,null),t(k,Tt),t(k,D),t(D,Vt),t(D,we),t(we,$t),t(D,Et),t(D,ye),t(ye,Qt),t(D,kt),Ae=!0},p:mi,i(e){Ae||(R(q.$$.fragment,e),R(A.$$.fragment,e),R(L.$$.fragment,e),R(S.$$.fragment,e),R(O.$$.fragment,e),R(G.$$.fragment,e),R(F.$$.fragment,e),Ae=!0)},o(e){U(q.$$.fragment,e),U(A.$$.fragment,e),U(L.$$.fragment,e),U(S.$$.fragment,e),U(O.$$.fragment,e),U(G.$$.fragment,e),U(F.$$.fragment,e),Ae=!1},d(e){i(m),e&&i(De),e&&i(g),J(q),e&&i(xe),e&&i(_),J(A),e&&i(Pe),e&&i(C),e&&i(Te),e&&i(Y),e&&i(Ve),e&&i(Z),e&&i($e),e&&i(T),e&&i(Ee),e&&i(v),J(L),e&&i(Qe),e&&i($),e&&i(ke),e&&i(y),J(S),e&&i(qe),e&&i(p),J(O),J(G),J(F)}}}const vi={local:"vqdiffusion",sections:[{local:"overview",title:"Overview"},{local:"available-pipelines",title:"Available Pipelines:"},{local:"diffusers.VQDiffusionPipeline",title:"VQDiffusionPipeline"}],title:"VQDiffusion"};function bi(Ct){return gi(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class xi extends di{constructor(m){super();ui(this,m,bi,_i,pi,{})}}export{xi as default,vi as metadata};
