import{S as F,i as K,s as Q,e as a,k as x,w as V,t as f,M as W,c as s,d as t,m as $,a as p,x as Z,h as c,b as d,G as i,g as b,y as ee,L as te,q as ie,o as ne,B as ae,v as se}from"../../chunks/vendor-hf-doc-builder.js";import{I as oe}from"../../chunks/IconCopyLink-hf-doc-builder.js";function le(B){let o,P,l,u,g,m,C,k,L,S,n,N,v,q,X,y,O,M,w,T,I,D,_,Y,E;return m=new oe({}),{c(){o=a("meta"),P=x(),l=a("h1"),u=a("a"),g=a("span"),V(m.$$.fragment),C=x(),k=a("span"),L=f("Overview"),S=x(),n=a("p"),N=f("A pipeline is an end-to-end class that provides a quick and easy way to use a diffusion system for inference by bundling independently trained models and schedulers together. Certain combinations of models and schedulers define specific pipeline types, like "),v=a("a"),q=f("StableDiffusionXLPipeline"),X=f(" or "),y=a("a"),O=f("StableDiffusionControlNetPipeline"),M=f(", with specific capabilities. All pipeline types inherit from the base "),w=a("a"),T=f("DiffusionPipeline"),I=f(" class; pass it any checkpoint, and it\u2019ll automatically detect the pipeline type and load the necessary components."),D=x(),_=a("p"),Y=f("This section introduces you to some of the more complex pipelines like Stable Diffusion XL, ControlNet, and DiffEdit, which require additional inputs. You\u2019ll also learn how to use a distilled version of the Stable Diffusion model to speed up inference, how to control randomness on your hardware when generating images, and how to create a community pipeline for a custom task like generating images from speech."),this.h()},l(e){const r=W('[data-svelte="svelte-1phssyn"]',document.head);o=s(r,"META",{name:!0,content:!0}),r.forEach(t),P=$(e),l=s(e,"H1",{class:!0});var A=p(l);u=s(A,"A",{id:!0,class:!0,href:!0});var G=p(u);g=s(G,"SPAN",{});var H=p(g);Z(m.$$.fragment,H),H.forEach(t),G.forEach(t),C=$(A),k=s(A,"SPAN",{});var J=p(k);L=c(J,"Overview"),J.forEach(t),A.forEach(t),S=$(e),n=s(e,"P",{});var h=p(n);N=c(h,"A pipeline is an end-to-end class that provides a quick and easy way to use a diffusion system for inference by bundling independently trained models and schedulers together. Certain combinations of models and schedulers define specific pipeline types, like "),v=s(h,"A",{href:!0});var R=p(v);q=c(R,"StableDiffusionXLPipeline"),R.forEach(t),X=c(h," or "),y=s(h,"A",{href:!0});var U=p(y);O=c(U,"StableDiffusionControlNetPipeline"),U.forEach(t),M=c(h,", with specific capabilities. All pipeline types inherit from the base "),w=s(h,"A",{href:!0});var j=p(w);T=c(j,"DiffusionPipeline"),j.forEach(t),I=c(h," class; pass it any checkpoint, and it\u2019ll automatically detect the pipeline type and load the necessary components."),h.forEach(t),D=$(e),_=s(e,"P",{});var z=p(_);Y=c(z,"This section introduces you to some of the more complex pipelines like Stable Diffusion XL, ControlNet, and DiffEdit, which require additional inputs. You\u2019ll also learn how to use a distilled version of the Stable Diffusion model to speed up inference, how to control randomness on your hardware when generating images, and how to create a community pipeline for a custom task like generating images from speech."),z.forEach(t),this.h()},h(){d(o,"name","hf:doc:metadata"),d(o,"content",JSON.stringify(re)),d(u,"id","overview"),d(u,"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"),d(u,"href","#overview"),d(l,"class","relative group"),d(v,"href","/docs/diffusers/v0.21.0/en/api/pipelines/stable_diffusion/stable_diffusion_xl#diffusers.StableDiffusionXLPipeline"),d(y,"href","/docs/diffusers/v0.21.0/en/api/pipelines/controlnet#diffusers.StableDiffusionControlNetPipeline"),d(w,"href","/docs/diffusers/v0.21.0/en/api/pipelines/overview#diffusers.DiffusionPipeline")},m(e,r){i(document.head,o),b(e,P,r),b(e,l,r),i(l,u),i(u,g),ee(m,g,null),i(l,C),i(l,k),i(k,L),b(e,S,r),b(e,n,r),i(n,N),i(n,v),i(v,q),i(n,X),i(n,y),i(y,O),i(n,M),i(n,w),i(w,T),i(n,I),b(e,D,r),b(e,_,r),i(_,Y),E=!0},p:te,i(e){E||(ie(m.$$.fragment,e),E=!0)},o(e){ne(m.$$.fragment,e),E=!1},d(e){t(o),e&&t(P),e&&t(l),ae(m),e&&t(S),e&&t(n),e&&t(D),e&&t(_)}}}const re={local:"overview",title:"Overview"};function fe(B){return se(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class de extends F{constructor(o){super();K(this,o,fe,le,Q,{})}}export{de as default,re as metadata};
