import{s as Se,o as We,n as Xe}from"../chunks/scheduler.25b97de1.js";import{S as Ae,i as Ye,g as a,s as o,r as m,A as Oe,h as i,f as n,c as s,j as J,u as h,x as k,k as M,y as r,a as l,v as f,d as g,t as u,w as _}from"../chunks/index.d9030fc9.js";import{T as Ke}from"../chunks/Tip.baa67368.js";import{D as te}from"../chunks/Docstring.e257edda.js";import{C as et}from"../chunks/CodeBlock.e6cd0d95.js";import{H as ve,E as tt}from"../chunks/EditOnGithub.91d95064.js";function nt(oe){let p,P=`PhoBERT implementation is the same as BERT, except for tokenization. Refer to <a href="bert">EART documentation</a> for information on
configuration classes and their parameters. PhoBERT-specific tokenizer is documented below.`;return{c(){p=a("p"),p.innerHTML=P},l(b){p=i(b,"P",{"data-svelte-h":!0}),k(p)!=="svelte-v9qnng"&&(p.innerHTML=P)},m(b,Z){l(b,p,Z)},p:Xe,d(b){b&&n(p)}}}function ot(oe){let p,P,b,Z,q,se,U,re,z,Ie='The PhoBERT model was proposed in <a href="https://www.aclweb.org/anthology/2020.findings-emnlp.92.pdf" rel="nofollow">PhoBERT: Pre-trained language models for Vietnamese</a> by Dat Quoc Nguyen, Anh Tuan Nguyen.',ae,C,Be="The abstract from the paper is the following:",ie,E,Le=`<em>We present PhoBERT with two versions, PhoBERT-base and PhoBERT-large, the first public large-scale monolingual
language models pre-trained for Vietnamese. Experimental results show that PhoBERT consistently outperforms the recent
best pre-trained multilingual model XLM-R (Conneau et al., 2020) and improves the state-of-the-art in multiple
Vietnamese-specific NLP tasks including Part-of-speech tagging, Dependency parsing, Named-entity recognition and
Natural language inference.</em>`,le,V,Re='This model was contributed by <a href="https://huggingface.co/dqnguyen" rel="nofollow">dqnguyen</a>. The original code can be found <a href="https://github.com/VinAIResearch/PhoBERT" rel="nofollow">here</a>.',de,I,ce,B,pe,v,me,L,he,d,R,we,N,je="Construct a PhoBERT tokenizer. Based on Byte-Pair-Encoding.",$e,S,De=`This tokenizer inherits from <a href="/docs/transformers/pr_31051/en/main_classes/tokenizer#transformers.PreTrainedTokenizer">PreTrainedTokenizer</a> which contains most of the main methods. Users should refer to
this superclass for more information regarding those methods.`,ye,w,j,xe,W,Ge="Loads a pre-existing dictionary from a text file and adds its symbols to this instance.",Je,T,D,Me,X,Fe=`Build model inputs from a sequence or a pair of sequence for sequence classification tasks by concatenating and
adding special tokens. A PhoBERT sequence has the following format:`,Pe,A,Qe="<li>single sequence: <code>&lt;s&gt; X &lt;/s&gt;</code></li> <li>pair of sequences: <code>&lt;s&gt; A &lt;/s&gt;&lt;/s&gt; B &lt;/s&gt;</code></li>",qe,$,G,Ue,Y,He="Converts a sequence of tokens (string) in a single string.",ze,y,F,Ce,O,Ze=`Create a mask from the two sequences passed to be used in a sequence-pair classification task. PhoBERT does not
make use of token type ids, therefore a list of zeros is returned.`,Ee,x,Q,Ve,K,Ne=`Retrieve sequence ids from a token list that has no special tokens added. This method is called when adding
special tokens using the tokenizer <code>prepare_for_model</code> method.`,fe,H,ge,ne,ue;return q=new ve({props:{title:"PhoBERT",local:"phobert",headingTag:"h1"}}),U=new ve({props:{title:"Overview",local:"overview",headingTag:"h2"}}),I=new ve({props:{title:"Usage example",local:"usage-example",headingTag:"h2"}}),B=new et({props:{code:"aW1wb3J0JTIwdG9yY2glMEFmcm9tJTIwdHJhbnNmb3JtZXJzJTIwaW1wb3J0JTIwQXV0b01vZGVsJTJDJTIwQXV0b1Rva2VuaXplciUwQSUwQXBob2JlcnQlMjAlM0QlMjBBdXRvTW9kZWwuZnJvbV9wcmV0cmFpbmVkKCUyMnZpbmFpJTJGcGhvYmVydC1iYXNlJTIyKSUwQXRva2VuaXplciUyMCUzRCUyMEF1dG9Ub2tlbml6ZXIuZnJvbV9wcmV0cmFpbmVkKCUyMnZpbmFpJTJGcGhvYmVydC1iYXNlJTIyKSUwQSUwQSUyMyUyMElOUFVUJTIwVEVYVCUyME1VU1QlMjBCRSUyMEFMUkVBRFklMjBXT1JELVNFR01FTlRFRCElMEFsaW5lJTIwJTNEJTIwJTIyVCVDMyVCNGklMjBsJUMzJUEwJTIwc2luaF92aSVDMyVBQW4lMjB0ciVDNiVCMCVFMSVCQiU5RG5nJTIwJUM0JTkxJUUxJUJBJUExaV9oJUUxJUJCJThEYyUyMEMlQzMlQjRuZ19uZ2glRTElQkIlODclMjAuJTIyJTBBJTBBaW5wdXRfaWRzJTIwJTNEJTIwdG9yY2gudGVuc29yKCU1QnRva2VuaXplci5lbmNvZGUobGluZSklNUQpJTBBJTBBd2l0aCUyMHRvcmNoLm5vX2dyYWQoKSUzQSUwQSUyMCUyMCUyMCUyMGZlYXR1cmVzJTIwJTNEJTIwcGhvYmVydChpbnB1dF9pZHMpJTIwJTIwJTIzJTIwTW9kZWxzJTIwb3V0cHV0cyUyMGFyZSUyMG5vdyUyMHR1cGxlcyUwQSUwQSUyMyUyMFdpdGglMjBUZW5zb3JGbG93JTIwMi4wJTJCJTNBJTBBJTIzJTIwZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMFRGQXV0b01vZGVsJTBBJTIzJTIwcGhvYmVydCUyMCUzRCUyMFRGQXV0b01vZGVsLmZyb21fcHJldHJhaW5lZCglMjJ2aW5haSUyRnBob2JlcnQtYmFzZSUyMik=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">import</span> torch
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoModel, AutoTokenizer

<span class="hljs-meta">&gt;&gt;&gt; </span>phobert = AutoModel.from_pretrained(<span class="hljs-string">&quot;vinai/phobert-base&quot;</span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>tokenizer = AutoTokenizer.from_pretrained(<span class="hljs-string">&quot;vinai/phobert-base&quot;</span>)

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># INPUT TEXT MUST BE ALREADY WORD-SEGMENTED!</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>line = <span class="hljs-string">&quot;Tôi là sinh_viên trường đại_học Công_nghệ .&quot;</span>

<span class="hljs-meta">&gt;&gt;&gt; </span>input_ids = torch.tensor([tokenizer.encode(line)])

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">with</span> torch.no_grad():
<span class="hljs-meta">... </span>    features = phobert(input_ids)  <span class="hljs-comment"># Models outputs are now tuples</span>

<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># With TensorFlow 2.0+:</span>
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># from transformers import TFAutoModel</span>
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-comment"># phobert = TFAutoModel.from_pretrained(&quot;vinai/phobert-base&quot;)</span>`,wrap:!1}}),v=new Ke({props:{$$slots:{default:[nt]},$$scope:{ctx:oe}}}),L=new ve({props:{title:"PhobertTokenizer",local:"transformers.PhobertTokenizer",headingTag:"h2"}}),R=new te({props:{name:"class transformers.PhobertTokenizer",anchor:"transformers.PhobertTokenizer",parameters:[{name:"vocab_file",val:""},{name:"merges_file",val:""},{name:"bos_token",val:" = '<s>'"},{name:"eos_token",val:" = '</s>'"},{name:"sep_token",val:" = '</s>'"},{name:"cls_token",val:" = '<s>'"},{name:"unk_token",val:" = '<unk>'"},{name:"pad_token",val:" = '<pad>'"},{name:"mask_token",val:" = '<mask>'"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.PhobertTokenizer.vocab_file",description:`<strong>vocab_file</strong> (<code>str</code>) &#x2014;
Path to the vocabulary file.`,name:"vocab_file"},{anchor:"transformers.PhobertTokenizer.merges_file",description:`<strong>merges_file</strong> (<code>str</code>) &#x2014;
Path to the merges file.`,name:"merges_file"},{anchor:"transformers.PhobertTokenizer.bos_token",description:`<strong>bos_token</strong> (<code>st</code>, <em>optional</em>, defaults to <code>&quot;&lt;s&gt;&quot;</code>) &#x2014;
The beginning of sequence token that was used during pretraining. Can be used a sequence classifier token.</p>
<div class="course-tip  bg-gradient-to-br dark:bg-gradient-to-r before:border-green-500 dark:before:border-green-800 from-green-50 dark:from-gray-900 to-white dark:to-gray-950 border border-green-50 text-green-700 dark:text-gray-400">
						
<p>When building a sequence using special tokens, this is not the token that is used for the beginning of
sequence. The token used is the <code>cls_token</code>.</p>

					</div>`,name:"bos_token"},{anchor:"transformers.PhobertTokenizer.eos_token",description:`<strong>eos_token</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;&lt;/s&gt;&quot;</code>) &#x2014;
The end of sequence token.</p>
<div class="course-tip  bg-gradient-to-br dark:bg-gradient-to-r before:border-green-500 dark:before:border-green-800 from-green-50 dark:from-gray-900 to-white dark:to-gray-950 border border-green-50 text-green-700 dark:text-gray-400">
						
<p>When building a sequence using special tokens, this is not the token that is used for the end of sequence.
The token used is the <code>sep_token</code>.</p>

					</div>`,name:"eos_token"},{anchor:"transformers.PhobertTokenizer.sep_token",description:`<strong>sep_token</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;&lt;/s&gt;&quot;</code>) &#x2014;
The separator token, which is used when building a sequence from multiple sequences, e.g. two sequences for
sequence classification or for a text and a question for question answering. It is also used as the last
token of a sequence built with special tokens.`,name:"sep_token"},{anchor:"transformers.PhobertTokenizer.cls_token",description:`<strong>cls_token</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;&lt;s&gt;&quot;</code>) &#x2014;
The classifier token which is used when doing sequence classification (classification of the whole sequence
instead of per-token classification). It is the first token of the sequence when built with special tokens.`,name:"cls_token"},{anchor:"transformers.PhobertTokenizer.unk_token",description:`<strong>unk_token</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;&lt;unk&gt;&quot;</code>) &#x2014;
The unknown token. A token that is not in the vocabulary cannot be converted to an ID and is set to be this
token instead.`,name:"unk_token"},{anchor:"transformers.PhobertTokenizer.pad_token",description:`<strong>pad_token</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;&lt;pad&gt;&quot;</code>) &#x2014;
The token used for padding, for example when batching sequences of different lengths.`,name:"pad_token"},{anchor:"transformers.PhobertTokenizer.mask_token",description:`<strong>mask_token</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;&lt;mask&gt;&quot;</code>) &#x2014;
The token used for masking values. This is the token used when training this model with masked language
modeling. This is the token which the model will try to predict.`,name:"mask_token"}],source:"https://github.com/huggingface/transformers/blob/vr_31051/src/transformers/models/phobert/tokenization_phobert.py#L51"}}),j=new te({props:{name:"add_from_file",anchor:"transformers.PhobertTokenizer.add_from_file",parameters:[{name:"f",val:""}],source:"https://github.com/huggingface/transformers/blob/vr_31051/src/transformers/models/phobert/tokenization_phobert.py#L327"}}),D=new te({props:{name:"build_inputs_with_special_tokens",anchor:"transformers.PhobertTokenizer.build_inputs_with_special_tokens",parameters:[{name:"token_ids_0",val:": List"},{name:"token_ids_1",val:": Optional = None"}],parametersDescription:[{anchor:"transformers.PhobertTokenizer.build_inputs_with_special_tokens.token_ids_0",description:`<strong>token_ids_0</strong> (<code>List[int]</code>) &#x2014;
List of IDs to which the special tokens will be added.`,name:"token_ids_0"},{anchor:"transformers.PhobertTokenizer.build_inputs_with_special_tokens.token_ids_1",description:`<strong>token_ids_1</strong> (<code>List[int]</code>, <em>optional</em>) &#x2014;
Optional second list of IDs for sequence pairs.`,name:"token_ids_1"}],source:"https://github.com/huggingface/transformers/blob/vr_31051/src/transformers/models/phobert/tokenization_phobert.py#L146",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>List of <a href="../glossary#input-ids">input IDs</a> with the appropriate special tokens.</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>List[int]</code></p>
`}}),G=new te({props:{name:"convert_tokens_to_string",anchor:"transformers.PhobertTokenizer.convert_tokens_to_string",parameters:[{name:"tokens",val:""}],source:"https://github.com/huggingface/transformers/blob/vr_31051/src/transformers/models/phobert/tokenization_phobert.py#L293"}}),F=new te({props:{name:"create_token_type_ids_from_sequences",anchor:"transformers.PhobertTokenizer.create_token_type_ids_from_sequences",parameters:[{name:"token_ids_0",val:": List"},{name:"token_ids_1",val:": Optional = None"}],parametersDescription:[{anchor:"transformers.PhobertTokenizer.create_token_type_ids_from_sequences.token_ids_0",description:`<strong>token_ids_0</strong> (<code>List[int]</code>) &#x2014;
List of IDs.`,name:"token_ids_0"},{anchor:"transformers.PhobertTokenizer.create_token_type_ids_from_sequences.token_ids_1",description:`<strong>token_ids_1</strong> (<code>List[int]</code>, <em>optional</em>) &#x2014;
Optional second list of IDs for sequence pairs.`,name:"token_ids_1"}],source:"https://github.com/huggingface/transformers/blob/vr_31051/src/transformers/models/phobert/tokenization_phobert.py#L200",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>List of zeros.</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>List[int]</code></p>
`}}),Q=new te({props:{name:"get_special_tokens_mask",anchor:"transformers.PhobertTokenizer.get_special_tokens_mask",parameters:[{name:"token_ids_0",val:": List"},{name:"token_ids_1",val:": Optional = None"},{name:"already_has_special_tokens",val:": bool = False"}],parametersDescription:[{anchor:"transformers.PhobertTokenizer.get_special_tokens_mask.token_ids_0",description:`<strong>token_ids_0</strong> (<code>List[int]</code>) &#x2014;
List of IDs.`,name:"token_ids_0"},{anchor:"transformers.PhobertTokenizer.get_special_tokens_mask.token_ids_1",description:`<strong>token_ids_1</strong> (<code>List[int]</code>, <em>optional</em>) &#x2014;
Optional second list of IDs for sequence pairs.`,name:"token_ids_1"},{anchor:"transformers.PhobertTokenizer.get_special_tokens_mask.already_has_special_tokens",description:`<strong>already_has_special_tokens</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not the token list is already formatted with special tokens for the model.`,name:"already_has_special_tokens"}],source:"https://github.com/huggingface/transformers/blob/vr_31051/src/transformers/models/phobert/tokenization_phobert.py#L172",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>A list of integers in the range [0, 1]: 1 for a special token, 0 for a sequence token.</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>List[int]</code></p>
`}}),H=new tt({props:{source:"https://github.com/huggingface/transformers/blob/main/docs/source/en/model_doc/phobert.md"}}),{c(){p=a("meta"),P=o(),b=a("p"),Z=o(),m(q.$$.fragment),se=o(),m(U.$$.fragment),re=o(),z=a("p"),z.innerHTML=Ie,ae=o(),C=a("p"),C.textContent=Be,ie=o(),E=a("p"),E.innerHTML=Le,le=o(),V=a("p"),V.innerHTML=Re,de=o(),m(I.$$.fragment),ce=o(),m(B.$$.fragment),pe=o(),m(v.$$.fragment),me=o(),m(L.$$.fragment),he=o(),d=a("div"),m(R.$$.fragment),we=o(),N=a("p"),N.textContent=je,$e=o(),S=a("p"),S.innerHTML=De,ye=o(),w=a("div"),m(j.$$.fragment),xe=o(),W=a("p"),W.textContent=Ge,Je=o(),T=a("div"),m(D.$$.fragment),Me=o(),X=a("p"),X.textContent=Fe,Pe=o(),A=a("ul"),A.innerHTML=Qe,qe=o(),$=a("div"),m(G.$$.fragment),Ue=o(),Y=a("p"),Y.textContent=He,ze=o(),y=a("div"),m(F.$$.fragment),Ce=o(),O=a("p"),O.textContent=Ze,Ee=o(),x=a("div"),m(Q.$$.fragment),Ve=o(),K=a("p"),K.innerHTML=Ne,fe=o(),m(H.$$.fragment),ge=o(),ne=a("p"),this.h()},l(e){const t=Oe("svelte-u9bgzb",document.head);p=i(t,"META",{name:!0,content:!0}),t.forEach(n),P=s(e),b=i(e,"P",{}),J(b).forEach(n),Z=s(e),h(q.$$.fragment,e),se=s(e),h(U.$$.fragment,e),re=s(e),z=i(e,"P",{"data-svelte-h":!0}),k(z)!=="svelte-1ao5fqi"&&(z.innerHTML=Ie),ae=s(e),C=i(e,"P",{"data-svelte-h":!0}),k(C)!=="svelte-vfdo9a"&&(C.textContent=Be),ie=s(e),E=i(e,"P",{"data-svelte-h":!0}),k(E)!=="svelte-pnlemp"&&(E.innerHTML=Le),le=s(e),V=i(e,"P",{"data-svelte-h":!0}),k(V)!=="svelte-cbf0gj"&&(V.innerHTML=Re),de=s(e),h(I.$$.fragment,e),ce=s(e),h(B.$$.fragment,e),pe=s(e),h(v.$$.fragment,e),me=s(e),h(L.$$.fragment,e),he=s(e),d=i(e,"DIV",{class:!0});var c=J(d);h(R.$$.fragment,c),we=s(c),N=i(c,"P",{"data-svelte-h":!0}),k(N)!=="svelte-f1kmpq"&&(N.textContent=je),$e=s(c),S=i(c,"P",{"data-svelte-h":!0}),k(S)!=="svelte-u7975k"&&(S.innerHTML=De),ye=s(c),w=i(c,"DIV",{class:!0});var _e=J(w);h(j.$$.fragment,_e),xe=s(_e),W=i(_e,"P",{"data-svelte-h":!0}),k(W)!=="svelte-ooaeix"&&(W.textContent=Ge),_e.forEach(n),Je=s(c),T=i(c,"DIV",{class:!0});var ee=J(T);h(D.$$.fragment,ee),Me=s(ee),X=i(ee,"P",{"data-svelte-h":!0}),k(X)!=="svelte-dhtv7"&&(X.textContent=Fe),Pe=s(ee),A=i(ee,"UL",{"data-svelte-h":!0}),k(A)!=="svelte-rq8uot"&&(A.innerHTML=Qe),ee.forEach(n),qe=s(c),$=i(c,"DIV",{class:!0});var ke=J($);h(G.$$.fragment,ke),Ue=s(ke),Y=i(ke,"P",{"data-svelte-h":!0}),k(Y)!=="svelte-b3k2yi"&&(Y.textContent=He),ke.forEach(n),ze=s(c),y=i(c,"DIV",{class:!0});var be=J(y);h(F.$$.fragment,be),Ce=s(be),O=i(be,"P",{"data-svelte-h":!0}),k(O)!=="svelte-qg6q9n"&&(O.textContent=Ze),be.forEach(n),Ee=s(c),x=i(c,"DIV",{class:!0});var Te=J(x);h(Q.$$.fragment,Te),Ve=s(Te),K=i(Te,"P",{"data-svelte-h":!0}),k(K)!=="svelte-1f4f5kp"&&(K.innerHTML=Ne),Te.forEach(n),c.forEach(n),fe=s(e),h(H.$$.fragment,e),ge=s(e),ne=i(e,"P",{}),J(ne).forEach(n),this.h()},h(){M(p,"name","hf:doc:metadata"),M(p,"content",st),M(w,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),M(T,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),M($,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),M(y,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),M(x,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),M(d,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8")},m(e,t){r(document.head,p),l(e,P,t),l(e,b,t),l(e,Z,t),f(q,e,t),l(e,se,t),f(U,e,t),l(e,re,t),l(e,z,t),l(e,ae,t),l(e,C,t),l(e,ie,t),l(e,E,t),l(e,le,t),l(e,V,t),l(e,de,t),f(I,e,t),l(e,ce,t),f(B,e,t),l(e,pe,t),f(v,e,t),l(e,me,t),f(L,e,t),l(e,he,t),l(e,d,t),f(R,d,null),r(d,we),r(d,N),r(d,$e),r(d,S),r(d,ye),r(d,w),f(j,w,null),r(w,xe),r(w,W),r(d,Je),r(d,T),f(D,T,null),r(T,Me),r(T,X),r(T,Pe),r(T,A),r(d,qe),r(d,$),f(G,$,null),r($,Ue),r($,Y),r(d,ze),r(d,y),f(F,y,null),r(y,Ce),r(y,O),r(d,Ee),r(d,x),f(Q,x,null),r(x,Ve),r(x,K),l(e,fe,t),f(H,e,t),l(e,ge,t),l(e,ne,t),ue=!0},p(e,[t]){const c={};t&2&&(c.$$scope={dirty:t,ctx:e}),v.$set(c)},i(e){ue||(g(q.$$.fragment,e),g(U.$$.fragment,e),g(I.$$.fragment,e),g(B.$$.fragment,e),g(v.$$.fragment,e),g(L.$$.fragment,e),g(R.$$.fragment,e),g(j.$$.fragment,e),g(D.$$.fragment,e),g(G.$$.fragment,e),g(F.$$.fragment,e),g(Q.$$.fragment,e),g(H.$$.fragment,e),ue=!0)},o(e){u(q.$$.fragment,e),u(U.$$.fragment,e),u(I.$$.fragment,e),u(B.$$.fragment,e),u(v.$$.fragment,e),u(L.$$.fragment,e),u(R.$$.fragment,e),u(j.$$.fragment,e),u(D.$$.fragment,e),u(G.$$.fragment,e),u(F.$$.fragment,e),u(Q.$$.fragment,e),u(H.$$.fragment,e),ue=!1},d(e){e&&(n(P),n(b),n(Z),n(se),n(re),n(z),n(ae),n(C),n(ie),n(E),n(le),n(V),n(de),n(ce),n(pe),n(me),n(he),n(d),n(fe),n(ge),n(ne)),n(p),_(q,e),_(U,e),_(I,e),_(B,e),_(v,e),_(L,e),_(R),_(j),_(D),_(G),_(F),_(Q),_(H,e)}}}const st='{"title":"PhoBERT","local":"phobert","sections":[{"title":"Overview","local":"overview","sections":[],"depth":2},{"title":"Usage example","local":"usage-example","sections":[],"depth":2},{"title":"PhobertTokenizer","local":"transformers.PhobertTokenizer","sections":[],"depth":2}],"depth":1}';function rt(oe){return We(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class mt extends Ae{constructor(p){super(),Ye(this,p,rt,ot,Se,{})}}export{mt as component};
