import{s as Lr,o as Sr,n as he}from"../chunks/scheduler.25b97de1.js";import{S as Yr,i as Xr,g as i,s as n,r as c,A as qr,h as l,f as o,c as a,j as w,u as m,x as g,k as $,l as Er,y as s,a as r,v as p,d as f,t as h,w as u}from"../chunks/index.d9030fc9.js";import{T as Ln}from"../chunks/Tip.baa67368.js";import{D as C}from"../chunks/Docstring.e257edda.js";import{C as U}from"../chunks/CodeBlock.e6cd0d95.js";import{E as Sn}from"../chunks/ExampleCodeBlock.20db4b6e.js";import{H as T,E as Rr}from"../chunks/EditOnGithub.91d95064.js";function Dr(J){let d,y="Example:",b,k,v;return k=new U({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEF1dG9Qcm9jZXNzb3IlMkMlMjBCYXJrTW9kZWwlMEElMEFwcm9jZXNzb3IlMjAlM0QlMjBBdXRvUHJvY2Vzc29yLmZyb21fcHJldHJhaW5lZCglMjJzdW5vJTJGYmFyay1zbWFsbCUyMiklMEFtb2RlbCUyMCUzRCUyMEJhcmtNb2RlbC5mcm9tX3ByZXRyYWluZWQoJTIyc3VubyUyRmJhcmstc21hbGwlMjIpJTBBJTBBJTIzJTIwVG8lMjBhZGQlMjBhJTIwdm9pY2UlMjBwcmVzZXQlMkMlMjB5b3UlMjBjYW4lMjBwYXNzJTIwJTYwdm9pY2VfcHJlc2V0JTYwJTIwdG8lMjAlNjBCYXJrUHJvY2Vzc29yLl9fY2FsbF9fKC4uLiklNjAlMEF2b2ljZV9wcmVzZXQlMjAlM0QlMjAlMjJ2MiUyRmVuX3NwZWFrZXJfNiUyMiUwQSUwQWlucHV0cyUyMCUzRCUyMHByb2Nlc3NvciglMjJIZWxsbyUyQyUyMG15JTIwZG9nJTIwaXMlMjBjdXRlJTJDJTIwSSUyMG5lZWQlMjBoaW0lMjBpbiUyMG15JTIwbGlmZSUyMiUyQyUyMHZvaWNlX3ByZXNldCUzRHZvaWNlX3ByZXNldCklMEElMEFhdWRpb19hcnJheSUyMCUzRCUyMG1vZGVsLmdlbmVyYXRlKCoqaW5wdXRzJTJDJTIwc2VtYW50aWNfbWF4X25ld190b2tlbnMlM0QxMDApJTBBYXVkaW9fYXJyYXklMjAlM0QlMjBhdWRpb19hcnJheS5jcHUoKS5udW1weSgpLnNxdWVlemUoKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoProcessor, BarkModel

<span class="hljs-meta">&gt;&gt;&gt; </span>processor = AutoProcessor.from_pretrained(<span class="hljs-string">&quot;suno/bark-small&quot;</span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>model = BarkModel.from_pretrained(<span class="hljs-string">&quot;suno/bark-small&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># To add a voice preset, you can pass \`voice_preset\` to \`BarkProcessor.__call__(...)\`</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>voice_preset = <span class="hljs-string">&quot;v2/en_speaker_6&quot;</span>

<span class="hljs-meta">&gt;&gt;&gt; </span>inputs = processor(<span class="hljs-string">&quot;Hello, my dog is cute, I need him in my life&quot;</span>, voice_preset=voice_preset)

<span class="hljs-meta">&gt;&gt;&gt; </span>audio_array = model.generate(**inputs, semantic_max_new_tokens=<span class="hljs-number">100</span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>audio_array = audio_array.cpu().numpy().squeeze()`,wrap:!1}}),{c(){d=i("p"),d.textContent=y,b=n(),c(k.$$.fragment)},l(_){d=l(_,"P",{"data-svelte-h":!0}),g(d)!=="svelte-11lpom8"&&(d.textContent=y),b=a(_),m(k.$$.fragment,_)},m(_,M){r(_,d,M),r(_,b,M),p(k,_,M),v=!0},p:he,i(_){v||(f(k.$$.fragment,_),v=!0)},o(_){h(k.$$.fragment,_),v=!1},d(_){_&&(o(d),o(b)),u(k,_)}}}function Qr(J){let d,y=`Although the recipe for forward pass needs to be defined within this function, one should call the <code>Module</code>
instance afterwards instead of this since the former takes care of running the pre and post processing steps while
the latter silently ignores them.`;return{c(){d=i("p"),d.innerHTML=y},l(b){d=l(b,"P",{"data-svelte-h":!0}),g(d)!=="svelte-fincs2"&&(d.innerHTML=y)},m(b,k){r(b,d,k)},p:he,d(b){b&&o(d)}}}function Or(J){let d,y=`Although the recipe for forward pass needs to be defined within this function, one should call the <code>Module</code>
instance afterwards instead of this since the former takes care of running the pre and post processing steps while
the latter silently ignores them.`;return{c(){d=i("p"),d.innerHTML=y},l(b){d=l(b,"P",{"data-svelte-h":!0}),g(d)!=="svelte-fincs2"&&(d.innerHTML=y)},m(b,k){r(b,d,k)},p:he,d(b){b&&o(d)}}}function Ar(J){let d,y=`Although the recipe for forward pass needs to be defined within this function, one should call the <code>Module</code>
instance afterwards instead of this since the former takes care of running the pre and post processing steps while
the latter silently ignores them.`;return{c(){d=i("p"),d.innerHTML=y},l(b){d=l(b,"P",{"data-svelte-h":!0}),g(d)!=="svelte-fincs2"&&(d.innerHTML=y)},m(b,k){r(b,d,k)},p:he,d(b){b&&o(d)}}}function Kr(J){let d,y=`Although the recipe for forward pass needs to be defined within this function, one should call the <code>Module</code>
instance afterwards instead of this since the former takes care of running the pre and post processing steps while
the latter silently ignores them.`;return{c(){d=i("p"),d.innerHTML=y},l(b){d=l(b,"P",{"data-svelte-h":!0}),g(d)!=="svelte-fincs2"&&(d.innerHTML=y)},m(b,k){r(b,d,k)},p:he,d(b){b&&o(d)}}}function es(J){let d,y="Example:",b,k,v;return k=new U({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEJhcmtDb2Fyc2VDb25maWclMkMlMjBCYXJrQ29hcnNlTW9kZWwlMEElMEElMjMlMjBJbml0aWFsaXppbmclMjBhJTIwQmFyayUyMHN1Yi1tb2R1bGUlMjBzdHlsZSUyMGNvbmZpZ3VyYXRpb24lMEFjb25maWd1cmF0aW9uJTIwJTNEJTIwQmFya0NvYXJzZUNvbmZpZygpJTBBJTBBJTIzJTIwSW5pdGlhbGl6aW5nJTIwYSUyMG1vZGVsJTIwKHdpdGglMjByYW5kb20lMjB3ZWlnaHRzKSUyMGZyb20lMjB0aGUlMjBzdW5vJTJGYmFyayUyMHN0eWxlJTIwY29uZmlndXJhdGlvbiUwQW1vZGVsJTIwJTNEJTIwQmFya0NvYXJzZU1vZGVsKGNvbmZpZ3VyYXRpb24pJTBBJTBBJTIzJTIwQWNjZXNzaW5nJTIwdGhlJTIwbW9kZWwlMjBjb25maWd1cmF0aW9uJTBBY29uZmlndXJhdGlvbiUyMCUzRCUyMG1vZGVsLmNvbmZpZw==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> BarkCoarseConfig, BarkCoarseModel

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Initializing a Bark sub-module style configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>configuration = BarkCoarseConfig()

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Initializing a model (with random weights) from the suno/bark style configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>model = BarkCoarseModel(configuration)

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Accessing the model configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>configuration = model.config`,wrap:!1}}),{c(){d=i("p"),d.textContent=y,b=n(),c(k.$$.fragment)},l(_){d=l(_,"P",{"data-svelte-h":!0}),g(d)!=="svelte-11lpom8"&&(d.textContent=y),b=a(_),m(k.$$.fragment,_)},m(_,M){r(_,d,M),r(_,b,M),p(k,_,M),v=!0},p:he,i(_){v||(f(k.$$.fragment,_),v=!0)},o(_){h(k.$$.fragment,_),v=!1},d(_){_&&(o(d),o(b)),u(k,_)}}}function ts(J){let d,y="Example:",b,k,v;return k=new U({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEJhcmtGaW5lQ29uZmlnJTJDJTIwQmFya0ZpbmVNb2RlbCUwQSUwQSUyMyUyMEluaXRpYWxpemluZyUyMGElMjBCYXJrJTIwc3ViLW1vZHVsZSUyMHN0eWxlJTIwY29uZmlndXJhdGlvbiUwQWNvbmZpZ3VyYXRpb24lMjAlM0QlMjBCYXJrRmluZUNvbmZpZygpJTBBJTBBJTIzJTIwSW5pdGlhbGl6aW5nJTIwYSUyMG1vZGVsJTIwKHdpdGglMjByYW5kb20lMjB3ZWlnaHRzKSUyMGZyb20lMjB0aGUlMjBzdW5vJTJGYmFyayUyMHN0eWxlJTIwY29uZmlndXJhdGlvbiUwQW1vZGVsJTIwJTNEJTIwQmFya0ZpbmVNb2RlbChjb25maWd1cmF0aW9uKSUwQSUwQSUyMyUyMEFjY2Vzc2luZyUyMHRoZSUyMG1vZGVsJTIwY29uZmlndXJhdGlvbiUwQWNvbmZpZ3VyYXRpb24lMjAlM0QlMjBtb2RlbC5jb25maWc=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> BarkFineConfig, BarkFineModel

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Initializing a Bark sub-module style configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>configuration = BarkFineConfig()

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Initializing a model (with random weights) from the suno/bark style configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>model = BarkFineModel(configuration)

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Accessing the model configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>configuration = model.config`,wrap:!1}}),{c(){d=i("p"),d.textContent=y,b=n(),c(k.$$.fragment)},l(_){d=l(_,"P",{"data-svelte-h":!0}),g(d)!=="svelte-11lpom8"&&(d.textContent=y),b=a(_),m(k.$$.fragment,_)},m(_,M){r(_,d,M),r(_,b,M),p(k,_,M),v=!0},p:he,i(_){v||(f(k.$$.fragment,_),v=!0)},o(_){h(k.$$.fragment,_),v=!1},d(_){_&&(o(d),o(b)),u(k,_)}}}function os(J){let d,y="Example:",b,k,v;return k=new U({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEJhcmtTZW1hbnRpY0NvbmZpZyUyQyUyMEJhcmtTZW1hbnRpY01vZGVsJTBBJTBBJTIzJTIwSW5pdGlhbGl6aW5nJTIwYSUyMEJhcmslMjBzdWItbW9kdWxlJTIwc3R5bGUlMjBjb25maWd1cmF0aW9uJTBBY29uZmlndXJhdGlvbiUyMCUzRCUyMEJhcmtTZW1hbnRpY0NvbmZpZygpJTBBJTBBJTIzJTIwSW5pdGlhbGl6aW5nJTIwYSUyMG1vZGVsJTIwKHdpdGglMjByYW5kb20lMjB3ZWlnaHRzKSUyMGZyb20lMjB0aGUlMjBzdW5vJTJGYmFyayUyMHN0eWxlJTIwY29uZmlndXJhdGlvbiUwQW1vZGVsJTIwJTNEJTIwQmFya1NlbWFudGljTW9kZWwoY29uZmlndXJhdGlvbiklMEElMEElMjMlMjBBY2Nlc3NpbmclMjB0aGUlMjBtb2RlbCUyMGNvbmZpZ3VyYXRpb24lMEFjb25maWd1cmF0aW9uJTIwJTNEJTIwbW9kZWwuY29uZmln",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> BarkSemanticConfig, BarkSemanticModel

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Initializing a Bark sub-module style configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>configuration = BarkSemanticConfig()

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Initializing a model (with random weights) from the suno/bark style configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>model = BarkSemanticModel(configuration)

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Accessing the model configuration</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>configuration = model.config`,wrap:!1}}),{c(){d=i("p"),d.textContent=y,b=n(),c(k.$$.fragment)},l(_){d=l(_,"P",{"data-svelte-h":!0}),g(d)!=="svelte-11lpom8"&&(d.textContent=y),b=a(_),m(k.$$.fragment,_)},m(_,M){r(_,d,M),r(_,b,M),p(k,_,M),v=!0},p:he,i(_){v||(f(k.$$.fragment,_),v=!0)},o(_){h(k.$$.fragment,_),v=!1},d(_){_&&(o(d),o(b)),u(k,_)}}}function ns(J){let d,y,b,k,v,_,M,$o,ue,Ga='Bark is a transformer-based text-to-speech model proposed by Suno AI in <a href="https://github.com/suno-ai/bark" rel="nofollow">suno-ai/bark</a>.',To,ge,Ha="Bark is made of 4 main models:",Bo,_e,Va='<li><a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkSemanticModel">BarkSemanticModel</a> (also referred to as the ‘text’ model): a causal auto-regressive transformer model that takes as input tokenized text, and predicts semantic text tokens that capture the meaning of the text.</li> <li><a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCoarseModel">BarkCoarseModel</a> (also referred to as the ‘coarse acoustics’ model): a causal autoregressive transformer, that takes as input the results of the <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkSemanticModel">BarkSemanticModel</a> model. It aims at predicting the first two audio codebooks necessary for EnCodec.</li> <li><a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkFineModel">BarkFineModel</a> (the ‘fine acoustics’ model), this time a non-causal autoencoder transformer, which iteratively predicts the last codebooks based on the sum of the previous codebooks embeddings.</li> <li>having predicted all the codebook channels from the <a href="/docs/transformers/pr_30962/en/model_doc/encodec#transformers.EncodecModel">EncodecModel</a>, Bark uses it to decode the output audio array.</li>',Co,be,La="It should be noted that each of the first three modules can support conditional speaker embeddings to condition the output sound according to specific predefined voice.",xo,ke,Sa=`This model was contributed by <a href="https://huggingface.co/ylacombe" rel="nofollow">Yoach Lacombe (ylacombe)</a> and <a href="https://github.com/sanchit-gandhi" rel="nofollow">Sanchit Gandhi (sanchit-gandhi)</a>.
The original code can be found <a href="https://github.com/suno-ai/bark" rel="nofollow">here</a>.`,Jo,ye,zo,ve,Ya="Bark can be optimized with just a few extra lines of code, which <strong>significantly reduces its memory footprint</strong> and <strong>accelerates inference</strong>.",jo,Me,Uo,we,Xa="You can speed up inference and reduce memory footprint by 50% simply by loading the model in half-precision.",Io,$e,Wo,Te,Zo,Be,qa="As mentioned above, Bark is made up of 4 sub-models, which are called up sequentially during audio generation. In other words, while one sub-model is in use, the other sub-models are idle.",No,Ce,Ea="If you’re using a CUDA device, a simple solution to benefit from an 80% reduction in memory footprint is to offload the submodels from GPU to CPU when they’re idle. This operation is called <em>CPU offloading</em>. You can use it with one line of code as follows:",Po,xe,Fo,Je,Ra='Note that 🤗 Accelerate must be installed before using this feature. <a href="https://huggingface.co/docs/accelerate/basic_tutorials/install" rel="nofollow">Here’s how to install it.</a>',Go,ze,Ho,je,Da="Better Transformer is an 🤗 Optimum feature that performs kernel fusion under the hood. You can gain 20% to 30% in speed with zero performance degradation. It only requires one line of code to export the model to 🤗 Better Transformer:",Vo,Ue,Lo,Ie,Qa='Note that 🤗 Optimum must be installed before using this feature. <a href="https://huggingface.co/docs/optimum/installation" rel="nofollow">Here’s how to install it.</a>',So,We,Yo,Ze,Oa="Flash Attention 2 is an even faster, optimized version of the previous optimization.",Xo,Ne,qo,Pe,Aa='First, check whether your hardware is compatible with Flash Attention 2. The latest list of compatible hardware can be found in the <a href="https://github.com/Dao-AILab/flash-attention#installation-and-features" rel="nofollow">official documentation</a>. If your hardware is not compatible with Flash Attention 2, you can still benefit from attention kernel optimisations through Better Transformer support covered <a href="https://huggingface.co/docs/transformers/main/en/model_doc/bark#using-better-transformer" rel="nofollow">above</a>.',Eo,Fe,Ka='Next, <a href="https://github.com/Dao-AILab/flash-attention#installation-and-features" rel="nofollow">install</a> the latest version of Flash Attention 2:',Ro,Ge,Do,He,Qo,Ve,er='To load a model using Flash Attention 2, we can pass the <code>attn_implementation=&quot;flash_attention_2&quot;</code> flag to <a href="https://huggingface.co/docs/transformers/main/en/main_classes/model#transformers.PreTrainedModel.from_pretrained" rel="nofollow"><code>.from_pretrained</code></a>. We’ll also load the model in half-precision (e.g. <code>torch.float16</code>), since it results in almost no degradation to audio quality but significantly lower memory usage and faster inference:',Oo,Le,Ao,Se,Ko,Ye,tr="The following diagram shows the latency for the native attention implementation (no optimisation) against Better Transformer and Flash Attention 2. In all cases, we generate 400 semantic tokens on a 40GB A100 GPU with PyTorch 2.1. Flash Attention 2 is also consistently faster than Better Transformer, and its performance improves even more as batch sizes increase:",en,R,or='<img src="https://huggingface.co/datasets/ylacombe/benchmark-comparison/resolve/main/Bark%20Optimization%20Benchmark.png"/>',tn,Xe,nr='To put this into perspective, on an NVIDIA A100 and when generating 400 semantic tokens with a batch size of 16, you can get 17 times the <a href="https://huggingface.co/blog/optimizing-bark#throughput" rel="nofollow">throughput</a> and still be 2 seconds faster than generating sentences one by one with the native model implementation. In other words, all the samples will be generated 17 times faster.',on,qe,ar="At batch size 8, on an NVIDIA A100, Flash Attention 2 is also 10% faster than Better Transformer, and at batch size 16, 25%.",nn,Ee,an,Re,rr="You can combine optimization techniques, and use CPU offload, half-precision and Flash Attention 2 (or 🤗 Better Transformer) all at once.",rn,De,sn,Qe,sr='Find out more on inference optimization techniques <a href="https://huggingface.co/docs/transformers/perf_infer_gpu_one" rel="nofollow">here</a>.',ln,Oe,dn,Ae,ir=`Suno offers a library of voice presets in a number of languages <a href="https://suno-ai.notion.site/8b8e8749ed514b0cbf3f699013548683?v=bc67cff786b04b50b3ceb756fd05f68c" rel="nofollow">here</a>.
These presets are also uploaded in the hub <a href="https://huggingface.co/suno/bark-small/tree/main/speaker_embeddings" rel="nofollow">here</a> or <a href="https://huggingface.co/suno/bark/tree/main/speaker_embeddings" rel="nofollow">here</a>.`,cn,Ke,mn,et,lr="Bark can generate highly realistic, <strong>multilingual</strong> speech as well as other audio - including music, background noise and simple sound effects.",pn,tt,fn,ot,dr="The model can also produce <strong>nonverbal communications</strong> like laughing, sighing and crying.",hn,nt,un,at,cr="To save the audio, simply take the sample rate from the model config and some scipy utility:",gn,rt,_n,st,bn,z,it,Yn,Vt,mr=`This is the configuration class to store the configuration of a <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkModel">BarkModel</a>. It is used to instantiate a Bark
model according to the specified sub-models configurations, defining the model architecture.`,Xn,Lt,pr=`Instantiating a configuration with the defaults will yield a similar configuration to that of the Bark
<a href="https://huggingface.co/suno/bark" rel="nofollow">suno/bark</a> architecture.`,qn,St,fr=`Configuration objects inherit from <a href="/docs/transformers/pr_30962/en/main_classes/configuration#transformers.PretrainedConfig">PretrainedConfig</a> and can be used to control the model outputs. Read the
documentation from <a href="/docs/transformers/pr_30962/en/main_classes/configuration#transformers.PretrainedConfig">PretrainedConfig</a> for more information.`,En,D,lt,Rn,Yt,hr='Instantiate a <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkConfig">BarkConfig</a> (or a derived class) from bark sub-models configuration.',kn,dt,yn,j,ct,Dn,Xt,ur="Constructs a Bark processor which wraps a text tokenizer and optional Bark voice presets into a single processor.",Qn,Q,mt,On,qt,gr=`Main method to prepare for the model one or several sequences(s). This method forwards the <code>text</code> and <code>kwargs</code>
arguments to the AutoTokenizer’s <code>__call__()</code> to encode the text. The method also proposes a
voice preset which is a dictionary of arrays that conditions <code>Bark</code>’s output. <code>kwargs</code> arguments are forwarded
to the tokenizer and to <code>cached_file</code> method if <code>voice_preset</code> is a valid filename.`,An,O,pt,Kn,Et,_r="Instantiate a Bark processor associated with a pretrained model.",ea,A,ft,ta,Rt,br=`Saves the attributes of this processor (tokenizer…) in the specified directory so that it can be reloaded
using the <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkProcessor.from_pretrained">from_pretrained()</a> method.`,vn,ht,Mn,B,ut,oa,Dt,kr="The full Bark model, a text-to-speech model composed of 4 sub-models:",na,Qt,yr=`<li><a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkSemanticModel">BarkSemanticModel</a> (also referred to as the ‘text’ model): a causal auto-regressive transformer model that
takes
as input tokenized text, and predicts semantic text tokens that capture the meaning of the text.</li> <li><a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCoarseModel">BarkCoarseModel</a> (also refered to as the ‘coarse acoustics’ model), also a causal autoregressive transformer,
that takes into input the results of the last model. It aims at regressing the first two audio codebooks necessary
to <code>encodec</code>.</li> <li><a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkFineModel">BarkFineModel</a> (the ‘fine acoustics’ model), this time a non-causal autoencoder transformer, which iteratively
predicts the last codebooks based on the sum of the previous codebooks embeddings.</li> <li>having predicted all the codebook channels from the <a href="/docs/transformers/pr_30962/en/model_doc/encodec#transformers.EncodecModel">EncodecModel</a>, Bark uses it to decode the output audio
array.</li>`,aa,Ot,vr=`It should be noted that each of the first three modules can support conditional speaker embeddings to condition the
output sound according to specific predefined voice.`,ra,At,Mr=`This model inherits from <a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.PreTrainedModel">PreTrainedModel</a>. Check the superclass documentation for the generic methods the
library implements for all its model (such as downloading or saving, resizing the input embeddings, pruning heads
etc.)`,sa,Kt,wr=`This model is also a PyTorch <a href="https://pytorch.org/docs/stable/nn.html#torch.nn.Module" rel="nofollow">torch.nn.Module</a> subclass.
Use it as a regular PyTorch Module and refer to the PyTorch documentation for all matter related to general usage
and behavior.`,ia,V,gt,la,eo,$r="Generates audio from an input prompt and an additional optional <code>Bark</code> speaker prompt.",da,K,ca,ee,_t,ma,to,Tr=`Offloads all sub-models to CPU using accelerate, reducing memory usage with a low impact on performance. This
method moves one whole sub-model at a time to the GPU when it is used, and the sub-model remains in GPU until
the next sub-model runs.`,wn,bt,$n,I,kt,pa,oo,Br=`Bark semantic (or text) model. It shares the same architecture as the coarse model.
It is a GPT-2 like autoregressive model with a language modeling head on top.
This model inherits from <a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.PreTrainedModel">PreTrainedModel</a>. Check the superclass documentation for the generic methods the
library implements for all its model (such as downloading or saving, resizing the input embeddings, pruning heads
etc.)`,fa,no,Cr=`This model is also a PyTorch <a href="https://pytorch.org/docs/stable/nn.html#torch.nn.Module" rel="nofollow">torch.nn.Module</a> subclass.
Use it as a regular PyTorch Module and refer to the PyTorch documentation for all matter related to general usage
and behavior.`,ha,L,yt,ua,ao,xr='The <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCausalModel">BarkCausalModel</a> forward method, overrides the <code>__call__</code> special method.',ga,te,Tn,vt,Bn,W,Mt,_a,ro,Jr=`Bark coarse acoustics model.
It shares the same architecture as the semantic (or text) model. It is a GPT-2 like autoregressive model with a
language modeling head on top.
This model inherits from <a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.PreTrainedModel">PreTrainedModel</a>. Check the superclass documentation for the generic methods the
library implements for all its model (such as downloading or saving, resizing the input embeddings, pruning heads
etc.)`,ba,so,zr=`This model is also a PyTorch <a href="https://pytorch.org/docs/stable/nn.html#torch.nn.Module" rel="nofollow">torch.nn.Module</a> subclass.
Use it as a regular PyTorch Module and refer to the PyTorch documentation for all matter related to general usage
and behavior.`,ka,S,wt,ya,io,jr='The <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCausalModel">BarkCausalModel</a> forward method, overrides the <code>__call__</code> special method.',va,oe,Cn,$t,xn,Z,Tt,Ma,lo,Ur=`Bark fine acoustics model. It is a non-causal GPT-like model with <code>config.n_codes_total</code> embedding layers and
language modeling heads, one for each codebook.
This model inherits from <a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.PreTrainedModel">PreTrainedModel</a>. Check the superclass documentation for the generic methods the
library implements for all its model (such as downloading or saving, resizing the input embeddings, pruning heads
etc.)`,wa,co,Ir=`This model is also a PyTorch <a href="https://pytorch.org/docs/stable/nn.html#torch.nn.Module" rel="nofollow">torch.nn.Module</a> subclass.
Use it as a regular PyTorch Module and refer to the PyTorch documentation for all matter related to general usage
and behavior.`,$a,Y,Bt,Ta,mo,Wr='The <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkFineModel">BarkFineModel</a> forward method, overrides the <code>__call__</code> special method.',Ba,ne,Jn,Ct,zn,q,xt,Ca,X,Jt,xa,po,Zr='The <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCausalModel">BarkCausalModel</a> forward method, overrides the <code>__call__</code> special method.',Ja,ae,jn,zt,Un,N,jt,za,fo,Nr=`This is the configuration class to store the configuration of a <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCoarseModel">BarkCoarseModel</a>. It is used to instantiate the model
according to the specified arguments, defining the model architecture. Instantiating a configuration with the
defaults will yield a similar configuration to that of the Bark <a href="https://huggingface.co/suno/bark" rel="nofollow">suno/bark</a>
architecture.`,ja,ho,Pr=`Configuration objects inherit from <a href="/docs/transformers/pr_30962/en/main_classes/configuration#transformers.PretrainedConfig">PretrainedConfig</a> and can be used to control the model outputs. Read the
documentation from <a href="/docs/transformers/pr_30962/en/main_classes/configuration#transformers.PretrainedConfig">PretrainedConfig</a> for more information.`,Ua,re,In,Ut,Wn,P,It,Ia,uo,Fr=`This is the configuration class to store the configuration of a <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkFineModel">BarkFineModel</a>. It is used to instantiate the model
according to the specified arguments, defining the model architecture. Instantiating a configuration with the
defaults will yield a similar configuration to that of the Bark <a href="https://huggingface.co/suno/bark" rel="nofollow">suno/bark</a>
architecture.`,Wa,go,Gr=`Configuration objects inherit from <a href="/docs/transformers/pr_30962/en/main_classes/configuration#transformers.PretrainedConfig">PretrainedConfig</a> and can be used to control the model outputs. Read the
documentation from <a href="/docs/transformers/pr_30962/en/main_classes/configuration#transformers.PretrainedConfig">PretrainedConfig</a> for more information.`,Za,se,Zn,Wt,Nn,F,Zt,Na,_o,Hr=`This is the configuration class to store the configuration of a <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkSemanticModel">BarkSemanticModel</a>. It is used to instantiate the model
according to the specified arguments, defining the model architecture. Instantiating a configuration with the
defaults will yield a similar configuration to that of the Bark <a href="https://huggingface.co/suno/bark" rel="nofollow">suno/bark</a>
architecture.`,Pa,bo,Vr=`Configuration objects inherit from <a href="/docs/transformers/pr_30962/en/main_classes/configuration#transformers.PretrainedConfig">PretrainedConfig</a> and can be used to control the model outputs. Read the
documentation from <a href="/docs/transformers/pr_30962/en/main_classes/configuration#transformers.PretrainedConfig">PretrainedConfig</a> for more information.`,Fa,ie,Pn,Nt,Fn,wo,Gn;return v=new T({props:{title:"Bark",local:"bark",headingTag:"h1"}}),M=new T({props:{title:"Overview",local:"overview",headingTag:"h2"}}),ye=new T({props:{title:"Optimizing Bark",local:"optimizing-bark",headingTag:"h3"}}),Me=new T({props:{title:"Using half-precision",local:"using-half-precision",headingTag:"h4"}}),$e=new U({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEJhcmtNb2RlbCUwQWltcG9ydCUyMHRvcmNoJTBBJTBBZGV2aWNlJTIwJTNEJTIwJTIyY3VkYSUyMiUyMGlmJTIwdG9yY2guY3VkYS5pc19hdmFpbGFibGUoKSUyMGVsc2UlMjAlMjJjcHUlMjIlMEFtb2RlbCUyMCUzRCUyMEJhcmtNb2RlbC5mcm9tX3ByZXRyYWluZWQoJTIyc3VubyUyRmJhcmstc21hbGwlMjIlMkMlMjB0b3JjaF9kdHlwZSUzRHRvcmNoLmZsb2F0MTYpLnRvKGRldmljZSk=",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> BarkModel
<span class="hljs-keyword">import</span> torch

device = <span class="hljs-string">&quot;cuda&quot;</span> <span class="hljs-keyword">if</span> torch.cuda.is_available() <span class="hljs-keyword">else</span> <span class="hljs-string">&quot;cpu&quot;</span>
model = BarkModel.from_pretrained(<span class="hljs-string">&quot;suno/bark-small&quot;</span>, torch_dtype=torch.float16).to(device)`,wrap:!1}}),Te=new T({props:{title:"Using CPU offload",local:"using-cpu-offload",headingTag:"h4"}}),xe=new U({props:{code:"bW9kZWwuZW5hYmxlX2NwdV9vZmZsb2FkKCk=",highlighted:"model.enable_cpu_offload()",wrap:!1}}),ze=new T({props:{title:"Using Better Transformer",local:"using-better-transformer",headingTag:"h4"}}),Ue=new U({props:{code:"bW9kZWwlMjAlM0QlMjAlMjBtb2RlbC50b19iZXR0ZXJ0cmFuc2Zvcm1lcigp",highlighted:"model =  model.to_bettertransformer()",wrap:!1}}),We=new T({props:{title:"Using Flash Attention 2",local:"using-flash-attention-2",headingTag:"h4"}}),Ne=new T({props:{title:"Installation",local:"installation",headingTag:"h5"}}),Ge=new U({props:{code:"cGlwJTIwaW5zdGFsbCUyMC1VJTIwZmxhc2gtYXR0biUyMC0tbm8tYnVpbGQtaXNvbGF0aW9u",highlighted:"pip install -U flash-attn --no-build-isolation",wrap:!1}}),He=new T({props:{title:"Usage",local:"usage",headingTag:"h5"}}),Le=new U({props:{code:"bW9kZWwlMjAlM0QlMjBCYXJrTW9kZWwuZnJvbV9wcmV0cmFpbmVkKCUyMnN1bm8lMkZiYXJrLXNtYWxsJTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5mbG9hdDE2JTJDJTIwYXR0bl9pbXBsZW1lbnRhdGlvbiUzRCUyMmZsYXNoX2F0dGVudGlvbl8yJTIyKS50byhkZXZpY2Up",highlighted:'model = BarkModel.from_pretrained(<span class="hljs-string">&quot;suno/bark-small&quot;</span>, torch_dtype=torch.float16, attn_implementation=<span class="hljs-string">&quot;flash_attention_2&quot;</span>).to(device)',wrap:!1}}),Se=new T({props:{title:"Performance comparison",local:"performance-comparison",headingTag:"h5"}}),Ee=new T({props:{title:"Combining optimization techniques",local:"combining-optimization-techniques",headingTag:"h4"}}),De=new U({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEJhcmtNb2RlbCUwQWltcG9ydCUyMHRvcmNoJTBBJTBBZGV2aWNlJTIwJTNEJTIwJTIyY3VkYSUyMiUyMGlmJTIwdG9yY2guY3VkYS5pc19hdmFpbGFibGUoKSUyMGVsc2UlMjAlMjJjcHUlMjIlMEElMEElMjMlMjBsb2FkJTIwaW4lMjBmcDE2JTIwYW5kJTIwdXNlJTIwRmxhc2glMjBBdHRlbnRpb24lMjAyJTBBbW9kZWwlMjAlM0QlMjBCYXJrTW9kZWwuZnJvbV9wcmV0cmFpbmVkKCUyMnN1bm8lMkZiYXJrLXNtYWxsJTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5mbG9hdDE2JTJDJTIwYXR0bl9pbXBsZW1lbnRhdGlvbiUzRCUyMmZsYXNoX2F0dGVudGlvbl8yJTIyKS50byhkZXZpY2UpJTBBJTBBJTIzJTIwZW5hYmxlJTIwQ1BVJTIwb2ZmbG9hZCUwQW1vZGVsLmVuYWJsZV9jcHVfb2ZmbG9hZCgp",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> BarkModel
<span class="hljs-keyword">import</span> torch

device = <span class="hljs-string">&quot;cuda&quot;</span> <span class="hljs-keyword">if</span> torch.cuda.is_available() <span class="hljs-keyword">else</span> <span class="hljs-string">&quot;cpu&quot;</span>

<span class="hljs-comment"># load in fp16 and use Flash Attention 2</span>
model = BarkModel.from_pretrained(<span class="hljs-string">&quot;suno/bark-small&quot;</span>, torch_dtype=torch.float16, attn_implementation=<span class="hljs-string">&quot;flash_attention_2&quot;</span>).to(device)

<span class="hljs-comment"># enable CPU offload</span>
model.enable_cpu_offload()`,wrap:!1}}),Oe=new T({props:{title:"Usage tips",local:"usage-tips",headingTag:"h3"}}),Ke=new U({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEF1dG9Qcm9jZXNzb3IlMkMlMjBCYXJrTW9kZWwlMEElMEFwcm9jZXNzb3IlMjAlM0QlMjBBdXRvUHJvY2Vzc29yLmZyb21fcHJldHJhaW5lZCglMjJzdW5vJTJGYmFyayUyMiklMEFtb2RlbCUyMCUzRCUyMEJhcmtNb2RlbC5mcm9tX3ByZXRyYWluZWQoJTIyc3VubyUyRmJhcmslMjIpJTBBJTBBdm9pY2VfcHJlc2V0JTIwJTNEJTIwJTIydjIlMkZlbl9zcGVha2VyXzYlMjIlMEElMEFpbnB1dHMlMjAlM0QlMjBwcm9jZXNzb3IoJTIySGVsbG8lMkMlMjBteSUyMGRvZyUyMGlzJTIwY3V0ZSUyMiUyQyUyMHZvaWNlX3ByZXNldCUzRHZvaWNlX3ByZXNldCklMEElMEFhdWRpb19hcnJheSUyMCUzRCUyMG1vZGVsLmdlbmVyYXRlKCoqaW5wdXRzKSUwQWF1ZGlvX2FycmF5JTIwJTNEJTIwYXVkaW9fYXJyYXkuY3B1KCkubnVtcHkoKS5zcXVlZXplKCk=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoProcessor, BarkModel

<span class="hljs-meta">&gt;&gt;&gt; </span>processor = AutoProcessor.from_pretrained(<span class="hljs-string">&quot;suno/bark&quot;</span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>model = BarkModel.from_pretrained(<span class="hljs-string">&quot;suno/bark&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span>voice_preset = <span class="hljs-string">&quot;v2/en_speaker_6&quot;</span>

<span class="hljs-meta">&gt;&gt;&gt; </span>inputs = processor(<span class="hljs-string">&quot;Hello, my dog is cute&quot;</span>, voice_preset=voice_preset)

<span class="hljs-meta">&gt;&gt;&gt; </span>audio_array = model.generate(**inputs)
<span class="hljs-meta">&gt;&gt;&gt; </span>audio_array = audio_array.cpu().numpy().squeeze()`,wrap:!1}}),tt=new U({props:{code:"JTIzJTIwTXVsdGlsaW5ndWFsJTIwc3BlZWNoJTIwLSUyMHNpbXBsaWZpZWQlMjBDaGluZXNlJTBBaW5wdXRzJTIwJTNEJTIwcHJvY2Vzc29yKCUyMiVFNiU4MyU4QSVFNCVCQSVCQSVFNyU5QSU4NCVFRiVCQyU4MSVFNiU4OCU5MSVFNCVCQyU5QSVFOCVBRiVCNCVFNCVCOCVBRCVFNiU5NiU4NyUyMiklMEElMEElMjMlMjBNdWx0aWxpbmd1YWwlMjBzcGVlY2glMjAtJTIwRnJlbmNoJTIwLSUyMGxldCdzJTIwdXNlJTIwYSUyMHZvaWNlX3ByZXNldCUyMGFzJTIwd2VsbCUwQWlucHV0cyUyMCUzRCUyMHByb2Nlc3NvciglMjJJbmNyb3lhYmxlISUyMEplJTIwcGV1eCUyMGclQzMlQTluJUMzJUE5cmVyJTIwZHUlMjBzb24uJTIyJTJDJTIwdm9pY2VfcHJlc2V0JTNEJTIyZnJfc3BlYWtlcl81JTIyKSUwQSUwQSUyMyUyMEJhcmslMjBjYW4lMjBhbHNvJTIwZ2VuZXJhdGUlMjBtdXNpYy4lMjBZb3UlMjBjYW4lMjBoZWxwJTIwaXQlMjBvdXQlMjBieSUyMGFkZGluZyUyMG11c2ljJTIwbm90ZXMlMjBhcm91bmQlMjB5b3VyJTIwbHlyaWNzLiUwQWlucHV0cyUyMCUzRCUyMHByb2Nlc3NvciglMjIlRTIlOTklQUElMjBIZWxsbyUyQyUyMG15JTIwZG9nJTIwaXMlMjBjdXRlJTIwJUUyJTk5JUFBJTIyKSUwQSUwQWF1ZGlvX2FycmF5JTIwJTNEJTIwbW9kZWwuZ2VuZXJhdGUoKippbnB1dHMpJTBBYXVkaW9fYXJyYXklMjAlM0QlMjBhdWRpb19hcnJheS5jcHUoKS5udW1weSgpLnNxdWVlemUoKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Multilingual speech - simplified Chinese</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>inputs = processor(<span class="hljs-string">&quot;惊人的！我会说中文&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Multilingual speech - French - let&#x27;s use a voice_preset as well</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>inputs = processor(<span class="hljs-string">&quot;Incroyable! Je peux générer du son.&quot;</span>, voice_preset=<span class="hljs-string">&quot;fr_speaker_5&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Bark can also generate music. You can help it out by adding music notes around your lyrics.</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>inputs = processor(<span class="hljs-string">&quot;♪ Hello, my dog is cute ♪&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span>audio_array = model.generate(**inputs)
<span class="hljs-meta">&gt;&gt;&gt; </span>audio_array = audio_array.cpu().numpy().squeeze()`,wrap:!1}}),nt=new U({props:{code:"JTIzJTIwQWRkaW5nJTIwbm9uLXNwZWVjaCUyMGN1ZXMlMjB0byUyMHRoZSUyMGlucHV0JTIwdGV4dCUwQWlucHV0cyUyMCUzRCUyMHByb2Nlc3NvciglMjJIZWxsbyUyMHVoJTIwLi4uJTIwJTVCY2xlYXJzJTIwdGhyb2F0JTVEJTJDJTIwbXklMjBkb2clMjBpcyUyMGN1dGUlMjAlNUJsYXVnaHRlciU1RCUyMiklMEElMEFhdWRpb19hcnJheSUyMCUzRCUyMG1vZGVsLmdlbmVyYXRlKCoqaW5wdXRzKSUwQWF1ZGlvX2FycmF5JTIwJTNEJTIwYXVkaW9fYXJyYXkuY3B1KCkubnVtcHkoKS5zcXVlZXplKCk=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># Adding non-speech cues to the input text</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>inputs = processor(<span class="hljs-string">&quot;Hello uh ... [clears throat], my dog is cute [laughter]&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span>audio_array = model.generate(**inputs)
<span class="hljs-meta">&gt;&gt;&gt; </span>audio_array = audio_array.cpu().numpy().squeeze()`,wrap:!1}}),rt=new U({props:{code:"ZnJvbSUyMHNjaXB5LmlvLndhdmZpbGUlMjBpbXBvcnQlMjB3cml0ZSUyMGFzJTIwd3JpdGVfd2F2JTBBJTBBJTIzJTIwc2F2ZSUyMGF1ZGlvJTIwdG8lMjBkaXNrJTJDJTIwYnV0JTIwZmlyc3QlMjB0YWtlJTIwdGhlJTIwc2FtcGxlJTIwcmF0ZSUyMGZyb20lMjB0aGUlMjBtb2RlbCUyMGNvbmZpZyUwQXNhbXBsZV9yYXRlJTIwJTNEJTIwbW9kZWwuZ2VuZXJhdGlvbl9jb25maWcuc2FtcGxlX3JhdGUlMEF3cml0ZV93YXYoJTIyYmFya19nZW5lcmF0aW9uLndhdiUyMiUyQyUyMHNhbXBsZV9yYXRlJTJDJTIwYXVkaW9fYXJyYXkp",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> scipy.io.wavfile <span class="hljs-keyword">import</span> write <span class="hljs-keyword">as</span> write_wav

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># save audio to disk, but first take the sample rate from the model config</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>sample_rate = model.generation_config.sample_rate
<span class="hljs-meta">&gt;&gt;&gt; </span>write_wav(<span class="hljs-string">&quot;bark_generation.wav&quot;</span>, sample_rate, audio_array)`,wrap:!1}}),st=new T({props:{title:"BarkConfig",local:"transformers.BarkConfig",headingTag:"h2"}}),it=new C({props:{name:"class transformers.BarkConfig",anchor:"transformers.BarkConfig",parameters:[{name:"semantic_config",val:": Dict = None"},{name:"coarse_acoustics_config",val:": Dict = None"},{name:"fine_acoustics_config",val:": Dict = None"},{name:"codec_config",val:": Dict = None"},{name:"initializer_range",val:" = 0.02"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.BarkConfig.semantic_config",description:`<strong>semantic_config</strong> (<a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkSemanticConfig">BarkSemanticConfig</a>, <em>optional</em>) &#x2014;
Configuration of the underlying semantic sub-model.`,name:"semantic_config"},{anchor:"transformers.BarkConfig.coarse_acoustics_config",description:`<strong>coarse_acoustics_config</strong> (<a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCoarseConfig">BarkCoarseConfig</a>, <em>optional</em>) &#x2014;
Configuration of the underlying coarse acoustics sub-model.`,name:"coarse_acoustics_config"},{anchor:"transformers.BarkConfig.fine_acoustics_config",description:`<strong>fine_acoustics_config</strong> (<a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkFineConfig">BarkFineConfig</a>, <em>optional</em>) &#x2014;
Configuration of the underlying fine acoustics sub-model.`,name:"fine_acoustics_config"},{anchor:"transformers.BarkConfig.codec_config",description:`<strong>codec_config</strong> (<a href="/docs/transformers/pr_30962/en/model_doc/auto#transformers.AutoConfig">AutoConfig</a>, <em>optional</em>) &#x2014;
Configuration of the underlying codec sub-model.</p>
<p>Example &#x2014;`,name:"codec_config"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/configuration_bark.py#L214"}}),lt=new C({props:{name:"from_sub_model_configs",anchor:"transformers.BarkConfig.from_sub_model_configs",parameters:[{name:"semantic_config",val:": BarkSemanticConfig"},{name:"coarse_acoustics_config",val:": BarkCoarseConfig"},{name:"fine_acoustics_config",val:": BarkFineConfig"},{name:"codec_config",val:": PretrainedConfig"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/configuration_bark.py#L304",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>An instance of a configuration object</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><a
  href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkConfig"
>BarkConfig</a></p>
`}}),dt=new T({props:{title:"BarkProcessor",local:"transformers.BarkProcessor",headingTag:"h2"}}),ct=new C({props:{name:"class transformers.BarkProcessor",anchor:"transformers.BarkProcessor",parameters:[{name:"tokenizer",val:""},{name:"speaker_embeddings",val:" = None"}],parametersDescription:[{anchor:"transformers.BarkProcessor.tokenizer",description:`<strong>tokenizer</strong> (<a href="/docs/transformers/pr_30962/en/main_classes/tokenizer#transformers.PreTrainedTokenizer">PreTrainedTokenizer</a>) &#x2014;
An instance of <a href="/docs/transformers/pr_30962/en/main_classes/tokenizer#transformers.PreTrainedTokenizer">PreTrainedTokenizer</a>.`,name:"tokenizer"},{anchor:"transformers.BarkProcessor.speaker_embeddings",description:`<strong>speaker_embeddings</strong> (<code>Dict[Dict[str]]</code>, <em>optional</em>) &#x2014;
Optional nested speaker embeddings dictionary. The first level contains voice preset names (e.g
<code>&quot;en_speaker_4&quot;</code>). The second level contains <code>&quot;semantic_prompt&quot;</code>, <code>&quot;coarse_prompt&quot;</code> and <code>&quot;fine_prompt&quot;</code>
embeddings. The values correspond to the path of the corresponding <code>np.ndarray</code>. See
<a href="https://suno-ai.notion.site/8b8e8749ed514b0cbf3f699013548683?v=bc67cff786b04b50b3ceb756fd05f68c" rel="nofollow">here</a> for
a list of <code>voice_preset_names</code>.`,name:"speaker_embeddings"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/processing_bark.py#L35"}}),mt=new C({props:{name:"__call__",anchor:"transformers.BarkProcessor.__call__",parameters:[{name:"text",val:" = None"},{name:"voice_preset",val:" = None"},{name:"return_tensors",val:" = 'pt'"},{name:"max_length",val:" = 256"},{name:"add_special_tokens",val:" = False"},{name:"return_attention_mask",val:" = True"},{name:"return_token_type_ids",val:" = False"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.BarkProcessor.__call__.text",description:`<strong>text</strong> (<code>str</code>, <code>List[str]</code>, <code>List[List[str]]</code>) &#x2014;
The sequence or batch of sequences to be encoded. Each sequence can be a string or a list of strings
(pretokenized string). If the sequences are provided as list of strings (pretokenized), you must set
<code>is_split_into_words=True</code> (to lift the ambiguity with a batch of sequences).`,name:"text"},{anchor:"transformers.BarkProcessor.__call__.voice_preset",description:`<strong>voice_preset</strong> (<code>str</code>, <code>Dict[np.ndarray]</code>) &#x2014;
The voice preset, i.e the speaker embeddings. It can either be a valid voice_preset name, e.g
<code>&quot;en_speaker_1&quot;</code>, or directly a dictionnary of <code>np.ndarray</code> embeddings for each submodel of <code>Bark</code>. Or
it can be a valid file name of a local <code>.npz</code> single voice preset.`,name:"voice_preset"},{anchor:"transformers.BarkProcessor.__call__.return_tensors",description:`<strong>return_tensors</strong> (<code>str</code> or <a href="/docs/transformers/pr_30962/en/internal/file_utils#transformers.TensorType">TensorType</a>, <em>optional</em>) &#x2014;
If set, will return tensors of a particular framework. Acceptable values are:</p>
<ul>
<li><code>&apos;pt&apos;</code>: Return PyTorch <code>torch.Tensor</code> objects.</li>
<li><code>&apos;np&apos;</code>: Return NumPy <code>np.ndarray</code> objects.</li>
</ul>`,name:"return_tensors"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/processing_bark.py#L219",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>A tuple composed of a <a
  href="/docs/transformers/pr_30962/en/main_classes/tokenizer#transformers.BatchEncoding"
>BatchEncoding</a>, i.e the output of the
<code>tokenizer</code> and a <a
  href="/docs/transformers/pr_30962/en/main_classes/feature_extractor#transformers.BatchFeature"
>BatchFeature</a>, i.e the voice preset with the right tensors type.</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p>Tuple(<a
  href="/docs/transformers/pr_30962/en/main_classes/tokenizer#transformers.BatchEncoding"
>BatchEncoding</a>, <a
  href="/docs/transformers/pr_30962/en/main_classes/feature_extractor#transformers.BatchFeature"
>BatchFeature</a>)</p>
`}}),pt=new C({props:{name:"from_pretrained",anchor:"transformers.BarkProcessor.from_pretrained",parameters:[{name:"pretrained_processor_name_or_path",val:""},{name:"speaker_embeddings_dict_path",val:" = 'speaker_embeddings_path.json'"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.BarkProcessor.from_pretrained.pretrained_model_name_or_path",description:`<strong>pretrained_model_name_or_path</strong> (<code>str</code> or <code>os.PathLike</code>) &#x2014;
This can be either:</p>
<ul>
<li>a string, the <em>model id</em> of a pretrained <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkProcessor">BarkProcessor</a> hosted inside a model repo on
huggingface.co.</li>
<li>a path to a <em>directory</em> containing a processor saved using the <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkProcessor.save_pretrained">save_pretrained()</a>
method, e.g., <code>./my_model_directory/</code>.</li>
</ul>`,name:"pretrained_model_name_or_path"},{anchor:"transformers.BarkProcessor.from_pretrained.speaker_embeddings_dict_path",description:`<strong>speaker_embeddings_dict_path</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;speaker_embeddings_path.json&quot;</code>) &#x2014;
The name of the <code>.json</code> file containing the speaker_embeddings dictionnary located in
<code>pretrained_model_name_or_path</code>. If <code>None</code>, no speaker_embeddings is loaded.
**kwargs &#x2014;
Additional keyword arguments passed along to both
<code>~tokenization_utils_base.PreTrainedTokenizer.from_pretrained</code>.`,name:"speaker_embeddings_dict_path"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/processing_bark.py#L65"}}),ft=new C({props:{name:"save_pretrained",anchor:"transformers.BarkProcessor.save_pretrained",parameters:[{name:"save_directory",val:""},{name:"speaker_embeddings_dict_path",val:" = 'speaker_embeddings_path.json'"},{name:"speaker_embeddings_directory",val:" = 'speaker_embeddings'"},{name:"push_to_hub",val:": bool = False"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.BarkProcessor.save_pretrained.save_directory",description:`<strong>save_directory</strong> (<code>str</code> or <code>os.PathLike</code>) &#x2014;
Directory where the tokenizer files and the speaker embeddings will be saved (directory will be created
if it does not exist).`,name:"save_directory"},{anchor:"transformers.BarkProcessor.save_pretrained.speaker_embeddings_dict_path",description:`<strong>speaker_embeddings_dict_path</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;speaker_embeddings_path.json&quot;</code>) &#x2014;
The name of the <code>.json</code> file that will contains the speaker_embeddings nested path dictionnary, if it
exists, and that will be located in <code>pretrained_model_name_or_path/speaker_embeddings_directory</code>.`,name:"speaker_embeddings_dict_path"},{anchor:"transformers.BarkProcessor.save_pretrained.speaker_embeddings_directory",description:`<strong>speaker_embeddings_directory</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;speaker_embeddings/&quot;</code>) &#x2014;
The name of the folder in which the speaker_embeddings arrays will be saved.`,name:"speaker_embeddings_directory"},{anchor:"transformers.BarkProcessor.save_pretrained.push_to_hub",description:`<strong>push_to_hub</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not to push your model to the Hugging Face model hub after saving it. You can specify the
repository you want to push to with <code>repo_id</code> (will default to the name of <code>save_directory</code> in your
namespace).
kwargs &#x2014;
Additional key word arguments passed along to the <a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.utils.PushToHubMixin.push_to_hub">push_to_hub()</a> method.`,name:"push_to_hub"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/processing_bark.py#L118"}}),ht=new T({props:{title:"BarkModel",local:"transformers.BarkModel",headingTag:"h2"}}),ut=new C({props:{name:"class transformers.BarkModel",anchor:"transformers.BarkModel",parameters:[{name:"config",val:""}],parametersDescription:[{anchor:"transformers.BarkModel.config",description:`<strong>config</strong> (<a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkConfig">BarkConfig</a>) &#x2014;
Model configuration class with all the parameters of the model. Initializing with a config file does not
load the weights associated with the model, only the configuration. Check out the
<a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.PreTrainedModel.from_pretrained">from_pretrained()</a> method to load the model weights.`,name:"config"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L1520"}}),gt=new C({props:{name:"generate",anchor:"transformers.BarkModel.generate",parameters:[{name:"input_ids",val:": Optional = None"},{name:"history_prompt",val:": Optional = None"},{name:"return_output_lengths",val:": Optional = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.BarkModel.generate.input_ids",description:`<strong>input_ids</strong> (<code>Optional[torch.Tensor]</code> of shape (batch_size, seq_len), <em>optional</em>) &#x2014;
Input ids. Will be truncated up to 256 tokens. Note that the output audios will be as long as the
longest generation among the batch.`,name:"input_ids"},{anchor:"transformers.BarkModel.generate.history_prompt",description:`<strong>history_prompt</strong> (<code>Optional[Dict[str,torch.Tensor]]</code>, <em>optional</em>) &#x2014;
Optional <code>Bark</code> speaker prompt. Note that for now, this model takes only one speaker prompt per batch.`,name:"history_prompt"},{anchor:"transformers.BarkModel.generate.kwargs",description:`<strong>kwargs</strong> (<em>optional</em>) &#x2014; Remaining dictionary of keyword arguments. Keyword arguments are of two types:</p>
<ul>
<li>Without a prefix, they will be entered as <code>**kwargs</code> for the <code>generate</code> method of each sub-model.</li>
<li>With a <em>semantic_</em>, <em>coarse_</em>, <em>fine_</em> prefix, they will be input for the <code>generate</code> method of the
semantic, coarse and fine respectively. It has the priority over the keywords without a prefix.</li>
</ul>
<p>This means you can, for example, specify a generation strategy for all sub-models except one.`,name:"kwargs"},{anchor:"transformers.BarkModel.generate.return_output_lengths",description:`<strong>return_output_lengths</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the waveform lengths. Useful when batching.`,name:"return_output_lengths"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L1628",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<ul>
<li><strong>audio_waveform</strong> (<code>torch.Tensor</code> of shape (batch_size, seq_len)): Generated audio waveform.
When <code>return_output_lengths=True</code>:
Returns a tuple made of:</li>
<li><strong>audio_waveform</strong> (<code>torch.Tensor</code> of shape (batch_size, seq_len)): Generated audio waveform.</li>
<li><strong>output_lengths</strong> (<code>torch.Tensor</code> of shape (batch_size)): The length of each waveform in the batch</li>
</ul>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p>By default</p>
`}}),K=new Sn({props:{anchor:"transformers.BarkModel.generate.example",$$slots:{default:[Dr]},$$scope:{ctx:J}}}),_t=new C({props:{name:"enable_cpu_offload",anchor:"transformers.BarkModel.enable_cpu_offload",parameters:[{name:"gpu_id",val:": Optional = 0"}],parametersDescription:[{anchor:"transformers.BarkModel.enable_cpu_offload.gpu_id",description:`<strong>gpu_id</strong> (<code>int</code>, <em>optional</em>, defaults to 0) &#x2014;
GPU id on which the sub-models will be loaded and offloaded.`,name:"gpu_id"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L1571"}}),bt=new T({props:{title:"BarkSemanticModel",local:"transformers.BarkSemanticModel",headingTag:"h2"}}),kt=new C({props:{name:"class transformers.BarkSemanticModel",anchor:"transformers.BarkSemanticModel",parameters:[{name:"config",val:""}],parametersDescription:[{anchor:"transformers.BarkSemanticModel.config",description:`<strong>config</strong> (<a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkSemanticConfig">BarkSemanticConfig</a>) &#x2014;
Model configuration class with all the parameters of the model. Initializing with a config file does not
load the weights associated with the model, only the configuration. Check out the
<a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.PreTrainedModel.from_pretrained">from_pretrained()</a> method to load the model weights.`,name:"config"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L804"}}),yt=new C({props:{name:"forward",anchor:"transformers.BarkSemanticModel.forward",parameters:[{name:"input_ids",val:": Optional = None"},{name:"past_key_values",val:": Optional = None"},{name:"attention_mask",val:": Optional = None"},{name:"position_ids",val:": Optional = None"},{name:"head_mask",val:": Optional = None"},{name:"labels",val:": Optional = None"},{name:"input_embeds",val:": Optional = None"},{name:"use_cache",val:": Optional = None"},{name:"output_attentions",val:": Optional = None"},{name:"output_hidden_states",val:": Optional = None"},{name:"return_dict",val:": Optional = None"}],parametersDescription:[{anchor:"transformers.BarkSemanticModel.forward.input_ids",description:`<strong>input_ids</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length)</code>) &#x2014;
Indices of input sequence tokens in the vocabulary. Padding will be ignored by default should you provide
it. Indices can be obtained using <a href="/docs/transformers/pr_30962/en/model_doc/auto#transformers.AutoTokenizer">AutoTokenizer</a>. See <a href="/docs/transformers/pr_30962/en/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode">PreTrainedTokenizer.encode()</a> and
<a href="/docs/transformers/pr_30962/en/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__">PreTrainedTokenizer.<strong>call</strong>()</a> for details. <a href="../glossary#input-ids">What are input IDs?</a>`,name:"input_ids"},{anchor:"transformers.BarkSemanticModel.forward.past_key_values",description:`<strong>past_key_values</strong> (<code>tuple(tuple(torch.FloatTensor))</code>, <em>optional</em>, returned when <code>use_cache</code> is passed or when <code>config.use_cache=True</code>) &#x2014;
Tuple of <code>tuple(torch.FloatTensor)</code> of length <code>config.n_layers</code>, with each tuple having 2 tensors of shape
<code>(batch_size, num_heads, sequence_length, embed_size_per_head)</code>.</p>
<p>Contains pre-computed hidden-states (key and values in the self-attention blocks) that can be used (see
<code>past_key_values</code> input) to speed up sequential decoding.</p>
<p>If <code>past_key_values</code> are used, the user can optionally input only the last <code>decoder_input_ids</code> (those that
don&#x2019;t have their past key value states given to this model) of shape <code>(batch_size, 1)</code> instead of all
<code>input_ids</code> of shape <code>(batch_size, sequence_length)</code>.`,name:"past_key_values"},{anchor:"transformers.BarkSemanticModel.forward.attention_mask",description:`<strong>attention_mask</strong> (<code>torch.Tensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014;
Mask to avoid performing attention on padding token indices. Mask values selected in <code>[0, 1]</code>:</p>
<ul>
<li>1 for tokens that are <strong>not masked</strong>,</li>
<li>0 for tokens that are <strong>masked</strong>.</li>
</ul>
<p><a href="../glossary#attention-mask">What are attention masks?</a>`,name:"attention_mask"},{anchor:"transformers.BarkSemanticModel.forward.position_ids",description:`<strong>position_ids</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014;
Indices of positions of each input sequence tokens in the position embeddings. Selected in the range <code>[0, config.max_position_embeddings - 1]</code>.</p>
<p><a href="../glossary#position-ids">What are position IDs?</a>`,name:"position_ids"},{anchor:"transformers.BarkSemanticModel.forward.head_mask",description:`<strong>head_mask</strong> (<code>torch.Tensor</code> of shape <code>(encoder_layers, encoder_attention_heads)</code>, <em>optional</em>) &#x2014;
Mask to nullify selected heads of the attention modules in the encoder. Mask values selected in <code>[0, 1]</code>:</p>
<ul>
<li>1 indicates the head is <strong>not masked</strong>,</li>
<li>0 indicates the head is <strong>masked</strong>.</li>
</ul>`,name:"head_mask"},{anchor:"transformers.BarkSemanticModel.forward.input_embeds",description:`<strong>input_embeds</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, input_sequence_length, hidden_size)</code>, <em>optional</em>) &#x2014;
Optionally, instead of passing <code>input_ids</code> you can choose to directly pass an embedded representation.
Here, due to <code>Bark</code> particularities, if <code>past_key_values</code> is used, <code>input_embeds</code> will be ignored and you
have to use <code>input_ids</code>. If <code>past_key_values</code> is not used and <code>use_cache</code> is set to <code>True</code>, <code>input_embeds</code>
is used in priority instead of <code>input_ids</code>.`,name:"input_embeds"},{anchor:"transformers.BarkSemanticModel.forward.use_cache",description:`<strong>use_cache</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
If set to <code>True</code>, <code>past_key_values</code> key value states are returned and can be used to speed up decoding (see
<code>past_key_values</code>).`,name:"use_cache"},{anchor:"transformers.BarkSemanticModel.forward.output_attentions",description:`<strong>output_attentions</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the attentions tensors of all attention layers. See <code>attentions</code> under returned
tensors for more detail.`,name:"output_attentions"},{anchor:"transformers.BarkSemanticModel.forward.output_hidden_states",description:`<strong>output_hidden_states</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the hidden states of all layers. See <code>hidden_states</code> under returned tensors for
more detail.`,name:"output_hidden_states"},{anchor:"transformers.BarkSemanticModel.forward.return_dict",description:`<strong>return_dict</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return a <a href="/docs/transformers/pr_30962/en/main_classes/output#transformers.utils.ModelOutput">ModelOutput</a> instead of a plain tuple.`,name:"return_dict"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L640"}}),te=new Ln({props:{$$slots:{default:[Qr]},$$scope:{ctx:J}}}),vt=new T({props:{title:"BarkCoarseModel",local:"transformers.BarkCoarseModel",headingTag:"h2"}}),Mt=new C({props:{name:"class transformers.BarkCoarseModel",anchor:"transformers.BarkCoarseModel",parameters:[{name:"config",val:""}],parametersDescription:[{anchor:"transformers.BarkCoarseModel.config",description:`<strong>config</strong> (<a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCoarseConfig">BarkCoarseConfig</a>) &#x2014;
Model configuration class with all the parameters of the model. Initializing with a config file does not
load the weights associated with the model, only the configuration. Check out the
<a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.PreTrainedModel.from_pretrained">from_pretrained()</a> method to load the model weights.`,name:"config"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L913"}}),wt=new C({props:{name:"forward",anchor:"transformers.BarkCoarseModel.forward",parameters:[{name:"input_ids",val:": Optional = None"},{name:"past_key_values",val:": Optional = None"},{name:"attention_mask",val:": Optional = None"},{name:"position_ids",val:": Optional = None"},{name:"head_mask",val:": Optional = None"},{name:"labels",val:": Optional = None"},{name:"input_embeds",val:": Optional = None"},{name:"use_cache",val:": Optional = None"},{name:"output_attentions",val:": Optional = None"},{name:"output_hidden_states",val:": Optional = None"},{name:"return_dict",val:": Optional = None"}],parametersDescription:[{anchor:"transformers.BarkCoarseModel.forward.input_ids",description:`<strong>input_ids</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length)</code>) &#x2014;
Indices of input sequence tokens in the vocabulary. Padding will be ignored by default should you provide
it. Indices can be obtained using <a href="/docs/transformers/pr_30962/en/model_doc/auto#transformers.AutoTokenizer">AutoTokenizer</a>. See <a href="/docs/transformers/pr_30962/en/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode">PreTrainedTokenizer.encode()</a> and
<a href="/docs/transformers/pr_30962/en/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__">PreTrainedTokenizer.<strong>call</strong>()</a> for details. <a href="../glossary#input-ids">What are input IDs?</a>`,name:"input_ids"},{anchor:"transformers.BarkCoarseModel.forward.past_key_values",description:`<strong>past_key_values</strong> (<code>tuple(tuple(torch.FloatTensor))</code>, <em>optional</em>, returned when <code>use_cache</code> is passed or when <code>config.use_cache=True</code>) &#x2014;
Tuple of <code>tuple(torch.FloatTensor)</code> of length <code>config.n_layers</code>, with each tuple having 2 tensors of shape
<code>(batch_size, num_heads, sequence_length, embed_size_per_head)</code>.</p>
<p>Contains pre-computed hidden-states (key and values in the self-attention blocks) that can be used (see
<code>past_key_values</code> input) to speed up sequential decoding.</p>
<p>If <code>past_key_values</code> are used, the user can optionally input only the last <code>decoder_input_ids</code> (those that
don&#x2019;t have their past key value states given to this model) of shape <code>(batch_size, 1)</code> instead of all
<code>input_ids</code> of shape <code>(batch_size, sequence_length)</code>.`,name:"past_key_values"},{anchor:"transformers.BarkCoarseModel.forward.attention_mask",description:`<strong>attention_mask</strong> (<code>torch.Tensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014;
Mask to avoid performing attention on padding token indices. Mask values selected in <code>[0, 1]</code>:</p>
<ul>
<li>1 for tokens that are <strong>not masked</strong>,</li>
<li>0 for tokens that are <strong>masked</strong>.</li>
</ul>
<p><a href="../glossary#attention-mask">What are attention masks?</a>`,name:"attention_mask"},{anchor:"transformers.BarkCoarseModel.forward.position_ids",description:`<strong>position_ids</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014;
Indices of positions of each input sequence tokens in the position embeddings. Selected in the range <code>[0, config.max_position_embeddings - 1]</code>.</p>
<p><a href="../glossary#position-ids">What are position IDs?</a>`,name:"position_ids"},{anchor:"transformers.BarkCoarseModel.forward.head_mask",description:`<strong>head_mask</strong> (<code>torch.Tensor</code> of shape <code>(encoder_layers, encoder_attention_heads)</code>, <em>optional</em>) &#x2014;
Mask to nullify selected heads of the attention modules in the encoder. Mask values selected in <code>[0, 1]</code>:</p>
<ul>
<li>1 indicates the head is <strong>not masked</strong>,</li>
<li>0 indicates the head is <strong>masked</strong>.</li>
</ul>`,name:"head_mask"},{anchor:"transformers.BarkCoarseModel.forward.input_embeds",description:`<strong>input_embeds</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, input_sequence_length, hidden_size)</code>, <em>optional</em>) &#x2014;
Optionally, instead of passing <code>input_ids</code> you can choose to directly pass an embedded representation.
Here, due to <code>Bark</code> particularities, if <code>past_key_values</code> is used, <code>input_embeds</code> will be ignored and you
have to use <code>input_ids</code>. If <code>past_key_values</code> is not used and <code>use_cache</code> is set to <code>True</code>, <code>input_embeds</code>
is used in priority instead of <code>input_ids</code>.`,name:"input_embeds"},{anchor:"transformers.BarkCoarseModel.forward.use_cache",description:`<strong>use_cache</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
If set to <code>True</code>, <code>past_key_values</code> key value states are returned and can be used to speed up decoding (see
<code>past_key_values</code>).`,name:"use_cache"},{anchor:"transformers.BarkCoarseModel.forward.output_attentions",description:`<strong>output_attentions</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the attentions tensors of all attention layers. See <code>attentions</code> under returned
tensors for more detail.`,name:"output_attentions"},{anchor:"transformers.BarkCoarseModel.forward.output_hidden_states",description:`<strong>output_hidden_states</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the hidden states of all layers. See <code>hidden_states</code> under returned tensors for
more detail.`,name:"output_hidden_states"},{anchor:"transformers.BarkCoarseModel.forward.return_dict",description:`<strong>return_dict</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return a <a href="/docs/transformers/pr_30962/en/main_classes/output#transformers.utils.ModelOutput">ModelOutput</a> instead of a plain tuple.`,name:"return_dict"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L640"}}),oe=new Ln({props:{$$slots:{default:[Or]},$$scope:{ctx:J}}}),$t=new T({props:{title:"BarkFineModel",local:"transformers.BarkFineModel",headingTag:"h2"}}),Tt=new C({props:{name:"class transformers.BarkFineModel",anchor:"transformers.BarkFineModel",parameters:[{name:"config",val:""}],parametersDescription:[{anchor:"transformers.BarkFineModel.config",description:`<strong>config</strong> (<a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkFineConfig">BarkFineConfig</a>) &#x2014;
Model configuration class with all the parameters of the model. Initializing with a config file does not
load the weights associated with the model, only the configuration. Check out the
<a href="/docs/transformers/pr_30962/en/main_classes/model#transformers.PreTrainedModel.from_pretrained">from_pretrained()</a> method to load the model weights.`,name:"config"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L1134"}}),Bt=new C({props:{name:"forward",anchor:"transformers.BarkFineModel.forward",parameters:[{name:"codebook_idx",val:": int"},{name:"input_ids",val:": Optional = None"},{name:"attention_mask",val:": Optional = None"},{name:"position_ids",val:": Optional = None"},{name:"head_mask",val:": Optional = None"},{name:"labels",val:": Optional = None"},{name:"input_embeds",val:": Optional = None"},{name:"output_attentions",val:": Optional = None"},{name:"output_hidden_states",val:": Optional = None"},{name:"return_dict",val:": Optional = None"}],parametersDescription:[{anchor:"transformers.BarkFineModel.forward.codebook_idx",description:`<strong>codebook_idx</strong> (<code>int</code>) &#x2014;
Index of the codebook that will be predicted.`,name:"codebook_idx"},{anchor:"transformers.BarkFineModel.forward.input_ids",description:`<strong>input_ids</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length, number_of_codebooks)</code>) &#x2014;
Indices of input sequence tokens in the vocabulary. Padding will be ignored by default should you provide
it. Initially, indices of the first two codebooks are obtained from the <code>coarse</code> sub-model. The rest is
predicted recursively by attending the previously predicted channels. The model predicts on windows of
length 1024.`,name:"input_ids"},{anchor:"transformers.BarkFineModel.forward.attention_mask",description:`<strong>attention_mask</strong> (<code>torch.Tensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014;
Mask to avoid performing attention on padding token indices. Mask values selected in <code>[0, 1]</code>:</p>
<ul>
<li>1 for tokens that are <strong>not masked</strong>,</li>
<li>0 for tokens that are <strong>masked</strong>.</li>
</ul>
<p><a href="../glossary#attention-mask">What are attention masks?</a>`,name:"attention_mask"},{anchor:"transformers.BarkFineModel.forward.position_ids",description:`<strong>position_ids</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014;
Indices of positions of each input sequence tokens in the position embeddings. Selected in the range <code>[0, config.max_position_embeddings - 1]</code>.</p>
<p><a href="../glossary#position-ids">What are position IDs?</a>`,name:"position_ids"},{anchor:"transformers.BarkFineModel.forward.head_mask",description:`<strong>head_mask</strong> (<code>torch.Tensor</code> of shape <code>(encoder_layers, encoder_attention_heads)</code>, <em>optional</em>) &#x2014;
Mask to nullify selected heads of the attention modules in the encoder. Mask values selected in <code>[0, 1]</code>:</p>
<ul>
<li>1 indicates the head is <strong>not masked</strong>,</li>
<li>0 indicates the head is <strong>masked</strong>.</li>
</ul>`,name:"head_mask"},{anchor:"transformers.BarkFineModel.forward.labels",description:"<strong>labels</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014; NOT IMPLEMENTED YET.",name:"labels"},{anchor:"transformers.BarkFineModel.forward.input_embeds",description:`<strong>input_embeds</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, input_sequence_length, hidden_size)</code>, <em>optional</em>) &#x2014;
Optionally, instead of passing <code>input_ids</code> you can choose to directly pass an embedded representation. If
<code>past_key_values</code> is used, optionally only the last <code>input_embeds</code> have to be input (see
<code>past_key_values</code>). This is useful if you want more control over how to convert <code>input_ids</code> indices into
associated vectors than the model&#x2019;s internal embedding lookup matrix.`,name:"input_embeds"},{anchor:"transformers.BarkFineModel.forward.output_attentions",description:`<strong>output_attentions</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the attentions tensors of all attention layers. See <code>attentions</code> under returned
tensors for more detail.`,name:"output_attentions"},{anchor:"transformers.BarkFineModel.forward.output_hidden_states",description:`<strong>output_hidden_states</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the hidden states of all layers. See <code>hidden_states</code> under returned tensors for
more detail.`,name:"output_hidden_states"},{anchor:"transformers.BarkFineModel.forward.return_dict",description:`<strong>return_dict</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return a <a href="/docs/transformers/pr_30962/en/main_classes/output#transformers.utils.ModelOutput">ModelOutput</a> instead of a plain tuple.`,name:"return_dict"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L1272"}}),ne=new Ln({props:{$$slots:{default:[Ar]},$$scope:{ctx:J}}}),Ct=new T({props:{title:"BarkCausalModel",local:"transformers.BarkCausalModel",headingTag:"h2"}}),xt=new C({props:{name:"class transformers.BarkCausalModel",anchor:"transformers.BarkCausalModel",parameters:[{name:"config",val:""}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L549"}}),Jt=new C({props:{name:"forward",anchor:"transformers.BarkCausalModel.forward",parameters:[{name:"input_ids",val:": Optional = None"},{name:"past_key_values",val:": Optional = None"},{name:"attention_mask",val:": Optional = None"},{name:"position_ids",val:": Optional = None"},{name:"head_mask",val:": Optional = None"},{name:"labels",val:": Optional = None"},{name:"input_embeds",val:": Optional = None"},{name:"use_cache",val:": Optional = None"},{name:"output_attentions",val:": Optional = None"},{name:"output_hidden_states",val:": Optional = None"},{name:"return_dict",val:": Optional = None"}],parametersDescription:[{anchor:"transformers.BarkCausalModel.forward.input_ids",description:`<strong>input_ids</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length)</code>) &#x2014;
Indices of input sequence tokens in the vocabulary. Padding will be ignored by default should you provide
it. Indices can be obtained using <a href="/docs/transformers/pr_30962/en/model_doc/auto#transformers.AutoTokenizer">AutoTokenizer</a>. See <a href="/docs/transformers/pr_30962/en/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.encode">PreTrainedTokenizer.encode()</a> and
<a href="/docs/transformers/pr_30962/en/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__">PreTrainedTokenizer.<strong>call</strong>()</a> for details. <a href="../glossary#input-ids">What are input IDs?</a>`,name:"input_ids"},{anchor:"transformers.BarkCausalModel.forward.past_key_values",description:`<strong>past_key_values</strong> (<code>tuple(tuple(torch.FloatTensor))</code>, <em>optional</em>, returned when <code>use_cache</code> is passed or when <code>config.use_cache=True</code>) &#x2014;
Tuple of <code>tuple(torch.FloatTensor)</code> of length <code>config.n_layers</code>, with each tuple having 2 tensors of shape
<code>(batch_size, num_heads, sequence_length, embed_size_per_head)</code>.</p>
<p>Contains pre-computed hidden-states (key and values in the self-attention blocks) that can be used (see
<code>past_key_values</code> input) to speed up sequential decoding.</p>
<p>If <code>past_key_values</code> are used, the user can optionally input only the last <code>decoder_input_ids</code> (those that
don&#x2019;t have their past key value states given to this model) of shape <code>(batch_size, 1)</code> instead of all
<code>input_ids</code> of shape <code>(batch_size, sequence_length)</code>.`,name:"past_key_values"},{anchor:"transformers.BarkCausalModel.forward.attention_mask",description:`<strong>attention_mask</strong> (<code>torch.Tensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014;
Mask to avoid performing attention on padding token indices. Mask values selected in <code>[0, 1]</code>:</p>
<ul>
<li>1 for tokens that are <strong>not masked</strong>,</li>
<li>0 for tokens that are <strong>masked</strong>.</li>
</ul>
<p><a href="../glossary#attention-mask">What are attention masks?</a>`,name:"attention_mask"},{anchor:"transformers.BarkCausalModel.forward.position_ids",description:`<strong>position_ids</strong> (<code>torch.LongTensor</code> of shape <code>(batch_size, sequence_length)</code>, <em>optional</em>) &#x2014;
Indices of positions of each input sequence tokens in the position embeddings. Selected in the range <code>[0, config.max_position_embeddings - 1]</code>.</p>
<p><a href="../glossary#position-ids">What are position IDs?</a>`,name:"position_ids"},{anchor:"transformers.BarkCausalModel.forward.head_mask",description:`<strong>head_mask</strong> (<code>torch.Tensor</code> of shape <code>(encoder_layers, encoder_attention_heads)</code>, <em>optional</em>) &#x2014;
Mask to nullify selected heads of the attention modules in the encoder. Mask values selected in <code>[0, 1]</code>:</p>
<ul>
<li>1 indicates the head is <strong>not masked</strong>,</li>
<li>0 indicates the head is <strong>masked</strong>.</li>
</ul>`,name:"head_mask"},{anchor:"transformers.BarkCausalModel.forward.input_embeds",description:`<strong>input_embeds</strong> (<code>torch.FloatTensor</code> of shape <code>(batch_size, input_sequence_length, hidden_size)</code>, <em>optional</em>) &#x2014;
Optionally, instead of passing <code>input_ids</code> you can choose to directly pass an embedded representation.
Here, due to <code>Bark</code> particularities, if <code>past_key_values</code> is used, <code>input_embeds</code> will be ignored and you
have to use <code>input_ids</code>. If <code>past_key_values</code> is not used and <code>use_cache</code> is set to <code>True</code>, <code>input_embeds</code>
is used in priority instead of <code>input_ids</code>.`,name:"input_embeds"},{anchor:"transformers.BarkCausalModel.forward.use_cache",description:`<strong>use_cache</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
If set to <code>True</code>, <code>past_key_values</code> key value states are returned and can be used to speed up decoding (see
<code>past_key_values</code>).`,name:"use_cache"},{anchor:"transformers.BarkCausalModel.forward.output_attentions",description:`<strong>output_attentions</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the attentions tensors of all attention layers. See <code>attentions</code> under returned
tensors for more detail.`,name:"output_attentions"},{anchor:"transformers.BarkCausalModel.forward.output_hidden_states",description:`<strong>output_hidden_states</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return the hidden states of all layers. See <code>hidden_states</code> under returned tensors for
more detail.`,name:"output_hidden_states"},{anchor:"transformers.BarkCausalModel.forward.return_dict",description:`<strong>return_dict</strong> (<code>bool</code>, <em>optional</em>) &#x2014;
Whether or not to return a <a href="/docs/transformers/pr_30962/en/main_classes/output#transformers.utils.ModelOutput">ModelOutput</a> instead of a plain tuple.`,name:"return_dict"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/modeling_bark.py#L640"}}),ae=new Ln({props:{$$slots:{default:[Kr]},$$scope:{ctx:J}}}),zt=new T({props:{title:"BarkCoarseConfig",local:"transformers.BarkCoarseConfig",headingTag:"h2"}}),jt=new C({props:{name:"class transformers.BarkCoarseConfig",anchor:"transformers.BarkCoarseConfig",parameters:[{name:"block_size",val:" = 1024"},{name:"input_vocab_size",val:" = 10048"},{name:"output_vocab_size",val:" = 10048"},{name:"num_layers",val:" = 12"},{name:"num_heads",val:" = 12"},{name:"hidden_size",val:" = 768"},{name:"dropout",val:" = 0.0"},{name:"bias",val:" = True"},{name:"initializer_range",val:" = 0.02"},{name:"use_cache",val:" = True"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.BarkCoarseConfig.block_size",description:`<strong>block_size</strong> (<code>int</code>, <em>optional</em>, defaults to 1024) &#x2014;
The maximum sequence length that this model might ever be used with. Typically set this to something large
just in case (e.g., 512 or 1024 or 2048).`,name:"block_size"},{anchor:"transformers.BarkCoarseConfig.input_vocab_size",description:`<strong>input_vocab_size</strong> (<code>int</code>, <em>optional</em>, defaults to 10_048) &#x2014;
Vocabulary size of a Bark sub-model. Defines the number of different tokens that can be represented by the
<code>inputs_ids</code> passed when calling <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCoarseModel">BarkCoarseModel</a>. Defaults to 10_048 but should be carefully thought with
regards to the chosen sub-model.`,name:"input_vocab_size"},{anchor:"transformers.BarkCoarseConfig.output_vocab_size",description:`<strong>output_vocab_size</strong> (<code>int</code>, <em>optional</em>, defaults to 10_048) &#x2014;
Output vocabulary size of a Bark sub-model. Defines the number of different tokens that can be represented
by the: <code>output_ids</code> when passing forward a <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkCoarseModel">BarkCoarseModel</a>. Defaults to 10_048 but should be carefully thought
with regards to the chosen sub-model.`,name:"output_vocab_size"},{anchor:"transformers.BarkCoarseConfig.num_layers",description:`<strong>num_layers</strong> (<code>int</code>, <em>optional</em>, defaults to 12) &#x2014;
Number of hidden layers in the given sub-model.`,name:"num_layers"},{anchor:"transformers.BarkCoarseConfig.num_heads",description:`<strong>num_heads</strong> (<code>int</code>, <em>optional</em>, defaults to 12) &#x2014;
Number of attention heads for each attention layer in the Transformer architecture.`,name:"num_heads"},{anchor:"transformers.BarkCoarseConfig.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>, defaults to 768) &#x2014;
Dimensionality of the &#x201C;intermediate&#x201D; (often named feed-forward) layer in the architecture.`,name:"hidden_size"},{anchor:"transformers.BarkCoarseConfig.dropout",description:`<strong>dropout</strong> (<code>float</code>, <em>optional</em>, defaults to 0.0) &#x2014;
The dropout probability for all fully connected layers in the embeddings, encoder, and pooler.`,name:"dropout"},{anchor:"transformers.BarkCoarseConfig.bias",description:`<strong>bias</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not to use bias in the linear layers and layer norm layers.`,name:"bias"},{anchor:"transformers.BarkCoarseConfig.initializer_range",description:`<strong>initializer_range</strong> (<code>float</code>, <em>optional</em>, defaults to 0.02) &#x2014;
The standard deviation of the truncated_normal_initializer for initializing all weight matrices.`,name:"initializer_range"},{anchor:"transformers.BarkCoarseConfig.use_cache",description:`<strong>use_cache</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not the model should return the last key/values attentions (not used by all models).`,name:"use_cache"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/configuration_bark.py#L159"}}),re=new Sn({props:{anchor:"transformers.BarkCoarseConfig.example",$$slots:{default:[es]},$$scope:{ctx:J}}}),Ut=new T({props:{title:"BarkFineConfig",local:"transformers.BarkFineConfig",headingTag:"h2"}}),It=new C({props:{name:"class transformers.BarkFineConfig",anchor:"transformers.BarkFineConfig",parameters:[{name:"tie_word_embeddings",val:" = True"},{name:"n_codes_total",val:" = 8"},{name:"n_codes_given",val:" = 1"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.BarkFineConfig.block_size",description:`<strong>block_size</strong> (<code>int</code>, <em>optional</em>, defaults to 1024) &#x2014;
The maximum sequence length that this model might ever be used with. Typically set this to something large
just in case (e.g., 512 or 1024 or 2048).`,name:"block_size"},{anchor:"transformers.BarkFineConfig.input_vocab_size",description:`<strong>input_vocab_size</strong> (<code>int</code>, <em>optional</em>, defaults to 10_048) &#x2014;
Vocabulary size of a Bark sub-model. Defines the number of different tokens that can be represented by the
<code>inputs_ids</code> passed when calling <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkFineModel">BarkFineModel</a>. Defaults to 10_048 but should be carefully thought with
regards to the chosen sub-model.`,name:"input_vocab_size"},{anchor:"transformers.BarkFineConfig.output_vocab_size",description:`<strong>output_vocab_size</strong> (<code>int</code>, <em>optional</em>, defaults to 10_048) &#x2014;
Output vocabulary size of a Bark sub-model. Defines the number of different tokens that can be represented
by the: <code>output_ids</code> when passing forward a <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkFineModel">BarkFineModel</a>. Defaults to 10_048 but should be carefully thought
with regards to the chosen sub-model.`,name:"output_vocab_size"},{anchor:"transformers.BarkFineConfig.num_layers",description:`<strong>num_layers</strong> (<code>int</code>, <em>optional</em>, defaults to 12) &#x2014;
Number of hidden layers in the given sub-model.`,name:"num_layers"},{anchor:"transformers.BarkFineConfig.num_heads",description:`<strong>num_heads</strong> (<code>int</code>, <em>optional</em>, defaults to 12) &#x2014;
Number of attention heads for each attention layer in the Transformer architecture.`,name:"num_heads"},{anchor:"transformers.BarkFineConfig.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>, defaults to 768) &#x2014;
Dimensionality of the &#x201C;intermediate&#x201D; (often named feed-forward) layer in the architecture.`,name:"hidden_size"},{anchor:"transformers.BarkFineConfig.dropout",description:`<strong>dropout</strong> (<code>float</code>, <em>optional</em>, defaults to 0.0) &#x2014;
The dropout probability for all fully connected layers in the embeddings, encoder, and pooler.`,name:"dropout"},{anchor:"transformers.BarkFineConfig.bias",description:`<strong>bias</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not to use bias in the linear layers and layer norm layers.`,name:"bias"},{anchor:"transformers.BarkFineConfig.initializer_range",description:`<strong>initializer_range</strong> (<code>float</code>, <em>optional</em>, defaults to 0.02) &#x2014;
The standard deviation of the truncated_normal_initializer for initializing all weight matrices.`,name:"initializer_range"},{anchor:"transformers.BarkFineConfig.use_cache",description:`<strong>use_cache</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not the model should return the last key/values attentions (not used by all models).`,name:"use_cache"},{anchor:"transformers.BarkFineConfig.n_codes_total",description:`<strong>n_codes_total</strong> (<code>int</code>, <em>optional</em>, defaults to 8) &#x2014;
The total number of audio codebooks predicted. Used in the fine acoustics sub-model.`,name:"n_codes_total"},{anchor:"transformers.BarkFineConfig.n_codes_given",description:`<strong>n_codes_given</strong> (<code>int</code>, <em>optional</em>, defaults to 1) &#x2014;
The number of audio codebooks predicted in the coarse acoustics sub-model. Used in the acoustics
sub-models.`,name:"n_codes_given"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/configuration_bark.py#L181"}}),se=new Sn({props:{anchor:"transformers.BarkFineConfig.example",$$slots:{default:[ts]},$$scope:{ctx:J}}}),Wt=new T({props:{title:"BarkSemanticConfig",local:"transformers.BarkSemanticConfig",headingTag:"h2"}}),Zt=new C({props:{name:"class transformers.BarkSemanticConfig",anchor:"transformers.BarkSemanticConfig",parameters:[{name:"block_size",val:" = 1024"},{name:"input_vocab_size",val:" = 10048"},{name:"output_vocab_size",val:" = 10048"},{name:"num_layers",val:" = 12"},{name:"num_heads",val:" = 12"},{name:"hidden_size",val:" = 768"},{name:"dropout",val:" = 0.0"},{name:"bias",val:" = True"},{name:"initializer_range",val:" = 0.02"},{name:"use_cache",val:" = True"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.BarkSemanticConfig.block_size",description:`<strong>block_size</strong> (<code>int</code>, <em>optional</em>, defaults to 1024) &#x2014;
The maximum sequence length that this model might ever be used with. Typically set this to something large
just in case (e.g., 512 or 1024 or 2048).`,name:"block_size"},{anchor:"transformers.BarkSemanticConfig.input_vocab_size",description:`<strong>input_vocab_size</strong> (<code>int</code>, <em>optional</em>, defaults to 10_048) &#x2014;
Vocabulary size of a Bark sub-model. Defines the number of different tokens that can be represented by the
<code>inputs_ids</code> passed when calling <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkSemanticModel">BarkSemanticModel</a>. Defaults to 10_048 but should be carefully thought with
regards to the chosen sub-model.`,name:"input_vocab_size"},{anchor:"transformers.BarkSemanticConfig.output_vocab_size",description:`<strong>output_vocab_size</strong> (<code>int</code>, <em>optional</em>, defaults to 10_048) &#x2014;
Output vocabulary size of a Bark sub-model. Defines the number of different tokens that can be represented
by the: <code>output_ids</code> when passing forward a <a href="/docs/transformers/pr_30962/en/model_doc/bark#transformers.BarkSemanticModel">BarkSemanticModel</a>. Defaults to 10_048 but should be carefully thought
with regards to the chosen sub-model.`,name:"output_vocab_size"},{anchor:"transformers.BarkSemanticConfig.num_layers",description:`<strong>num_layers</strong> (<code>int</code>, <em>optional</em>, defaults to 12) &#x2014;
Number of hidden layers in the given sub-model.`,name:"num_layers"},{anchor:"transformers.BarkSemanticConfig.num_heads",description:`<strong>num_heads</strong> (<code>int</code>, <em>optional</em>, defaults to 12) &#x2014;
Number of attention heads for each attention layer in the Transformer architecture.`,name:"num_heads"},{anchor:"transformers.BarkSemanticConfig.hidden_size",description:`<strong>hidden_size</strong> (<code>int</code>, <em>optional</em>, defaults to 768) &#x2014;
Dimensionality of the &#x201C;intermediate&#x201D; (often named feed-forward) layer in the architecture.`,name:"hidden_size"},{anchor:"transformers.BarkSemanticConfig.dropout",description:`<strong>dropout</strong> (<code>float</code>, <em>optional</em>, defaults to 0.0) &#x2014;
The dropout probability for all fully connected layers in the embeddings, encoder, and pooler.`,name:"dropout"},{anchor:"transformers.BarkSemanticConfig.bias",description:`<strong>bias</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not to use bias in the linear layers and layer norm layers.`,name:"bias"},{anchor:"transformers.BarkSemanticConfig.initializer_range",description:`<strong>initializer_range</strong> (<code>float</code>, <em>optional</em>, defaults to 0.02) &#x2014;
The standard deviation of the truncated_normal_initializer for initializing all weight matrices.`,name:"initializer_range"},{anchor:"transformers.BarkSemanticConfig.use_cache",description:`<strong>use_cache</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not the model should return the last key/values attentions (not used by all models).`,name:"use_cache"}],source:"https://github.com/huggingface/transformers/blob/vr_30962/src/transformers/models/bark/configuration_bark.py#L137"}}),ie=new Sn({props:{anchor:"transformers.BarkSemanticConfig.example",$$slots:{default:[os]},$$scope:{ctx:J}}}),Nt=new Rr({props:{source:"https://github.com/huggingface/transformers/blob/main/docs/source/en/model_doc/bark.md"}}),{c(){d=i("meta"),y=n(),b=i("p"),k=n(),c(v.$$.fragment),_=n(),c(M.$$.fragment),$o=n(),ue=i("p"),ue.innerHTML=Ga,To=n(),ge=i("p"),ge.textContent=Ha,Bo=n(),_e=i("ul"),_e.innerHTML=Va,Co=n(),be=i("p"),be.textContent=La,xo=n(),ke=i("p"),ke.innerHTML=Sa,Jo=n(),c(ye.$$.fragment),zo=n(),ve=i("p"),ve.innerHTML=Ya,jo=n(),c(Me.$$.fragment),Uo=n(),we=i("p"),we.textContent=Xa,Io=n(),c($e.$$.fragment),Wo=n(),c(Te.$$.fragment),Zo=n(),Be=i("p"),Be.textContent=qa,No=n(),Ce=i("p"),Ce.innerHTML=Ea,Po=n(),c(xe.$$.fragment),Fo=n(),Je=i("p"),Je.innerHTML=Ra,Go=n(),c(ze.$$.fragment),Ho=n(),je=i("p"),je.textContent=Da,Vo=n(),c(Ue.$$.fragment),Lo=n(),Ie=i("p"),Ie.innerHTML=Qa,So=n(),c(We.$$.fragment),Yo=n(),Ze=i("p"),Ze.textContent=Oa,Xo=n(),c(Ne.$$.fragment),qo=n(),Pe=i("p"),Pe.innerHTML=Aa,Eo=n(),Fe=i("p"),Fe.innerHTML=Ka,Ro=n(),c(Ge.$$.fragment),Do=n(),c(He.$$.fragment),Qo=n(),Ve=i("p"),Ve.innerHTML=er,Oo=n(),c(Le.$$.fragment),Ao=n(),c(Se.$$.fragment),Ko=n(),Ye=i("p"),Ye.textContent=tr,en=n(),R=i("div"),R.innerHTML=or,tn=n(),Xe=i("p"),Xe.innerHTML=nr,on=n(),qe=i("p"),qe.textContent=ar,nn=n(),c(Ee.$$.fragment),an=n(),Re=i("p"),Re.textContent=rr,rn=n(),c(De.$$.fragment),sn=n(),Qe=i("p"),Qe.innerHTML=sr,ln=n(),c(Oe.$$.fragment),dn=n(),Ae=i("p"),Ae.innerHTML=ir,cn=n(),c(Ke.$$.fragment),mn=n(),et=i("p"),et.innerHTML=lr,pn=n(),c(tt.$$.fragment),fn=n(),ot=i("p"),ot.innerHTML=dr,hn=n(),c(nt.$$.fragment),un=n(),at=i("p"),at.textContent=cr,gn=n(),c(rt.$$.fragment),_n=n(),c(st.$$.fragment),bn=n(),z=i("div"),c(it.$$.fragment),Yn=n(),Vt=i("p"),Vt.innerHTML=mr,Xn=n(),Lt=i("p"),Lt.innerHTML=pr,qn=n(),St=i("p"),St.innerHTML=fr,En=n(),D=i("div"),c(lt.$$.fragment),Rn=n(),Yt=i("p"),Yt.innerHTML=hr,kn=n(),c(dt.$$.fragment),yn=n(),j=i("div"),c(ct.$$.fragment),Dn=n(),Xt=i("p"),Xt.textContent=ur,Qn=n(),Q=i("div"),c(mt.$$.fragment),On=n(),qt=i("p"),qt.innerHTML=gr,An=n(),O=i("div"),c(pt.$$.fragment),Kn=n(),Et=i("p"),Et.textContent=_r,ea=n(),A=i("div"),c(ft.$$.fragment),ta=n(),Rt=i("p"),Rt.innerHTML=br,vn=n(),c(ht.$$.fragment),Mn=n(),B=i("div"),c(ut.$$.fragment),oa=n(),Dt=i("p"),Dt.textContent=kr,na=n(),Qt=i("ul"),Qt.innerHTML=yr,aa=n(),Ot=i("p"),Ot.textContent=vr,ra=n(),At=i("p"),At.innerHTML=Mr,sa=n(),Kt=i("p"),Kt.innerHTML=wr,ia=n(),V=i("div"),c(gt.$$.fragment),la=n(),eo=i("p"),eo.innerHTML=$r,da=n(),c(K.$$.fragment),ca=n(),ee=i("div"),c(_t.$$.fragment),ma=n(),to=i("p"),to.textContent=Tr,wn=n(),c(bt.$$.fragment),$n=n(),I=i("div"),c(kt.$$.fragment),pa=n(),oo=i("p"),oo.innerHTML=Br,fa=n(),no=i("p"),no.innerHTML=Cr,ha=n(),L=i("div"),c(yt.$$.fragment),ua=n(),ao=i("p"),ao.innerHTML=xr,ga=n(),c(te.$$.fragment),Tn=n(),c(vt.$$.fragment),Bn=n(),W=i("div"),c(Mt.$$.fragment),_a=n(),ro=i("p"),ro.innerHTML=Jr,ba=n(),so=i("p"),so.innerHTML=zr,ka=n(),S=i("div"),c(wt.$$.fragment),ya=n(),io=i("p"),io.innerHTML=jr,va=n(),c(oe.$$.fragment),Cn=n(),c($t.$$.fragment),xn=n(),Z=i("div"),c(Tt.$$.fragment),Ma=n(),lo=i("p"),lo.innerHTML=Ur,wa=n(),co=i("p"),co.innerHTML=Ir,$a=n(),Y=i("div"),c(Bt.$$.fragment),Ta=n(),mo=i("p"),mo.innerHTML=Wr,Ba=n(),c(ne.$$.fragment),Jn=n(),c(Ct.$$.fragment),zn=n(),q=i("div"),c(xt.$$.fragment),Ca=n(),X=i("div"),c(Jt.$$.fragment),xa=n(),po=i("p"),po.innerHTML=Zr,Ja=n(),c(ae.$$.fragment),jn=n(),c(zt.$$.fragment),Un=n(),N=i("div"),c(jt.$$.fragment),za=n(),fo=i("p"),fo.innerHTML=Nr,ja=n(),ho=i("p"),ho.innerHTML=Pr,Ua=n(),c(re.$$.fragment),In=n(),c(Ut.$$.fragment),Wn=n(),P=i("div"),c(It.$$.fragment),Ia=n(),uo=i("p"),uo.innerHTML=Fr,Wa=n(),go=i("p"),go.innerHTML=Gr,Za=n(),c(se.$$.fragment),Zn=n(),c(Wt.$$.fragment),Nn=n(),F=i("div"),c(Zt.$$.fragment),Na=n(),_o=i("p"),_o.innerHTML=Hr,Pa=n(),bo=i("p"),bo.innerHTML=Vr,Fa=n(),c(ie.$$.fragment),Pn=n(),c(Nt.$$.fragment),Fn=n(),wo=i("p"),this.h()},l(e){const t=qr("svelte-u9bgzb",document.head);d=l(t,"META",{name:!0,content:!0}),t.forEach(o),y=a(e),b=l(e,"P",{}),w(b).forEach(o),k=a(e),m(v.$$.fragment,e),_=a(e),m(M.$$.fragment,e),$o=a(e),ue=l(e,"P",{"data-svelte-h":!0}),g(ue)!=="svelte-luezb9"&&(ue.innerHTML=Ga),To=a(e),ge=l(e,"P",{"data-svelte-h":!0}),g(ge)!=="svelte-x1eizn"&&(ge.textContent=Ha),Bo=a(e),_e=l(e,"UL",{"data-svelte-h":!0}),g(_e)!=="svelte-1s6x7z7"&&(_e.innerHTML=Va),Co=a(e),be=l(e,"P",{"data-svelte-h":!0}),g(be)!=="svelte-birews"&&(be.textContent=La),xo=a(e),ke=l(e,"P",{"data-svelte-h":!0}),g(ke)!=="svelte-1m4odbp"&&(ke.innerHTML=Sa),Jo=a(e),m(ye.$$.fragment,e),zo=a(e),ve=l(e,"P",{"data-svelte-h":!0}),g(ve)!=="svelte-d9f63q"&&(ve.innerHTML=Ya),jo=a(e),m(Me.$$.fragment,e),Uo=a(e),we=l(e,"P",{"data-svelte-h":!0}),g(we)!=="svelte-1c57ze6"&&(we.textContent=Xa),Io=a(e),m($e.$$.fragment,e),Wo=a(e),m(Te.$$.fragment,e),Zo=a(e),Be=l(e,"P",{"data-svelte-h":!0}),g(Be)!=="svelte-1gm6phf"&&(Be.textContent=qa),No=a(e),Ce=l(e,"P",{"data-svelte-h":!0}),g(Ce)!=="svelte-kat9bd"&&(Ce.innerHTML=Ea),Po=a(e),m(xe.$$.fragment,e),Fo=a(e),Je=l(e,"P",{"data-svelte-h":!0}),g(Je)!=="svelte-jn1vz4"&&(Je.innerHTML=Ra),Go=a(e),m(ze.$$.fragment,e),Ho=a(e),je=l(e,"P",{"data-svelte-h":!0}),g(je)!=="svelte-1r0gpm4"&&(je.textContent=Da),Vo=a(e),m(Ue.$$.fragment,e),Lo=a(e),Ie=l(e,"P",{"data-svelte-h":!0}),g(Ie)!=="svelte-bu0gze"&&(Ie.innerHTML=Qa),So=a(e),m(We.$$.fragment,e),Yo=a(e),Ze=l(e,"P",{"data-svelte-h":!0}),g(Ze)!=="svelte-ud6z0l"&&(Ze.textContent=Oa),Xo=a(e),m(Ne.$$.fragment,e),qo=a(e),Pe=l(e,"P",{"data-svelte-h":!0}),g(Pe)!=="svelte-ib5l43"&&(Pe.innerHTML=Aa),Eo=a(e),Fe=l(e,"P",{"data-svelte-h":!0}),g(Fe)!=="svelte-1pp3dkd"&&(Fe.innerHTML=Ka),Ro=a(e),m(Ge.$$.fragment,e),Do=a(e),m(He.$$.fragment,e),Qo=a(e),Ve=l(e,"P",{"data-svelte-h":!0}),g(Ve)!=="svelte-1qm2lzz"&&(Ve.innerHTML=er),Oo=a(e),m(Le.$$.fragment,e),Ao=a(e),m(Se.$$.fragment,e),Ko=a(e),Ye=l(e,"P",{"data-svelte-h":!0}),g(Ye)!=="svelte-19fzd9"&&(Ye.textContent=tr),en=a(e),R=l(e,"DIV",{style:!0,"data-svelte-h":!0}),g(R)!=="svelte-odbvi5"&&(R.innerHTML=or),tn=a(e),Xe=l(e,"P",{"data-svelte-h":!0}),g(Xe)!=="svelte-1uahz5n"&&(Xe.innerHTML=nr),on=a(e),qe=l(e,"P",{"data-svelte-h":!0}),g(qe)!=="svelte-106f51x"&&(qe.textContent=ar),nn=a(e),m(Ee.$$.fragment,e),an=a(e),Re=l(e,"P",{"data-svelte-h":!0}),g(Re)!=="svelte-rwb7y1"&&(Re.textContent=rr),rn=a(e),m(De.$$.fragment,e),sn=a(e),Qe=l(e,"P",{"data-svelte-h":!0}),g(Qe)!=="svelte-1xrlue6"&&(Qe.innerHTML=sr),ln=a(e),m(Oe.$$.fragment,e),dn=a(e),Ae=l(e,"P",{"data-svelte-h":!0}),g(Ae)!=="svelte-llmun5"&&(Ae.innerHTML=ir),cn=a(e),m(Ke.$$.fragment,e),mn=a(e),et=l(e,"P",{"data-svelte-h":!0}),g(et)!=="svelte-ff55s5"&&(et.innerHTML=lr),pn=a(e),m(tt.$$.fragment,e),fn=a(e),ot=l(e,"P",{"data-svelte-h":!0}),g(ot)!=="svelte-sc737i"&&(ot.innerHTML=dr),hn=a(e),m(nt.$$.fragment,e),un=a(e),at=l(e,"P",{"data-svelte-h":!0}),g(at)!=="svelte-1bkdry6"&&(at.textContent=cr),gn=a(e),m(rt.$$.fragment,e),_n=a(e),m(st.$$.fragment,e),bn=a(e),z=l(e,"DIV",{class:!0});var G=w(z);m(it.$$.fragment,G),Yn=a(G),Vt=l(G,"P",{"data-svelte-h":!0}),g(Vt)!=="svelte-d68p1z"&&(Vt.innerHTML=mr),Xn=a(G),Lt=l(G,"P",{"data-svelte-h":!0}),g(Lt)!=="svelte-c6ui3q"&&(Lt.innerHTML=pr),qn=a(G),St=l(G,"P",{"data-svelte-h":!0}),g(St)!=="svelte-lbfgjz"&&(St.innerHTML=fr),En=a(G),D=l(G,"DIV",{class:!0});var Pt=w(D);m(lt.$$.fragment,Pt),Rn=a(Pt),Yt=l(Pt,"P",{"data-svelte-h":!0}),g(Yt)!=="svelte-1bbzpwr"&&(Yt.innerHTML=hr),Pt.forEach(o),G.forEach(o),kn=a(e),m(dt.$$.fragment,e),yn=a(e),j=l(e,"DIV",{class:!0});var H=w(j);m(ct.$$.fragment,H),Dn=a(H),Xt=l(H,"P",{"data-svelte-h":!0}),g(Xt)!=="svelte-1xfrjvw"&&(Xt.textContent=ur),Qn=a(H),Q=l(H,"DIV",{class:!0});var Ft=w(Q);m(mt.$$.fragment,Ft),On=a(Ft),qt=l(Ft,"P",{"data-svelte-h":!0}),g(qt)!=="svelte-1hlbbl8"&&(qt.innerHTML=gr),Ft.forEach(o),An=a(H),O=l(H,"DIV",{class:!0});var Gt=w(O);m(pt.$$.fragment,Gt),Kn=a(Gt),Et=l(Gt,"P",{"data-svelte-h":!0}),g(Et)!=="svelte-1xt1aup"&&(Et.textContent=_r),Gt.forEach(o),ea=a(H),A=l(H,"DIV",{class:!0});var Ht=w(A);m(ft.$$.fragment,Ht),ta=a(Ht),Rt=l(Ht,"P",{"data-svelte-h":!0}),g(Rt)!=="svelte-1uycq6p"&&(Rt.innerHTML=br),Ht.forEach(o),H.forEach(o),vn=a(e),m(ht.$$.fragment,e),Mn=a(e),B=l(e,"DIV",{class:!0});var x=w(B);m(ut.$$.fragment,x),oa=a(x),Dt=l(x,"P",{"data-svelte-h":!0}),g(Dt)!=="svelte-xp33tl"&&(Dt.textContent=kr),na=a(x),Qt=l(x,"UL",{"data-svelte-h":!0}),g(Qt)!=="svelte-u9y886"&&(Qt.innerHTML=yr),aa=a(x),Ot=l(x,"P",{"data-svelte-h":!0}),g(Ot)!=="svelte-beeiv6"&&(Ot.textContent=vr),ra=a(x),At=l(x,"P",{"data-svelte-h":!0}),g(At)!=="svelte-tz21u6"&&(At.innerHTML=Mr),sa=a(x),Kt=l(x,"P",{"data-svelte-h":!0}),g(Kt)!=="svelte-hswkmf"&&(Kt.innerHTML=wr),ia=a(x),V=l(x,"DIV",{class:!0});var E=w(V);m(gt.$$.fragment,E),la=a(E),eo=l(E,"P",{"data-svelte-h":!0}),g(eo)!=="svelte-4azpa"&&(eo.innerHTML=$r),da=a(E),m(K.$$.fragment,E),E.forEach(o),ca=a(x),ee=l(x,"DIV",{class:!0});var Hn=w(ee);m(_t.$$.fragment,Hn),ma=a(Hn),to=l(Hn,"P",{"data-svelte-h":!0}),g(to)!=="svelte-19e6niw"&&(to.textContent=Tr),Hn.forEach(o),x.forEach(o),wn=a(e),m(bt.$$.fragment,e),$n=a(e),I=l(e,"DIV",{class:!0});var le=w(I);m(kt.$$.fragment,le),pa=a(le),oo=l(le,"P",{"data-svelte-h":!0}),g(oo)!=="svelte-10l363i"&&(oo.innerHTML=Br),fa=a(le),no=l(le,"P",{"data-svelte-h":!0}),g(no)!=="svelte-hswkmf"&&(no.innerHTML=Cr),ha=a(le),L=l(le,"DIV",{class:!0});var ko=w(L);m(yt.$$.fragment,ko),ua=a(ko),ao=l(ko,"P",{"data-svelte-h":!0}),g(ao)!=="svelte-etuec7"&&(ao.innerHTML=xr),ga=a(ko),m(te.$$.fragment,ko),ko.forEach(o),le.forEach(o),Tn=a(e),m(vt.$$.fragment,e),Bn=a(e),W=l(e,"DIV",{class:!0});var de=w(W);m(Mt.$$.fragment,de),_a=a(de),ro=l(de,"P",{"data-svelte-h":!0}),g(ro)!=="svelte-dwgz2o"&&(ro.innerHTML=Jr),ba=a(de),so=l(de,"P",{"data-svelte-h":!0}),g(so)!=="svelte-hswkmf"&&(so.innerHTML=zr),ka=a(de),S=l(de,"DIV",{class:!0});var yo=w(S);m(wt.$$.fragment,yo),ya=a(yo),io=l(yo,"P",{"data-svelte-h":!0}),g(io)!=="svelte-etuec7"&&(io.innerHTML=jr),va=a(yo),m(oe.$$.fragment,yo),yo.forEach(o),de.forEach(o),Cn=a(e),m($t.$$.fragment,e),xn=a(e),Z=l(e,"DIV",{class:!0});var ce=w(Z);m(Tt.$$.fragment,ce),Ma=a(ce),lo=l(ce,"P",{"data-svelte-h":!0}),g(lo)!=="svelte-10l7dix"&&(lo.innerHTML=Ur),wa=a(ce),co=l(ce,"P",{"data-svelte-h":!0}),g(co)!=="svelte-hswkmf"&&(co.innerHTML=Ir),$a=a(ce),Y=l(ce,"DIV",{class:!0});var vo=w(Y);m(Bt.$$.fragment,vo),Ta=a(vo),mo=l(vo,"P",{"data-svelte-h":!0}),g(mo)!=="svelte-1krfw9z"&&(mo.innerHTML=Wr),Ba=a(vo),m(ne.$$.fragment,vo),vo.forEach(o),ce.forEach(o),Jn=a(e),m(Ct.$$.fragment,e),zn=a(e),q=l(e,"DIV",{class:!0});var Vn=w(q);m(xt.$$.fragment,Vn),Ca=a(Vn),X=l(Vn,"DIV",{class:!0});var Mo=w(X);m(Jt.$$.fragment,Mo),xa=a(Mo),po=l(Mo,"P",{"data-svelte-h":!0}),g(po)!=="svelte-etuec7"&&(po.innerHTML=Zr),Ja=a(Mo),m(ae.$$.fragment,Mo),Mo.forEach(o),Vn.forEach(o),jn=a(e),m(zt.$$.fragment,e),Un=a(e),N=l(e,"DIV",{class:!0});var me=w(N);m(jt.$$.fragment,me),za=a(me),fo=l(me,"P",{"data-svelte-h":!0}),g(fo)!=="svelte-175dgjr"&&(fo.innerHTML=Nr),ja=a(me),ho=l(me,"P",{"data-svelte-h":!0}),g(ho)!=="svelte-lbfgjz"&&(ho.innerHTML=Pr),Ua=a(me),m(re.$$.fragment,me),me.forEach(o),In=a(e),m(Ut.$$.fragment,e),Wn=a(e),P=l(e,"DIV",{class:!0});var pe=w(P);m(It.$$.fragment,pe),Ia=a(pe),uo=l(pe,"P",{"data-svelte-h":!0}),g(uo)!=="svelte-15rvqx3"&&(uo.innerHTML=Fr),Wa=a(pe),go=l(pe,"P",{"data-svelte-h":!0}),g(go)!=="svelte-lbfgjz"&&(go.innerHTML=Gr),Za=a(pe),m(se.$$.fragment,pe),pe.forEach(o),Zn=a(e),m(Wt.$$.fragment,e),Nn=a(e),F=l(e,"DIV",{class:!0});var fe=w(F);m(Zt.$$.fragment,fe),Na=a(fe),_o=l(fe,"P",{"data-svelte-h":!0}),g(_o)!=="svelte-hwdv2r"&&(_o.innerHTML=Hr),Pa=a(fe),bo=l(fe,"P",{"data-svelte-h":!0}),g(bo)!=="svelte-lbfgjz"&&(bo.innerHTML=Vr),Fa=a(fe),m(ie.$$.fragment,fe),fe.forEach(o),Pn=a(e),m(Nt.$$.fragment,e),Fn=a(e),wo=l(e,"P",{}),w(wo).forEach(o),this.h()},h(){$(d,"name","hf:doc:metadata"),$(d,"content",as),Er(R,"text-align","center"),$(D,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(z,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(Q,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(O,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(A,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(j,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(V,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(ee,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(B,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(L,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(I,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(S,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(W,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(Y,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(Z,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(X,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(q,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(N,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(P,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(F,"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){s(document.head,d),r(e,y,t),r(e,b,t),r(e,k,t),p(v,e,t),r(e,_,t),p(M,e,t),r(e,$o,t),r(e,ue,t),r(e,To,t),r(e,ge,t),r(e,Bo,t),r(e,_e,t),r(e,Co,t),r(e,be,t),r(e,xo,t),r(e,ke,t),r(e,Jo,t),p(ye,e,t),r(e,zo,t),r(e,ve,t),r(e,jo,t),p(Me,e,t),r(e,Uo,t),r(e,we,t),r(e,Io,t),p($e,e,t),r(e,Wo,t),p(Te,e,t),r(e,Zo,t),r(e,Be,t),r(e,No,t),r(e,Ce,t),r(e,Po,t),p(xe,e,t),r(e,Fo,t),r(e,Je,t),r(e,Go,t),p(ze,e,t),r(e,Ho,t),r(e,je,t),r(e,Vo,t),p(Ue,e,t),r(e,Lo,t),r(e,Ie,t),r(e,So,t),p(We,e,t),r(e,Yo,t),r(e,Ze,t),r(e,Xo,t),p(Ne,e,t),r(e,qo,t),r(e,Pe,t),r(e,Eo,t),r(e,Fe,t),r(e,Ro,t),p(Ge,e,t),r(e,Do,t),p(He,e,t),r(e,Qo,t),r(e,Ve,t),r(e,Oo,t),p(Le,e,t),r(e,Ao,t),p(Se,e,t),r(e,Ko,t),r(e,Ye,t),r(e,en,t),r(e,R,t),r(e,tn,t),r(e,Xe,t),r(e,on,t),r(e,qe,t),r(e,nn,t),p(Ee,e,t),r(e,an,t),r(e,Re,t),r(e,rn,t),p(De,e,t),r(e,sn,t),r(e,Qe,t),r(e,ln,t),p(Oe,e,t),r(e,dn,t),r(e,Ae,t),r(e,cn,t),p(Ke,e,t),r(e,mn,t),r(e,et,t),r(e,pn,t),p(tt,e,t),r(e,fn,t),r(e,ot,t),r(e,hn,t),p(nt,e,t),r(e,un,t),r(e,at,t),r(e,gn,t),p(rt,e,t),r(e,_n,t),p(st,e,t),r(e,bn,t),r(e,z,t),p(it,z,null),s(z,Yn),s(z,Vt),s(z,Xn),s(z,Lt),s(z,qn),s(z,St),s(z,En),s(z,D),p(lt,D,null),s(D,Rn),s(D,Yt),r(e,kn,t),p(dt,e,t),r(e,yn,t),r(e,j,t),p(ct,j,null),s(j,Dn),s(j,Xt),s(j,Qn),s(j,Q),p(mt,Q,null),s(Q,On),s(Q,qt),s(j,An),s(j,O),p(pt,O,null),s(O,Kn),s(O,Et),s(j,ea),s(j,A),p(ft,A,null),s(A,ta),s(A,Rt),r(e,vn,t),p(ht,e,t),r(e,Mn,t),r(e,B,t),p(ut,B,null),s(B,oa),s(B,Dt),s(B,na),s(B,Qt),s(B,aa),s(B,Ot),s(B,ra),s(B,At),s(B,sa),s(B,Kt),s(B,ia),s(B,V),p(gt,V,null),s(V,la),s(V,eo),s(V,da),p(K,V,null),s(B,ca),s(B,ee),p(_t,ee,null),s(ee,ma),s(ee,to),r(e,wn,t),p(bt,e,t),r(e,$n,t),r(e,I,t),p(kt,I,null),s(I,pa),s(I,oo),s(I,fa),s(I,no),s(I,ha),s(I,L),p(yt,L,null),s(L,ua),s(L,ao),s(L,ga),p(te,L,null),r(e,Tn,t),p(vt,e,t),r(e,Bn,t),r(e,W,t),p(Mt,W,null),s(W,_a),s(W,ro),s(W,ba),s(W,so),s(W,ka),s(W,S),p(wt,S,null),s(S,ya),s(S,io),s(S,va),p(oe,S,null),r(e,Cn,t),p($t,e,t),r(e,xn,t),r(e,Z,t),p(Tt,Z,null),s(Z,Ma),s(Z,lo),s(Z,wa),s(Z,co),s(Z,$a),s(Z,Y),p(Bt,Y,null),s(Y,Ta),s(Y,mo),s(Y,Ba),p(ne,Y,null),r(e,Jn,t),p(Ct,e,t),r(e,zn,t),r(e,q,t),p(xt,q,null),s(q,Ca),s(q,X),p(Jt,X,null),s(X,xa),s(X,po),s(X,Ja),p(ae,X,null),r(e,jn,t),p(zt,e,t),r(e,Un,t),r(e,N,t),p(jt,N,null),s(N,za),s(N,fo),s(N,ja),s(N,ho),s(N,Ua),p(re,N,null),r(e,In,t),p(Ut,e,t),r(e,Wn,t),r(e,P,t),p(It,P,null),s(P,Ia),s(P,uo),s(P,Wa),s(P,go),s(P,Za),p(se,P,null),r(e,Zn,t),p(Wt,e,t),r(e,Nn,t),r(e,F,t),p(Zt,F,null),s(F,Na),s(F,_o),s(F,Pa),s(F,bo),s(F,Fa),p(ie,F,null),r(e,Pn,t),p(Nt,e,t),r(e,Fn,t),r(e,wo,t),Gn=!0},p(e,[t]){const G={};t&2&&(G.$$scope={dirty:t,ctx:e}),K.$set(G);const Pt={};t&2&&(Pt.$$scope={dirty:t,ctx:e}),te.$set(Pt);const H={};t&2&&(H.$$scope={dirty:t,ctx:e}),oe.$set(H);const Ft={};t&2&&(Ft.$$scope={dirty:t,ctx:e}),ne.$set(Ft);const Gt={};t&2&&(Gt.$$scope={dirty:t,ctx:e}),ae.$set(Gt);const Ht={};t&2&&(Ht.$$scope={dirty:t,ctx:e}),re.$set(Ht);const x={};t&2&&(x.$$scope={dirty:t,ctx:e}),se.$set(x);const E={};t&2&&(E.$$scope={dirty:t,ctx:e}),ie.$set(E)},i(e){Gn||(f(v.$$.fragment,e),f(M.$$.fragment,e),f(ye.$$.fragment,e),f(Me.$$.fragment,e),f($e.$$.fragment,e),f(Te.$$.fragment,e),f(xe.$$.fragment,e),f(ze.$$.fragment,e),f(Ue.$$.fragment,e),f(We.$$.fragment,e),f(Ne.$$.fragment,e),f(Ge.$$.fragment,e),f(He.$$.fragment,e),f(Le.$$.fragment,e),f(Se.$$.fragment,e),f(Ee.$$.fragment,e),f(De.$$.fragment,e),f(Oe.$$.fragment,e),f(Ke.$$.fragment,e),f(tt.$$.fragment,e),f(nt.$$.fragment,e),f(rt.$$.fragment,e),f(st.$$.fragment,e),f(it.$$.fragment,e),f(lt.$$.fragment,e),f(dt.$$.fragment,e),f(ct.$$.fragment,e),f(mt.$$.fragment,e),f(pt.$$.fragment,e),f(ft.$$.fragment,e),f(ht.$$.fragment,e),f(ut.$$.fragment,e),f(gt.$$.fragment,e),f(K.$$.fragment,e),f(_t.$$.fragment,e),f(bt.$$.fragment,e),f(kt.$$.fragment,e),f(yt.$$.fragment,e),f(te.$$.fragment,e),f(vt.$$.fragment,e),f(Mt.$$.fragment,e),f(wt.$$.fragment,e),f(oe.$$.fragment,e),f($t.$$.fragment,e),f(Tt.$$.fragment,e),f(Bt.$$.fragment,e),f(ne.$$.fragment,e),f(Ct.$$.fragment,e),f(xt.$$.fragment,e),f(Jt.$$.fragment,e),f(ae.$$.fragment,e),f(zt.$$.fragment,e),f(jt.$$.fragment,e),f(re.$$.fragment,e),f(Ut.$$.fragment,e),f(It.$$.fragment,e),f(se.$$.fragment,e),f(Wt.$$.fragment,e),f(Zt.$$.fragment,e),f(ie.$$.fragment,e),f(Nt.$$.fragment,e),Gn=!0)},o(e){h(v.$$.fragment,e),h(M.$$.fragment,e),h(ye.$$.fragment,e),h(Me.$$.fragment,e),h($e.$$.fragment,e),h(Te.$$.fragment,e),h(xe.$$.fragment,e),h(ze.$$.fragment,e),h(Ue.$$.fragment,e),h(We.$$.fragment,e),h(Ne.$$.fragment,e),h(Ge.$$.fragment,e),h(He.$$.fragment,e),h(Le.$$.fragment,e),h(Se.$$.fragment,e),h(Ee.$$.fragment,e),h(De.$$.fragment,e),h(Oe.$$.fragment,e),h(Ke.$$.fragment,e),h(tt.$$.fragment,e),h(nt.$$.fragment,e),h(rt.$$.fragment,e),h(st.$$.fragment,e),h(it.$$.fragment,e),h(lt.$$.fragment,e),h(dt.$$.fragment,e),h(ct.$$.fragment,e),h(mt.$$.fragment,e),h(pt.$$.fragment,e),h(ft.$$.fragment,e),h(ht.$$.fragment,e),h(ut.$$.fragment,e),h(gt.$$.fragment,e),h(K.$$.fragment,e),h(_t.$$.fragment,e),h(bt.$$.fragment,e),h(kt.$$.fragment,e),h(yt.$$.fragment,e),h(te.$$.fragment,e),h(vt.$$.fragment,e),h(Mt.$$.fragment,e),h(wt.$$.fragment,e),h(oe.$$.fragment,e),h($t.$$.fragment,e),h(Tt.$$.fragment,e),h(Bt.$$.fragment,e),h(ne.$$.fragment,e),h(Ct.$$.fragment,e),h(xt.$$.fragment,e),h(Jt.$$.fragment,e),h(ae.$$.fragment,e),h(zt.$$.fragment,e),h(jt.$$.fragment,e),h(re.$$.fragment,e),h(Ut.$$.fragment,e),h(It.$$.fragment,e),h(se.$$.fragment,e),h(Wt.$$.fragment,e),h(Zt.$$.fragment,e),h(ie.$$.fragment,e),h(Nt.$$.fragment,e),Gn=!1},d(e){e&&(o(y),o(b),o(k),o(_),o($o),o(ue),o(To),o(ge),o(Bo),o(_e),o(Co),o(be),o(xo),o(ke),o(Jo),o(zo),o(ve),o(jo),o(Uo),o(we),o(Io),o(Wo),o(Zo),o(Be),o(No),o(Ce),o(Po),o(Fo),o(Je),o(Go),o(Ho),o(je),o(Vo),o(Lo),o(Ie),o(So),o(Yo),o(Ze),o(Xo),o(qo),o(Pe),o(Eo),o(Fe),o(Ro),o(Do),o(Qo),o(Ve),o(Oo),o(Ao),o(Ko),o(Ye),o(en),o(R),o(tn),o(Xe),o(on),o(qe),o(nn),o(an),o(Re),o(rn),o(sn),o(Qe),o(ln),o(dn),o(Ae),o(cn),o(mn),o(et),o(pn),o(fn),o(ot),o(hn),o(un),o(at),o(gn),o(_n),o(bn),o(z),o(kn),o(yn),o(j),o(vn),o(Mn),o(B),o(wn),o($n),o(I),o(Tn),o(Bn),o(W),o(Cn),o(xn),o(Z),o(Jn),o(zn),o(q),o(jn),o(Un),o(N),o(In),o(Wn),o(P),o(Zn),o(Nn),o(F),o(Pn),o(Fn),o(wo)),o(d),u(v,e),u(M,e),u(ye,e),u(Me,e),u($e,e),u(Te,e),u(xe,e),u(ze,e),u(Ue,e),u(We,e),u(Ne,e),u(Ge,e),u(He,e),u(Le,e),u(Se,e),u(Ee,e),u(De,e),u(Oe,e),u(Ke,e),u(tt,e),u(nt,e),u(rt,e),u(st,e),u(it),u(lt),u(dt,e),u(ct),u(mt),u(pt),u(ft),u(ht,e),u(ut),u(gt),u(K),u(_t),u(bt,e),u(kt),u(yt),u(te),u(vt,e),u(Mt),u(wt),u(oe),u($t,e),u(Tt),u(Bt),u(ne),u(Ct,e),u(xt),u(Jt),u(ae),u(zt,e),u(jt),u(re),u(Ut,e),u(It),u(se),u(Wt,e),u(Zt),u(ie),u(Nt,e)}}}const as='{"title":"Bark","local":"bark","sections":[{"title":"Overview","local":"overview","sections":[{"title":"Optimizing Bark","local":"optimizing-bark","sections":[{"title":"Using half-precision","local":"using-half-precision","sections":[],"depth":4},{"title":"Using CPU offload","local":"using-cpu-offload","sections":[],"depth":4},{"title":"Using Better Transformer","local":"using-better-transformer","sections":[],"depth":4},{"title":"Using Flash Attention 2","local":"using-flash-attention-2","sections":[{"title":"Installation","local":"installation","sections":[],"depth":5},{"title":"Usage","local":"usage","sections":[],"depth":5},{"title":"Performance comparison","local":"performance-comparison","sections":[],"depth":5}],"depth":4},{"title":"Combining optimization techniques","local":"combining-optimization-techniques","sections":[],"depth":4}],"depth":3},{"title":"Usage tips","local":"usage-tips","sections":[],"depth":3}],"depth":2},{"title":"BarkConfig","local":"transformers.BarkConfig","sections":[],"depth":2},{"title":"BarkProcessor","local":"transformers.BarkProcessor","sections":[],"depth":2},{"title":"BarkModel","local":"transformers.BarkModel","sections":[],"depth":2},{"title":"BarkSemanticModel","local":"transformers.BarkSemanticModel","sections":[],"depth":2},{"title":"BarkCoarseModel","local":"transformers.BarkCoarseModel","sections":[],"depth":2},{"title":"BarkFineModel","local":"transformers.BarkFineModel","sections":[],"depth":2},{"title":"BarkCausalModel","local":"transformers.BarkCausalModel","sections":[],"depth":2},{"title":"BarkCoarseConfig","local":"transformers.BarkCoarseConfig","sections":[],"depth":2},{"title":"BarkFineConfig","local":"transformers.BarkFineConfig","sections":[],"depth":2},{"title":"BarkSemanticConfig","local":"transformers.BarkSemanticConfig","sections":[],"depth":2}],"depth":1}';function rs(J){return Sr(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class fs extends Yr{constructor(d){super(),Xr(this,d,rs,ns,Lr,{})}}export{fs as component};
