import{s as ke,o as Pe,n as Ie}from"../chunks/scheduler.53228c21.js";import{S as Ue,i as je,e as l,s as i,c as h,h as Ce,a as p,d as n,b as a,f as V,g as _,j as T,k as S,l as f,m as o,n as b,t as v,o as y,p as w}from"../chunks/index.100fac89.js";import{C as Je}from"../chunks/CopyLLMTxtMenu.20a72e0e.js";import{D as fe}from"../chunks/Docstring.49101787.js";import{C as $e}from"../chunks/CodeBlock.d30a6509.js";import{E as Ge}from"../chunks/ExampleCodeBlock.4a9effb9.js";import{H as ue,E as Le}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.4d82655d.js";function Ee(W){let r,$="Examples:",x,m,g;return m=new $e({props:{code:"aW1wb3J0JTIwdG9yY2glMEFmcm9tJTIwZGlmZnVzZXJzJTIwaW1wb3J0JTIwQnJpYVBpcGVsaW5lJTBBJTBBcGlwZSUyMCUzRCUyMEJyaWFQaXBlbGluZS5mcm9tX3ByZXRyYWluZWQoJTIyYnJpYWFpJTJGQlJJQS0zLjIlMjIlMkMlMjB0b3JjaF9kdHlwZSUzRHRvcmNoLmJmbG9hdDE2KSUwQXBpcGUudG8oJTIyY3VkYSUyMiklMEElMEFwaXBlLnRleHRfZW5jb2RlciUyMCUzRCUyMHBpcGUudGV4dF9lbmNvZGVyLnRvKGR0eXBlJTNEdG9yY2guYmZsb2F0MTYpJTBBZm9yJTIwYmxvY2slMjBpbiUyMHBpcGUudGV4dF9lbmNvZGVyLmVuY29kZXIuYmxvY2slM0ElMEElMjAlMjAlMjAlMjBibG9jay5sYXllciU1Qi0xJTVELkRlbnNlUmVsdURlbnNlLndvLnRvKGR0eXBlJTNEdG9yY2guZmxvYXQzMiklMEElMEFpZiUyMHBpcGUudmFlLmNvbmZpZy5zaGlmdF9mYWN0b3IlMjAlM0QlM0QlMjAwJTNBJTBBJTIwJTIwJTIwJTIwcGlwZS52YWUudG8oZHR5cGUlM0R0b3JjaC5mbG9hdDMyKSUwQSUwQXByb21wdCUyMCUzRCUyMCUyMlBob3RvcmVhbGlzdGljJTIwZm9vZCUyMHBob3RvZ3JhcGh5JTIwb2YlMjBhJTIwc3RhY2slMjBvZiUyMGZsdWZmeSUyMHBhbmNha2VzJTIwb24lMjBhJTIwd2hpdGUlMjBwbGF0ZSUyQyUyMHdpdGglMjBtYXBsZSUyMHN5cnVwJTIwYmVpbmclMjBwb3VyZWQlMjBvdmVyJTIwdGhlbS4lMjBPbiUyMHRvcCUyMG9mJTIwdGhlJTIwcGFuY2FrZXMlMjBhcmUlMjB0aGUlMjB3b3JkcyUyMCdCUklBJTIwMy4yJyUyMGluJTIwYm9sZCUyQyUyMHllbGxvdyUyQyUyMDNEJTIwbGV0dGVycy4lMjBUaGUlMjBiYWNrZ3JvdW5kJTIwaXMlMjBkYXJrJTIwYW5kJTIwb3V0JTIwb2YlMjBmb2N1cy4lMjIlMEFpbWFnZSUyMCUzRCUyMHBpcGUocHJvbXB0KS5pbWFnZXMlNUIwJTVEJTBBaW1hZ2Uuc2F2ZSglMjJicmlhLnBuZyUyMik=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">import</span> torch
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> BriaPipeline

<span class="hljs-meta">&gt;&gt;&gt; </span>pipe = BriaPipeline.from_pretrained(<span class="hljs-string">&quot;briaai/BRIA-3.2&quot;</span>, torch_dtype=torch.bfloat16)
<span class="hljs-meta">&gt;&gt;&gt; </span>pipe.to(<span class="hljs-string">&quot;cuda&quot;</span>)
<span class="hljs-comment"># BRIA&#x27;s T5 text encoder is sensitive to precision. We need to cast it to bfloat16 and keep the final layer in float32.</span>

<span class="hljs-meta">&gt;&gt;&gt; </span>pipe.text_encoder = pipe.text_encoder.to(dtype=torch.bfloat16)
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">for</span> block <span class="hljs-keyword">in</span> pipe.text_encoder.encoder.block:
<span class="hljs-meta">... </span>    block.layer[-<span class="hljs-number">1</span>].DenseReluDense.wo.to(dtype=torch.float32)
<span class="hljs-comment"># BRIA&#x27;s VAE is not supported in mixed precision, so we use float32.</span>

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">if</span> pipe.vae.config.shift_factor == <span class="hljs-number">0</span>:
<span class="hljs-meta">... </span>    pipe.vae.to(dtype=torch.float32)

<span class="hljs-meta">&gt;&gt;&gt; </span>prompt = <span class="hljs-string">&quot;Photorealistic food photography of a stack of fluffy pancakes on a white plate, with maple syrup being poured over them. On top of the pancakes are the words &#x27;BRIA 3.2&#x27; in bold, yellow, 3D letters. The background is dark and out of focus.&quot;</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>image = pipe(prompt).images[<span class="hljs-number">0</span>]
<span class="hljs-meta">&gt;&gt;&gt; </span>image.save(<span class="hljs-string">&quot;bria.png&quot;</span>)`,wrap:!1}}),{c(){r=l("p"),r.textContent=$,x=i(),h(m.$$.fragment)},l(s){r=p(s,"P",{"data-svelte-h":!0}),T(r)!=="svelte-kvfsh7"&&(r.textContent=$),x=a(s),_(m.$$.fragment,s)},m(s,u){o(s,r,u),o(s,x,u),b(m,s,u),g=!0},p:Ie,i(s){g||(v(m.$$.fragment,s),g=!0)},o(s){y(m.$$.fragment,s),g=!1},d(s){s&&(n(r),n(x)),w(m,s)}}}function Fe(W){let r,$,x,m,g,s,u,O,k,he=`Bria 3.2 is the next-generation commercial-ready text-to-image model. With just 4 billion parameters, it provides exceptional aesthetics and text rendering, evaluated to provide on par results to leading open-source models, and outperforming other licensed models.
In addition to being built entirely on licensed data, 3.2 provides several advantages for enterprise and commercial use:`,q,P,_e="<li>Efficient Compute - the model is X3 smaller than the equivalent models in the market (4B parameters vs 12B parameters other open source models)</li> <li>Architecture Consistency: Same architecture as 3.1—ideal for users looking to upgrade without disruption.</li> <li>Fine-tuning Speedup: 2x faster fine-tuning on L40S and A100.</li>",X,I,be=`Original model checkpoints for Bria 3.2 can be found <a href="https://huggingface.co/briaai/BRIA-3.2" rel="nofollow">here</a>.
Github repo for Bria 3.2 can be found <a href="https://github.com/Bria-AI/BRIA-3.2" rel="nofollow">here</a>.`,Q,U,ve='If you want to learn more about the Bria platform, and get free traril access, please visit <a href="https://bria.ai" rel="nofollow">bria.ai</a>.',K,j,ee,C,ye='<em>As the model is gated, before using it with diffusers you first need to go to the <a href="https://huggingface.co/briaai/BRIA-3.2" rel="nofollow">Bria 3.2 Hugging Face page</a>, fill in the form and accept the gate. Once you are in, you need to login so that your system knows you’ve accepted the gate.</em>',te,J,we="Use the command below to log in:",ne,G,oe,L,ie,d,E,le,R,xe="Based on FluxPipeline with several changes:",pe,Y,Be="<li>no pooled embeddings</li> <li>We use zero padding for prompts</li> <li>No guidance embedding since this is not a distilled version</li>",de,B,F,ce,H,Te="Function invoked when calling the pipeline for generation.",me,M,ge,z,N,ae,Z,se,D,re;return g=new Je({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),u=new ue({props:{title:"Bria 3.2",local:"bria-32",headingTag:"h1"}}),j=new ue({props:{title:"Usage",local:"usage",headingTag:"h2"}}),G=new $e({props:{code:"aGYlMjBhdXRoJTIwbG9naW4=",highlighted:"hf auth login",wrap:!1}}),L=new ue({props:{title:"BriaPipeline",local:"diffusers.BriaPipeline",headingTag:"h2"}}),E=new fe({props:{name:"class diffusers.BriaPipeline",anchor:"diffusers.BriaPipeline",parameters:[{name:"transformer",val:": BriaTransformer2DModel"},{name:"scheduler",val:": typing.Union[diffusers.schedulers.scheduling_flow_match_euler_discrete.FlowMatchEulerDiscreteScheduler, diffusers.schedulers.scheduling_utils.KarrasDiffusionSchedulers]"},{name:"vae",val:": AutoencoderKL"},{name:"text_encoder",val:": T5EncoderModel"},{name:"tokenizer",val:": T5TokenizerFast"},{name:"image_encoder",val:": CLIPVisionModelWithProjection = None"},{name:"feature_extractor",val:": CLIPImageProcessor = None"}],parametersDescription:[{anchor:"diffusers.BriaPipeline.transformer",description:`<strong>transformer</strong> (<a href="/docs/diffusers/main/en/api/models/bria_transformer#diffusers.BriaTransformer2DModel">BriaTransformer2DModel</a>) &#x2014;
Conditional Transformer (MMDiT) architecture to denoise the encoded image latents.`,name:"transformer"},{anchor:"diffusers.BriaPipeline.scheduler",description:`<strong>scheduler</strong> (<a href="/docs/diffusers/main/en/api/schedulers/flow_match_euler_discrete#diffusers.FlowMatchEulerDiscreteScheduler">FlowMatchEulerDiscreteScheduler</a>) &#x2014;
A scheduler to be used in combination with <code>transformer</code> to denoise the encoded image latents.`,name:"scheduler"},{anchor:"diffusers.BriaPipeline.vae",description:`<strong>vae</strong> (<a href="/docs/diffusers/main/en/api/models/autoencoderkl#diffusers.AutoencoderKL">AutoencoderKL</a>) &#x2014;
Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.`,name:"vae"},{anchor:"diffusers.BriaPipeline.text_encoder",description:`<strong>text_encoder</strong> (<code>T5EncoderModel</code>) &#x2014;
Frozen text-encoder. Bria uses
<a href="https://huggingface.co/docs/transformers/model_doc/t5#transformers.T5EncoderModel" rel="nofollow">T5</a>, specifically the
<a href="https://huggingface.co/google/t5-v1_1-xxl" rel="nofollow">t5-v1_1-xxl</a> variant.`,name:"text_encoder"},{anchor:"diffusers.BriaPipeline.tokenizer",description:`<strong>tokenizer</strong> (<code>T5TokenizerFast</code>) &#x2014;
Tokenizer of class
<a href="https://huggingface.co/docs/transformers/model_doc/t5#transformers.T5Tokenizer" rel="nofollow">T5Tokenizer</a>.`,name:"tokenizer"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/bria/pipeline_bria.py#L89"}}),F=new fe({props:{name:"__call__",anchor:"diffusers.BriaPipeline.__call__",parameters:[{name:"prompt",val:": typing.Union[str, typing.List[str]] = None"},{name:"height",val:": typing.Optional[int] = None"},{name:"width",val:": typing.Optional[int] = None"},{name:"num_inference_steps",val:": int = 30"},{name:"timesteps",val:": typing.List[int] = None"},{name:"guidance_scale",val:": float = 5"},{name:"negative_prompt",val:": typing.Union[str, typing.List[str], NoneType] = None"},{name:"num_images_per_prompt",val:": typing.Optional[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:"prompt_embeds",val:": typing.Optional[torch.FloatTensor] = None"},{name:"negative_prompt_embeds",val:": typing.Optional[torch.FloatTensor] = None"},{name:"output_type",val:": typing.Optional[str] = 'pil'"},{name:"return_dict",val:": bool = True"},{name:"attention_kwargs",val:": typing.Optional[typing.Dict[str, typing.Any]] = None"},{name:"callback_on_step_end",val:": typing.Optional[typing.Callable[[int, int, typing.Dict], NoneType]] = None"},{name:"callback_on_step_end_tensor_inputs",val:": typing.List[str] = ['latents']"},{name:"max_sequence_length",val:": int = 128"},{name:"clip_value",val:": typing.Optional[float] = None"},{name:"normalize",val:": bool = False"}],parametersDescription:[{anchor:"diffusers.BriaPipeline.__call__.prompt",description:`<strong>prompt</strong> (<code>str</code> or <code>List[str]</code>, <em>optional</em>) &#x2014;
The prompt or prompts to guide the image generation. If not defined, one has to pass <code>prompt_embeds</code>.
instead.`,name:"prompt"},{anchor:"diffusers.BriaPipeline.__call__.height",description:`<strong>height</strong> (<code>int</code>, <em>optional</em>, defaults to self.unet.config.sample_size * self.vae_scale_factor) &#x2014;
The height in pixels of the generated image. This is set to 1024 by default for the best results.`,name:"height"},{anchor:"diffusers.BriaPipeline.__call__.width",description:`<strong>width</strong> (<code>int</code>, <em>optional</em>, defaults to self.unet.config.sample_size * self.vae_scale_factor) &#x2014;
The width in pixels of the generated image. This is set to 1024 by default for the best results.`,name:"width"},{anchor:"diffusers.BriaPipeline.__call__.num_inference_steps",description:`<strong>num_inference_steps</strong> (<code>int</code>, <em>optional</em>, defaults to 50) &#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.BriaPipeline.__call__.timesteps",description:`<strong>timesteps</strong> (<code>List[int]</code>, <em>optional</em>) &#x2014;
Custom timesteps to use for the denoising process with schedulers which support a <code>timesteps</code> argument
in their <code>set_timesteps</code> method. If not defined, the default behavior when <code>num_inference_steps</code> is
passed will be used. Must be in descending order.`,name:"timesteps"},{anchor:"diffusers.BriaPipeline.__call__.guidance_scale",description:`<strong>guidance_scale</strong> (<code>float</code>, <em>optional</em>, defaults to 5.0) &#x2014;
Guidance scale as defined in <a href="https://huggingface.co/papers/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://huggingface.co/papers/2205.11487" 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.BriaPipeline.__call__.negative_prompt",description:`<strong>negative_prompt</strong> (<code>str</code> or <code>List[str]</code>, <em>optional</em>) &#x2014;
The prompt or prompts not to guide the image generation. If not defined, one has to pass
<code>negative_prompt_embeds</code> instead. Ignored when not using guidance (i.e., ignored if <code>guidance_scale</code> is
less than <code>1</code>).`,name:"negative_prompt"},{anchor:"diffusers.BriaPipeline.__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.BriaPipeline.__call__.generator",description:`<strong>generator</strong> (<code>torch.Generator</code> or <code>List[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.BriaPipeline.__call__.latents",description:`<strong>latents</strong> (<code>torch.FloatTensor</code>, <em>optional</em>) &#x2014;
Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image
generation. Can be used to tweak the same generation with different prompts. If not provided, a latents
tensor will be generated by sampling using the supplied random <code>generator</code>.`,name:"latents"},{anchor:"diffusers.BriaPipeline.__call__.prompt_embeds",description:`<strong>prompt_embeds</strong> (<code>torch.FloatTensor</code>, <em>optional</em>) &#x2014;
Pre-generated text embeddings. Can be used to easily tweak text inputs, <em>e.g.</em> prompt weighting. If not
provided, text embeddings will be generated from <code>prompt</code> input argument.`,name:"prompt_embeds"},{anchor:"diffusers.BriaPipeline.__call__.negative_prompt_embeds",description:`<strong>negative_prompt_embeds</strong> (<code>torch.FloatTensor</code>, <em>optional</em>) &#x2014;
Pre-generated negative text embeddings. Can be used to easily tweak text inputs, <em>e.g.</em> prompt
weighting. If not provided, negative_prompt_embeds will be generated from <code>negative_prompt</code> input
argument.`,name:"negative_prompt_embeds"},{anchor:"diffusers.BriaPipeline.__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 generate 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.BriaPipeline.__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 <code>~pipelines.bria.BriaPipelineOutput</code> instead of a plain tuple.`,name:"return_dict"},{anchor:"diffusers.BriaPipeline.__call__.attention_kwargs",description:`<strong>attention_kwargs</strong> (<code>dict</code>, <em>optional</em>) &#x2014;
A kwargs dictionary that if specified is passed along to the <code>AttentionProcessor</code> as defined under
<code>self.processor</code> in
<a href="https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py" rel="nofollow">diffusers.models.attention_processor</a>.`,name:"attention_kwargs"},{anchor:"diffusers.BriaPipeline.__call__.callback_on_step_end",description:`<strong>callback_on_step_end</strong> (<code>Callable</code>, <em>optional</em>) &#x2014;
A function that calls at the end of each denoising steps during the inference. The function is called
with the following arguments: <code>callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict)</code>. <code>callback_kwargs</code> will include a list of all tensors as specified by
<code>callback_on_step_end_tensor_inputs</code>.`,name:"callback_on_step_end"},{anchor:"diffusers.BriaPipeline.__call__.callback_on_step_end_tensor_inputs",description:`<strong>callback_on_step_end_tensor_inputs</strong> (<code>List</code>, <em>optional</em>) &#x2014;
The list of tensor inputs for the <code>callback_on_step_end</code> function. The tensors specified in the list
will be passed as <code>callback_kwargs</code> argument. You will only be able to include variables listed in the
<code>._callback_tensor_inputs</code> attribute of your pipeline class.`,name:"callback_on_step_end_tensor_inputs"},{anchor:"diffusers.BriaPipeline.__call__.max_sequence_length",description:"<strong>max_sequence_length</strong> (<code>int</code> defaults to 256) &#x2014; Maximum sequence length to use with the <code>prompt</code>.",name:"max_sequence_length"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/bria/pipeline_bria.py#L448",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>~pipelines.bria.BriaPipelineOutput</code> if <code>return_dict</code>
is True, otherwise a <code>tuple</code>. When returning a tuple, the first element is a list with the generated
images.</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>~pipelines.bria.BriaPipelineOutput</code> or <code>tuple</code></p>
`}}),M=new Ge({props:{anchor:"diffusers.BriaPipeline.__call__.example",$$slots:{default:[Ee]},$$scope:{ctx:W}}}),N=new fe({props:{name:"encode_prompt",anchor:"diffusers.BriaPipeline.encode_prompt",parameters:[{name:"prompt",val:": typing.Union[str, typing.List[str]]"},{name:"device",val:": typing.Optional[torch.device] = None"},{name:"num_images_per_prompt",val:": int = 1"},{name:"do_classifier_free_guidance",val:": bool = True"},{name:"negative_prompt",val:": typing.Union[str, typing.List[str], NoneType] = None"},{name:"prompt_embeds",val:": typing.Optional[torch.FloatTensor] = None"},{name:"negative_prompt_embeds",val:": typing.Optional[torch.FloatTensor] = None"},{name:"max_sequence_length",val:": int = 128"},{name:"lora_scale",val:": typing.Optional[float] = None"}],parametersDescription:[{anchor:"diffusers.BriaPipeline.encode_prompt.prompt",description:`<strong>prompt</strong> (<code>str</code> or <code>List[str]</code>, <em>optional</em>) &#x2014;
prompt to be encoded`,name:"prompt"},{anchor:"diffusers.BriaPipeline.encode_prompt.device",description:`<strong>device</strong> &#x2014; (<code>torch.device</code>):
torch device`,name:"device"},{anchor:"diffusers.BriaPipeline.encode_prompt.num_images_per_prompt",description:`<strong>num_images_per_prompt</strong> (<code>int</code>) &#x2014;
number of images that should be generated per prompt`,name:"num_images_per_prompt"},{anchor:"diffusers.BriaPipeline.encode_prompt.do_classifier_free_guidance",description:`<strong>do_classifier_free_guidance</strong> (<code>bool</code>) &#x2014;
whether to use classifier free guidance or not`,name:"do_classifier_free_guidance"},{anchor:"diffusers.BriaPipeline.encode_prompt.negative_prompt",description:`<strong>negative_prompt</strong> (<code>str</code> or <code>List[str]</code>, <em>optional</em>) &#x2014;
The prompt or prompts not to guide the image generation. If not defined, one has to pass
<code>negative_prompt_embeds</code> instead. Ignored when not using guidance (i.e., ignored if <code>guidance_scale</code> is
less than <code>1</code>).`,name:"negative_prompt"},{anchor:"diffusers.BriaPipeline.encode_prompt.prompt_embeds",description:`<strong>prompt_embeds</strong> (<code>torch.FloatTensor</code>, <em>optional</em>) &#x2014;
Pre-generated text embeddings. Can be used to easily tweak text inputs, <em>e.g.</em> prompt weighting. If not
provided, text embeddings will be generated from <code>prompt</code> input argument.`,name:"prompt_embeds"},{anchor:"diffusers.BriaPipeline.encode_prompt.negative_prompt_embeds",description:`<strong>negative_prompt_embeds</strong> (<code>torch.FloatTensor</code>, <em>optional</em>) &#x2014;
Pre-generated negative text embeddings. Can be used to easily tweak text inputs, <em>e.g.</em> prompt
weighting. If not provided, negative_prompt_embeds will be generated from <code>negative_prompt</code> input
argument.`,name:"negative_prompt_embeds"}],source:"https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/bria/pipeline_bria.py#L146"}}),Z=new Le({props:{source:"https://github.com/huggingface/diffusers/blob/main/docs/source/en/api/pipelines/bria_3_2.md"}}),{c(){r=l("meta"),$=i(),x=l("p"),m=i(),h(g.$$.fragment),s=i(),h(u.$$.fragment),O=i(),k=l("p"),k.textContent=he,q=i(),P=l("ul"),P.innerHTML=_e,X=i(),I=l("p"),I.innerHTML=be,Q=i(),U=l("p"),U.innerHTML=ve,K=i(),h(j.$$.fragment),ee=i(),C=l("p"),C.innerHTML=ye,te=i(),J=l("p"),J.textContent=we,ne=i(),h(G.$$.fragment),oe=i(),h(L.$$.fragment),ie=i(),d=l("div"),h(E.$$.fragment),le=i(),R=l("p"),R.textContent=xe,pe=i(),Y=l("ul"),Y.innerHTML=Be,de=i(),B=l("div"),h(F.$$.fragment),ce=i(),H=l("p"),H.textContent=Te,me=i(),h(M.$$.fragment),ge=i(),z=l("div"),h(N.$$.fragment),ae=i(),h(Z.$$.fragment),se=i(),D=l("p"),this.h()},l(e){const t=Ce("svelte-u9bgzb",document.head);r=p(t,"META",{name:!0,content:!0}),t.forEach(n),$=a(e),x=p(e,"P",{}),V(x).forEach(n),m=a(e),_(g.$$.fragment,e),s=a(e),_(u.$$.fragment,e),O=a(e),k=p(e,"P",{"data-svelte-h":!0}),T(k)!=="svelte-1fachwa"&&(k.textContent=he),q=a(e),P=p(e,"UL",{"data-svelte-h":!0}),T(P)!=="svelte-1txl75c"&&(P.innerHTML=_e),X=a(e),I=p(e,"P",{"data-svelte-h":!0}),T(I)!=="svelte-1pirafh"&&(I.innerHTML=be),Q=a(e),U=p(e,"P",{"data-svelte-h":!0}),T(U)!=="svelte-m9lr6p"&&(U.innerHTML=ve),K=a(e),_(j.$$.fragment,e),ee=a(e),C=p(e,"P",{"data-svelte-h":!0}),T(C)!=="svelte-xrh9ni"&&(C.innerHTML=ye),te=a(e),J=p(e,"P",{"data-svelte-h":!0}),T(J)!=="svelte-12sg8l0"&&(J.textContent=we),ne=a(e),_(G.$$.fragment,e),oe=a(e),_(L.$$.fragment,e),ie=a(e),d=p(e,"DIV",{class:!0});var c=V(d);_(E.$$.fragment,c),le=a(c),R=p(c,"P",{"data-svelte-h":!0}),T(R)!=="svelte-18cwt80"&&(R.textContent=xe),pe=a(c),Y=p(c,"UL",{"data-svelte-h":!0}),T(Y)!=="svelte-ubdgrr"&&(Y.innerHTML=Be),de=a(c),B=p(c,"DIV",{class:!0});var A=V(B);_(F.$$.fragment,A),ce=a(A),H=p(A,"P",{"data-svelte-h":!0}),T(H)!=="svelte-v78lg8"&&(H.textContent=Te),me=a(A),_(M.$$.fragment,A),A.forEach(n),ge=a(c),z=p(c,"DIV",{class:!0});var Me=V(z);_(N.$$.fragment,Me),Me.forEach(n),c.forEach(n),ae=a(e),_(Z.$$.fragment,e),se=a(e),D=p(e,"P",{}),V(D).forEach(n),this.h()},h(){S(r,"name","hf:doc:metadata"),S(r,"content",Ne),S(B,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),S(z,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),S(d,"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,t){f(document.head,r),o(e,$,t),o(e,x,t),o(e,m,t),b(g,e,t),o(e,s,t),b(u,e,t),o(e,O,t),o(e,k,t),o(e,q,t),o(e,P,t),o(e,X,t),o(e,I,t),o(e,Q,t),o(e,U,t),o(e,K,t),b(j,e,t),o(e,ee,t),o(e,C,t),o(e,te,t),o(e,J,t),o(e,ne,t),b(G,e,t),o(e,oe,t),b(L,e,t),o(e,ie,t),o(e,d,t),b(E,d,null),f(d,le),f(d,R),f(d,pe),f(d,Y),f(d,de),f(d,B),b(F,B,null),f(B,ce),f(B,H),f(B,me),b(M,B,null),f(d,ge),f(d,z),b(N,z,null),o(e,ae,t),b(Z,e,t),o(e,se,t),o(e,D,t),re=!0},p(e,[t]){const c={};t&2&&(c.$$scope={dirty:t,ctx:e}),M.$set(c)},i(e){re||(v(g.$$.fragment,e),v(u.$$.fragment,e),v(j.$$.fragment,e),v(G.$$.fragment,e),v(L.$$.fragment,e),v(E.$$.fragment,e),v(F.$$.fragment,e),v(M.$$.fragment,e),v(N.$$.fragment,e),v(Z.$$.fragment,e),re=!0)},o(e){y(g.$$.fragment,e),y(u.$$.fragment,e),y(j.$$.fragment,e),y(G.$$.fragment,e),y(L.$$.fragment,e),y(E.$$.fragment,e),y(F.$$.fragment,e),y(M.$$.fragment,e),y(N.$$.fragment,e),y(Z.$$.fragment,e),re=!1},d(e){e&&(n($),n(x),n(m),n(s),n(O),n(k),n(q),n(P),n(X),n(I),n(Q),n(U),n(K),n(ee),n(C),n(te),n(J),n(ne),n(oe),n(ie),n(d),n(ae),n(se),n(D)),n(r),w(g,e),w(u,e),w(j,e),w(G,e),w(L,e),w(E),w(F),w(M),w(N),w(Z,e)}}}const Ne='{"title":"Bria 3.2","local":"bria-32","sections":[{"title":"Usage","local":"usage","sections":[],"depth":2},{"title":"BriaPipeline","local":"diffusers.BriaPipeline","sections":[],"depth":2}],"depth":1}';function Ze(W){return Pe(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Se extends Ue{constructor(r){super(),je(this,r,Ze,Fe,ke,{})}}export{Se as component};
