import{s as Gs,c as Xs,u as Zs,g as Qs,d as Ks,o as el,n as Ya}from"../chunks/scheduler.9991993c.js";import{S as qs,i as Os,r as f,u as g,v as h,d as m,t as p,w as u,g as o,m as Bs,s as r,h as s,j as _,n as Rs,f as n,c as a,k as $,a as i,y as t,o as tl,A as rl,x as c}from"../chunks/index.7fc9a5e7.js";import{T as Ys}from"../chunks/Tip.9de92fc6.js";import{D as C}from"../chunks/Docstring.ef7d0149.js";import{C as Oa}from"../chunks/CodeBlock.e11cba92.js";import{E as Vs}from"../chunks/ExampleCodeBlock.0db1a011.js";import{H as Vr,E as al}from"../chunks/EditOnGithub.84ab7f0e.js";function nl(I){let d,x,b,k,M;const v=I[1].default,y=Xs(v,I,I[2],null);return{c(){d=o("p"),x=Bs("Deprecated in "),b=Bs(I[0]),k=r(),y&&y.c(),this.h()},l(L){d=s(L,"P",{class:!0});var E=_(d);x=Rs(E,"Deprecated in "),b=Rs(E,I[0]),E.forEach(n),k=a(L),y&&y.l(L),this.h()},h(){$(d,"class","font-medium")},m(L,E){i(L,d,E),t(d,x),t(d,b),i(L,k,E),y&&y.m(L,E),M=!0},p(L,E){(!M||E&1)&&tl(b,L[0]),y&&y.p&&(!M||E&4)&&Zs(y,v,L,L[2],M?Ks(v,L[2],E,null):Qs(L[2]),null)},i(L){M||(m(y,L),M=!0)},o(L){p(y,L),M=!1},d(L){L&&(n(d),n(k)),y&&y.d(L)}}}function ol(I){let d,x;return d=new Ys({props:{warning:!0,$$slots:{default:[nl]},$$scope:{ctx:I}}}),{c(){f(d.$$.fragment)},l(b){g(d.$$.fragment,b)},m(b,k){h(d,b,k),x=!0},p(b,[k]){const M={};k&5&&(M.$$scope={dirty:k,ctx:b}),d.$set(M)},i(b){x||(m(d.$$.fragment,b),x=!0)},o(b){p(d.$$.fragment,b),x=!1},d(b){u(d,b)}}}function sl(I,d,x){let{$$slots:b={},$$scope:k}=d,{version:M}=d;return I.$$set=v=>{"version"in v&&x(0,M=v.version),"$$scope"in v&&x(2,k=v.$$scope)},[M,b,k]}class ll extends qs{constructor(d){super(),Os(this,d,sl,ol,Gs,{version:0})}}function il(I){let d,x="Setting <code>WANDB_LOG_MODEL</code> as <code>bool</code> will be deprecated in version 5 of 🤗 Transformers.";return{c(){d=o("p"),d.innerHTML=x},l(b){d=s(b,"P",{"data-svelte-h":!0}),c(d)!=="svelte-fxlq1n"&&(d.innerHTML=x)},m(b,k){i(b,d,k)},p:Ya,d(b){b&&n(d)}}}function cl(I){let d,x="Example:",b,k,M;return k=new Oa({props:{code:"JTIzJTIwTm90ZSUzQSUyMFRoaXMlMjBleGFtcGxlJTIwc2tpcHMlMjBvdmVyJTIwc29tZSUyMHNldHVwJTIwc3RlcHMlMjBmb3IlMjBicmV2aXR5LiUwQWZyb20lMjBmbHl0ZWtpdCUyMGltcG9ydCUyMGN1cnJlbnRfY29udGV4dCUyQyUyMHRhc2slMEElMEElMEElNDB0YXNrJTBBZGVmJTIwdHJhaW5faGZfdHJhbnNmb3JtZXIoKSUzQSUwQSUyMCUyMCUyMCUyMGNwJTIwJTNEJTIwY3VycmVudF9jb250ZXh0KCkuY2hlY2twb2ludCUwQSUyMCUyMCUyMCUyMHRyYWluZXIlMjAlM0QlMjBUcmFpbmVyKC4uLiUyQyUyMGNhbGxiYWNrcyUzRCU1QkZseXRlQ2FsbGJhY2soKSU1RCklMEElMjAlMjAlMjAlMjBvdXRwdXQlMjAlM0QlMjB0cmFpbmVyLnRyYWluKHJlc3VtZV9mcm9tX2NoZWNrcG9pbnQlM0RjcC5yZXN0b3JlKCkp",highlighted:`<span class="hljs-comment"># Note: This example skips over some setup steps for brevity.</span>
<span class="hljs-keyword">from</span> flytekit <span class="hljs-keyword">import</span> current_context, task


<span class="hljs-meta">@task</span>
<span class="hljs-keyword">def</span> <span class="hljs-title function_">train_hf_transformer</span>():
    cp = current_context().checkpoint
    trainer = Trainer(..., callbacks=[FlyteCallback()])
    output = trainer.train(resume_from_checkpoint=cp.restore())`,wrap:!1}}),{c(){d=o("p"),d.textContent=x,b=r(),f(k.$$.fragment)},l(v){d=s(v,"P",{"data-svelte-h":!0}),c(d)!=="svelte-11lpom8"&&(d.textContent=x),b=a(v),g(k.$$.fragment,v)},m(v,y){i(v,d,y),i(v,b,y),h(k,v,y),M=!0},p:Ya,i(v){M||(m(k.$$.fragment,v),M=!0)},o(v){p(k.$$.fragment,v),M=!1},d(v){v&&(n(d),n(b)),u(k,v)}}}function dl(I){let d,x="Example:",b,k,M;return k=new Oa({props:{code:"Y2xhc3MlMjBQcmludGVyQ2FsbGJhY2soVHJhaW5lckNhbGxiYWNrKSUzQSUwQSUyMCUyMCUyMCUyMGRlZiUyMG9uX2xvZyhzZWxmJTJDJTIwYXJncyUyQyUyMHN0YXRlJTJDJTIwY29udHJvbCUyQyUyMGxvZ3MlM0ROb25lJTJDJTIwKiprd2FyZ3MpJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwXyUyMCUzRCUyMGxvZ3MucG9wKCUyMnRvdGFsX2Zsb3MlMjIlMkMlMjBOb25lKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwc3RhdGUuaXNfbG9jYWxfcHJvY2Vzc196ZXJvJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcHJpbnQobG9ncyk=",highlighted:`<span class="hljs-keyword">class</span> <span class="hljs-title class_">PrinterCallback</span>(<span class="hljs-title class_ inherited__">TrainerCallback</span>):
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">on_log</span>(<span class="hljs-params">self, args, state, control, logs=<span class="hljs-literal">None</span>, **kwargs</span>):
        _ = logs.pop(<span class="hljs-string">&quot;total_flos&quot;</span>, <span class="hljs-literal">None</span>)
        <span class="hljs-keyword">if</span> state.is_local_process_zero:
            <span class="hljs-built_in">print</span>(logs)`,wrap:!1}}),{c(){d=o("p"),d.textContent=x,b=r(),f(k.$$.fragment)},l(v){d=s(v,"P",{"data-svelte-h":!0}),c(d)!=="svelte-11lpom8"&&(d.textContent=x),b=a(v),g(k.$$.fragment,v)},m(v,y){i(v,d,y),i(v,b,y),h(k,v,y),M=!0},p:Ya,i(v){M||(m(k.$$.fragment,v),M=!0)},o(v){p(k.$$.fragment,v),M=!1},d(v){v&&(n(d),n(b)),u(k,v)}}}function ml(I){let d,x=`In all this class, one step is to be understood as one update step. When using gradient accumulation, one update
step may require several forward and backward passes: if you use <code>gradient_accumulation_steps=n</code>, then one update
step requires going through <em>n</em> batches.`;return{c(){d=o("p"),d.innerHTML=x},l(b){d=s(b,"P",{"data-svelte-h":!0}),c(d)!=="svelte-rhwh6p"&&(d.innerHTML=x)},m(b,k){i(b,d,k)},p:Ya,d(b){b&&n(d)}}}function pl(I){let d,x,b,k,M,v,y,L="Callbacks可以用来自定义PyTorch [Trainer]中训练循环行为的对象（此功能尚未在TensorFlow中实现），该对象可以检查训练循环状态（用于进度报告、在TensorBoard或其他ML平台上记录日志等），并做出决策（例如提前停止）。",E,Ie,Lo='Callbacks是“只读”的代码片段，除了它们返回的[TrainerControl]对象外，它们不能更改训练循环中的任何内容。对于需要更改训练循环的自定义，您应该继承[Trainer]并重载您需要的方法（有关示例，请参见<a href="trainer">trainer</a>）。',Gr,Ee,Io="默认情况下，<code>TrainingArguments.report_to</code> 设置为”all”，然后[Trainer]将使用以下callbacks。",qr,He,Eo='<li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.DefaultFlowCallback">DefaultFlowCallback</a>，它处理默认的日志记录、保存和评估行为</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.PrinterCallback">PrinterCallback</a> 或 <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.ProgressCallback">ProgressCallback</a>，用于显示进度和打印日志（如果通过<code>TrainingArguments</code>停用tqdm，则使用第一个函数；否则使用第二个）。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.TensorBoardCallback">TensorBoardCallback</a>，如果TensorBoard可访问（通过PyTorch版本 &gt;= 1.4 或者 tensorboardX）。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.WandbCallback">WandbCallback</a>，如果安装了<a href="https://www.wandb.com/" rel="nofollow">wandb</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.CometCallback">CometCallback</a>，如果安装了<a href="https://www.comet.ml/site/" rel="nofollow">comet_ml</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.MLflowCallback">MLflowCallback</a>，如果安装了<a href="https://www.mlflow.org/" rel="nofollow">mlflow</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.NeptuneCallback">NeptuneCallback</a>，如果安装了<a href="https://neptune.ai/" rel="nofollow">neptune</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.AzureMLCallback">AzureMLCallback</a>，如果安装了<a href="https://pypi.org/project/azureml-sdk/" rel="nofollow">azureml-sdk</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.CodeCarbonCallback">CodeCarbonCallback</a>，如果安装了<a href="https://pypi.org/project/codecarbon/" rel="nofollow">codecarbon</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.ClearMLCallback">ClearMLCallback</a>，如果安装了<a href="https://github.com/allegroai/clearml" rel="nofollow">clearml</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.DagsHubCallback">DagsHubCallback</a>，如果安装了<a href="https://dagshub.com/" rel="nofollow">dagshub</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.FlyteCallback">FlyteCallback</a>，如果安装了<a href="https://flyte.org/" rel="nofollow">flyte</a>。</li> <li><a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.integrations.DVCLiveCallback">DVCLiveCallback</a>，如果安装了<a href="https://dvc.org/doc/dvclive" rel="nofollow">dvclive</a>。</li>',Or,je,Ho="如果安装了一个软件包，但您不希望使用相关的集成，您可以将 <code>TrainingArguments.report_to</code> 更改为仅包含您想要使用的集成的列表（例如 <code>[&quot;azure_ml&quot;, &quot;wandb&quot;]</code>）。",Yr,Je,jo='实现callbacks的主要类是<a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a>。它获取用于实例化<code>Trainer</code>的<code>TrainingArguments</code>，可以通过<a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerState">TrainerState</a>访问该Trainer的内部状态，并可以通过<a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerControl">TrainerControl</a>对训练循环执行一些操作。',Xr,De,Zr,Ue,Jo='这里是库里可用<a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a>的列表：',Qr,F,ze,Xa,jt,Do='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://www.comet.ml/site/" rel="nofollow">Comet ML</a>.',Za,j,Ne,Qa,Jt,Uo="Setup the optional Comet.ml integration.",Ka,Dt,zo="Environment:",en,Ut,No=`<li><strong>COMET_MODE</strong> (<code>str</code>, <em>optional</em>, defaults to <code>ONLINE</code>):
Whether to create an online, offline experiment or disable Comet logging. Can be <code>OFFLINE</code>, <code>ONLINE</code>, or
<code>DISABLED</code>.</li> <li><strong>COMET_PROJECT_NAME</strong> (<code>str</code>, <em>optional</em>):
Comet project name for experiments.</li> <li><strong>COMET_OFFLINE_DIRECTORY</strong> (<code>str</code>, <em>optional</em>):
Folder to use for saving offline experiments when <code>COMET_MODE</code> is <code>OFFLINE</code>.</li> <li><strong>COMET_LOG_ASSETS</strong> (<code>str</code>, <em>optional</em>, defaults to <code>TRUE</code>):
Whether or not to log training assets (tf event logs, checkpoints, etc), to Comet. Can be <code>TRUE</code>, or
<code>FALSE</code>.</li>`,tn,zt,Ao=`For a number of configurable items in the environment, see
<a href="https://www.comet.ml/docs/python-sdk/advanced/#comet-configuration-variables" rel="nofollow">here</a>.`,Kr,X,Ae,rn,Nt,So='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that handles the default flow of the training loop for logs, evaluation and checkpoints.',ea,Z,Se,an,At,Fo='A bare <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that just prints the logs.',ta,Q,Fe,nn,St,Po='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that displays the progress of training or evaluation.',ra,P,Pe,on,Ft,Wo='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that handles early stopping.',sn,Pt,Bo=`This callback depends on <code>TrainingArguments</code> argument <em>load_best_model_at_end</em> functionality to set best_metric
in <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerState">TrainerState</a>. Note that if the <code>TrainingArguments</code> argument <em>save_steps</em> differs from <em>eval_steps</em>, the
early stopping will not occur until the next save step.`,aa,K,We,ln,Wt,Ro='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://www.tensorflow.org/tensorboard" rel="nofollow">TensorBoard</a>.',na,W,Be,cn,Bt,Vo='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that logs metrics, media, model checkpoints to <a href="https://www.wandb.com/" rel="nofollow">Weight and Biases</a>.',dn,J,Re,mn,Rt,Go="Setup the optional Weights &amp; Biases (<em>wandb</em>) integration.",pn,Vt,qo=`One can subclass and override this method to customize the setup if needed. Find more information
<a href="https://docs.wandb.ai/guides/integrations/huggingface" rel="nofollow">here</a>. You can also override the following environment
variables:`,fn,Gt,Oo="Environment:",gn,B,Ve,qt,Yo=`<strong>WANDB_LOG_MODEL</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;false&quot;</code>):
Whether to log model and checkpoints during training. Can be <code>&quot;end&quot;</code>, <code>&quot;checkpoint&quot;</code> or <code>&quot;false&quot;</code>. If set
to <code>&quot;end&quot;</code>, the model will be uploaded at the end of training. If set to <code>&quot;checkpoint&quot;</code>, the checkpoint
will be uploaded every <code>args.save_steps</code> . If set to <code>&quot;false&quot;</code>, the model will not be uploaded. Use along
with <code>load_best_model_at_end()</code> to upload best model.`,hn,ne,un,Ot,Xo=`<p><strong>WANDB_WATCH</strong> (<code>str</code>, <em>optional</em> defaults to <code>&quot;false&quot;</code>):
Can be <code>&quot;gradients&quot;</code>, <code>&quot;all&quot;</code>, <code>&quot;parameters&quot;</code>, or <code>&quot;false&quot;</code>. Set to <code>&quot;all&quot;</code> to log gradients and
parameters.</p>`,bn,Yt,Zo=`<p><strong>WANDB_PROJECT</strong> (<code>str</code>, <em>optional</em>, defaults to <code>&quot;huggingface&quot;</code>):
Set this to a custom string to store results in a different project.</p>`,vn,Xt,Qo=`<p><strong>WANDB_DISABLED</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>):
Whether to disable wandb entirely. Set <code>WANDB_DISABLED=true</code> to disable.</p>`,oa,R,Ge,_n,Zt,Ko=`A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://www.mlflow.org/" rel="nofollow">MLflow</a>. Can be disabled by setting
environment variable <code>DISABLE_MLFLOW_INTEGRATION = TRUE</code>.`,Tn,N,qe,$n,Qt,es="Setup the optional MLflow integration.",Cn,Kt,ts="Environment:",kn,er,rs=`<li><strong>HF_MLFLOW_LOG_ARTIFACTS</strong> (<code>str</code>, <em>optional</em>):
Whether to use MLflow <code>.log_artifact()</code> facility to log artifacts. This only makes sense if logging to a
remote server, e.g. s3 or GCS. If set to <code>True</code> or <em>1</em>, will copy each saved checkpoint on each save in
<code>TrainingArguments</code>’s <code>output_dir</code> to the local or remote artifact storage. Using it without a remote
storage will just copy the files to your artifact location.</li> <li><strong>MLFLOW_TRACKING_URI</strong> (<code>str</code>, <em>optional</em>):
Whether to store runs at a specific path or remote server. Unset by default, which skips setting the
tracking URI entirely.</li> <li><strong>MLFLOW_EXPERIMENT_NAME</strong> (<code>str</code>, <em>optional</em>, defaults to <code>None</code>):
Whether to use an MLflow experiment_name under which to launch the run. Default to <code>None</code> which will point
to the <code>Default</code> experiment in MLflow. Otherwise, it is a case sensitive name of the experiment to be
activated. If an experiment with this name does not exist, a new experiment with this name is created.</li> <li><strong>MLFLOW_TAGS</strong> (<code>str</code>, <em>optional</em>):
A string dump of a dictionary of key/value pair to be added to the MLflow run as tags. Example:
<code>os.environ[&#39;MLFLOW_TAGS&#39;]=&#39;{&quot;release.candidate&quot;: &quot;RC1&quot;, &quot;release.version&quot;: &quot;2.2.0&quot;}&#39;</code>.</li> <li><strong>MLFLOW_NESTED_RUN</strong> (<code>str</code>, <em>optional</em>):
Whether to use MLflow nested runs. If set to <code>True</code> or <em>1</em>, will create a nested run inside the current
run.</li> <li><strong>MLFLOW_RUN_ID</strong> (<code>str</code>, <em>optional</em>):
Allow to reattach to an existing run which can be usefull when resuming training from a checkpoint. When
<code>MLFLOW_RUN_ID</code> environment variable is set, <code>start_run</code> attempts to resume a run with the specified run ID
and other parameters are ignored.</li> <li><strong>MLFLOW_FLATTEN_PARAMS</strong> (<code>str</code>, <em>optional</em>, defaults to <code>False</code>):
Whether to flatten the parameters dictionary before logging.</li>`,sa,ee,Oe,wn,tr,as='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://pypi.org/project/azureml-sdk/" rel="nofollow">AzureML</a>.',la,te,Ye,Mn,rr,ns='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that tracks the CO2 emission of training.',ia,V,Xe,yn,ar,os='TrainerCallback that sends the logs to <a href="https://app.neptune.ai" rel="nofollow">Neptune</a>.',xn,nr,ss=`For instructions and examples, see the <a href="https://docs.neptune.ai/integrations/transformers" rel="nofollow">Transformers integration
guide</a> in the Neptune documentation.`,ca,D,Ze,Ln,or,ls='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://clear.ml/" rel="nofollow">ClearML</a>.',In,sr,is="Environment:",En,lr,cs=`<li><strong>CLEARML_PROJECT</strong> (<code>str</code>, <em>optional</em>, defaults to <code>HuggingFace Transformers</code>):
ClearML project name.</li> <li><strong>CLEARML_TASK</strong> (<code>str</code>, <em>optional</em>, defaults to <code>Trainer</code>):
ClearML task name.</li> <li><strong>CLEARML_LOG_MODEL</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>):
Whether to log models as artifacts during training.</li>`,da,G,Qe,Hn,ir,ds='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that logs to <a href="https://dagshub.com/" rel="nofollow">DagsHub</a>. Extends <code>MLflowCallback</code>',jn,A,Ke,Jn,cr,ms="Setup the DagsHub’s Logging integration.",Dn,dr,ps="Environment:",Un,mr,fs=`<li><strong>HF_DAGSHUB_LOG_ARTIFACTS</strong> (<code>str</code>, <em>optional</em>):
Whether to save the data and model artifacts for the experiment. Default to <code>False</code>.</li>`,ma,q,et,zn,pr,gs=`A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://flyte.org/" rel="nofollow">Flyte</a>.
NOTE: This callback only works within a Flyte task.`,Nn,oe,pa,U,tt,An,fr,hs='A <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://www.dvc.org/doc/dvclive" rel="nofollow">DVCLive</a>.',Sn,gr,us=`Use the environment variables below in <code>setup</code> to configure the integration. To customize this callback beyond
those environment variables, see <a href="https://dvc.org/doc/dvclive/ml-frameworks/huggingface" rel="nofollow">here</a>.`,Fn,S,rt,Pn,hr,bs=`Setup the optional DVCLive integration. To customize this callback beyond the environment variables below, see
<a href="https://dvc.org/doc/dvclive/ml-frameworks/huggingface" rel="nofollow">here</a>.`,Wn,ur,vs="Environment:",Bn,br,_s=`<li><strong>HF_DVCLIVE_LOG_MODEL</strong> (<code>str</code>, <em>optional</em>):
Whether to use <code>dvclive.Live.log_artifact()</code> to log checkpoints created by <code>Trainer</code>. If set to <code>True</code> or
<em>1</em>, the final checkpoint is logged at the end of training. If set to <code>all</code>, the entire
<code>TrainingArguments</code>’s <code>output_dir</code> is logged at each checkpoint.</li>`,fa,at,ga,T,nt,Rn,vr,Ts=`A class for objects that will inspect the state of the training loop at some events and take some decisions. At
each of those events the following arguments are available:`,Vn,_r,$s=`The <code>control</code> object is the only one that can be changed by the callback, in which case the event that changes it
should return the modified version.`,Gn,Tr,Cs=`The argument <code>args</code>, <code>state</code> and <code>control</code> are positionals for all events, all the others are grouped in <code>kwargs</code>.
You can unpack the ones you need in the signature of the event using them. As an example, see the code of the
simple <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.PrinterCallback">PrinterCallback</a>.`,qn,se,On,le,ot,Yn,$r,ks="Event called at the beginning of an epoch.",Xn,ie,st,Zn,Cr,ws="Event called at the end of an epoch.",Qn,ce,lt,Kn,kr,Ms="Event called after an evaluation phase.",eo,de,it,to,wr,ys="Event called at the end of the initialization of the <code>Trainer</code>.",ro,me,ct,ao,Mr,xs="Event called after logging the last logs.",no,pe,dt,oo,yr,Ls="Event called after a successful prediction.",so,fe,mt,lo,xr,Is="Event called after a prediction step.",io,ge,pt,co,Lr,Es="Event called after a checkpoint save.",mo,he,ft,po,Ir,Hs=`Event called at the beginning of a training step. If using gradient accumulation, one training step might take
several inputs.`,fo,ue,gt,go,Er,js=`Event called at the end of a training step. If using gradient accumulation, one training step might take
several inputs.`,ho,be,ht,uo,Hr,Js="Event called at the end of an substep during gradient accumulation.",bo,ve,ut,vo,jr,Ds="Event called at the beginning of training.",_o,_e,bt,To,Jr,Us="Event called at the end of training.",ha,vt,zs="以下是如何使用PyTorch注册自定义callback的示例：",ua,_t,Ns="<code>Trainer</code>:",ba,Tt,va,$t,As="注册callback的另一种方式是调用 <code>trainer.add_callback()</code>，如下所示：",_a,Ct,Ta,kt,$a,H,wt,$o,Dr,Ss=`A class containing the <code>Trainer</code> inner state that will be saved along the model and optimizer when checkpointing
and passed to the <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a>.`,Co,Te,ko,$e,Mt,wo,Ur,Fs="Create an instance from the content of <code>json_path</code>.",Mo,Ce,yt,yo,zr,Ps="Save the content of this instance in JSON format inside <code>json_path</code>.",Ca,xt,ka,re,Lt,xo,Nr,Ws=`A class that handles the <code>Trainer</code> control flow. This class is used by the <a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> to activate some
switches in the training loop.`,wa,It,Ma,Rr,ya;return M=new Vr({props:{title:"Callbacks",local:"callbacks",headingTag:"h1"}}),De=new Vr({props:{title:"可用的Callbacks",local:"transformers.integrations.CometCallback",headingTag:"h2"}}),ze=new C({props:{name:"class transformers.integrations.CometCallback",anchor:"transformers.integrations.CometCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L851"}}),Ne=new C({props:{name:"setup",anchor:"transformers.integrations.CometCallback.setup",parameters:[{name:"args",val:""},{name:"state",val:""},{name:"model",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L862"}}),Ae=new C({props:{name:"class transformers.DefaultFlowCallback",anchor:"transformers.DefaultFlowCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L516"}}),Se=new C({props:{name:"class transformers.PrinterCallback",anchor:"transformers.PrinterCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L621"}}),Fe=new C({props:{name:"class transformers.ProgressCallback",anchor:"transformers.ProgressCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L566"}}),Pe=new C({props:{name:"class transformers.EarlyStoppingCallback",anchor:"transformers.EarlyStoppingCallback",parameters:[{name:"early_stopping_patience",val:": int = 1"},{name:"early_stopping_threshold",val:": Optional = 0.0"}],parametersDescription:[{anchor:"transformers.EarlyStoppingCallback.early_stopping_patience",description:`<strong>early_stopping_patience</strong> (<code>int</code>) &#x2014;
Use with <code>metric_for_best_model</code> to stop training when the specified metric worsens for
<code>early_stopping_patience</code> evaluation calls.`,name:"early_stopping_patience"},{anchor:"transformers.EarlyStoppingCallback.early_stopping_threshold(float,",description:`<strong>early_stopping_threshold(<code>float</code>,</strong> <em>optional</em>) &#x2014;
Use with TrainingArguments <code>metric_for_best_model</code> and <code>early_stopping_patience</code> to denote how much the
specified metric must improve to satisfy early stopping conditions. \``,name:"early_stopping_threshold(float,"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L632"}}),We=new C({props:{name:"class transformers.integrations.TensorBoardCallback",anchor:"transformers.integrations.TensorBoardCallback",parameters:[{name:"tb_writer",val:" = None"}],parametersDescription:[{anchor:"transformers.integrations.TensorBoardCallback.tb_writer",description:`<strong>tb_writer</strong> (<code>SummaryWriter</code>, <em>optional</em>) &#x2014;
The writer to use. Will instantiate one if not set.`,name:"tb_writer"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L580"}}),Be=new C({props:{name:"class transformers.integrations.WandbCallback",anchor:"transformers.integrations.WandbCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L666"}}),Re=new C({props:{name:"setup",anchor:"transformers.integrations.WandbCallback.setup",parameters:[{name:"args",val:""},{name:"state",val:""},{name:"model",val:""},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L691"}}),ne=new ll({props:{version:"5.0",$$slots:{default:[il]},$$scope:{ctx:I}}}),Ge=new C({props:{name:"class transformers.integrations.MLflowCallback",anchor:"transformers.integrations.MLflowCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L951"}}),qe=new C({props:{name:"setup",anchor:"transformers.integrations.MLflowCallback.setup",parameters:[{name:"args",val:""},{name:"state",val:""},{name:"model",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L970"}}),Oe=new C({props:{name:"class transformers.integrations.AzureMLCallback",anchor:"transformers.integrations.AzureMLCallback",parameters:[{name:"azureml_run",val:" = None"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L928"}}),Ye=new C({props:{name:"class transformers.integrations.CodeCarbonCallback",anchor:"transformers.integrations.CodeCarbonCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L1452"}}),Xe=new C({props:{name:"class transformers.integrations.NeptuneCallback",anchor:"transformers.integrations.NeptuneCallback",parameters:[{name:"api_token",val:": Optional = None"},{name:"project",val:": Optional = None"},{name:"name",val:": Optional = None"},{name:"base_namespace",val:": str = 'finetuning'"},{name:"run",val:" = None"},{name:"log_parameters",val:": bool = True"},{name:"log_checkpoints",val:": Optional = None"},{name:"**neptune_run_kwargs",val:""}],parametersDescription:[{anchor:"transformers.integrations.NeptuneCallback.api_token",description:`<strong>api_token</strong> (<code>str</code>, <em>optional</em>) &#x2014; Neptune API token obtained upon registration.
You can leave this argument out if you have saved your token to the <code>NEPTUNE_API_TOKEN</code> environment
variable (strongly recommended). See full setup instructions in the
<a href="https://docs.neptune.ai/setup/installation" rel="nofollow">docs</a>.`,name:"api_token"},{anchor:"transformers.integrations.NeptuneCallback.project",description:`<strong>project</strong> (<code>str</code>, <em>optional</em>) &#x2014; Name of an existing Neptune project, in the form &#x201C;workspace-name/project-name&#x201D;.
You can find and copy the name in Neptune from the project settings -&gt; Properties. If None (default), the
value of the <code>NEPTUNE_PROJECT</code> environment variable is used.`,name:"project"},{anchor:"transformers.integrations.NeptuneCallback.name",description:"<strong>name</strong> (<code>str</code>, <em>optional</em>) &#x2014; Custom name for the run.",name:"name"},{anchor:"transformers.integrations.NeptuneCallback.base_namespace",description:`<strong>base_namespace</strong> (<code>str</code>, optional, defaults to &#x201C;finetuning&#x201D;) &#x2014; In the Neptune run, the root namespace
that will contain all of the metadata logged by the callback.`,name:"base_namespace"},{anchor:"transformers.integrations.NeptuneCallback.log_parameters",description:`<strong>log_parameters</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
If True, logs all Trainer arguments and model parameters provided by the Trainer.`,name:"log_parameters"},{anchor:"transformers.integrations.NeptuneCallback.log_checkpoints",description:`<strong>log_checkpoints</strong> (<code>str</code>, <em>optional</em>) &#x2014; If &#x201C;same&#x201D;, uploads checkpoints whenever they are saved by the Trainer.
If &#x201C;last&#x201D;, uploads only the most recently saved checkpoint. If &#x201C;best&#x201D;, uploads the best checkpoint (among
the ones saved by the Trainer). If <code>None</code>, does not upload checkpoints.`,name:"log_checkpoints"},{anchor:"transformers.integrations.NeptuneCallback.run",description:`<strong>run</strong> (<code>Run</code>, <em>optional</em>) &#x2014; Pass a Neptune run object if you want to continue logging to an existing run.
Read more about resuming runs in the <a href="https://docs.neptune.ai/logging/to_existing_object" rel="nofollow">docs</a>.`,name:"run"},{anchor:"transformers.integrations.NeptuneCallback.*neptune_run_kwargs",description:`*<strong>*neptune_run_kwargs</strong> (<em>optional</em>) &#x2014;
Additional keyword arguments to be passed directly to the
<a href="https://docs.neptune.ai/api/neptune#init_run" rel="nofollow"><code>neptune.init_run()</code></a> function when a new run is created.`,name:"*neptune_run_kwargs"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L1179"}}),Ze=new C({props:{name:"class transformers.integrations.ClearMLCallback",anchor:"transformers.integrations.ClearMLCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L1486"}}),Qe=new C({props:{name:"class transformers.integrations.DagsHubCallback",anchor:"transformers.integrations.DagsHubCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L1119"}}),Ke=new C({props:{name:"setup",anchor:"transformers.integrations.DagsHubCallback.setup",parameters:[{name:"*args",val:""},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L1133"}}),et=new C({props:{name:"class transformers.integrations.FlyteCallback",anchor:"transformers.integrations.FlyteCallback",parameters:[{name:"save_log_history",val:": bool = True"},{name:"sync_checkpoints",val:": bool = True"}],parametersDescription:[{anchor:"transformers.integrations.FlyteCallback.save_log_history",description:`<strong>save_log_history</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
When set to True, the training logs are saved as a Flyte Deck.`,name:"save_log_history"},{anchor:"transformers.integrations.FlyteCallback.sync_checkpoints",description:`<strong>sync_checkpoints</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
When set to True, checkpoints are synced with Flyte and can be used to resume training in the case of an
interruption.`,name:"sync_checkpoints"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L1739"}}),oe=new Vs({props:{anchor:"transformers.integrations.FlyteCallback.example",$$slots:{default:[cl]},$$scope:{ctx:I}}}),tt=new C({props:{name:"class transformers.integrations.DVCLiveCallback",anchor:"transformers.integrations.DVCLiveCallback",parameters:[{name:"live",val:": Optional = None"},{name:"log_model",val:": Union = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"transformers.integrations.DVCLiveCallback.live",description:`<strong>live</strong> (<code>dvclive.Live</code>, <em>optional</em>, defaults to <code>None</code>) &#x2014;
Optional Live instance. If None, a new instance will be created using **kwargs.`,name:"live"},{anchor:"transformers.integrations.DVCLiveCallback.log_model",description:`<strong>log_model</strong> (Union[Literal[&#x201C;all&#x201D;], bool], <em>optional</em>, defaults to <code>None</code>) &#x2014;
Whether to use <code>dvclive.Live.log_artifact()</code> to log checkpoints created by <code>Trainer</code>. If set to <code>True</code>,
the final checkpoint is logged at the end of training. If set to <code>&quot;all&quot;</code>, the entire
<code>TrainingArguments</code>&#x2019;s <code>output_dir</code> is logged at each checkpoint.`,name:"log_model"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L1802"}}),rt=new C({props:{name:"setup",anchor:"transformers.integrations.DVCLiveCallback.setup",parameters:[{name:"args",val:""},{name:"state",val:""},{name:"model",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/integrations/integration_utils.py#L1843"}}),at=new Vr({props:{title:"TrainerCallback",local:"transformers.TrainerCallback",headingTag:"h2"}}),nt=new C({props:{name:"class transformers.TrainerCallback",anchor:"transformers.TrainerCallback",parameters:[],parametersDescription:[{anchor:"transformers.TrainerCallback.args",description:`<strong>args</strong> (<code>TrainingArguments</code>) &#x2014;
The training arguments used to instantiate the <code>Trainer</code>.`,name:"args"},{anchor:"transformers.TrainerCallback.state",description:`<strong>state</strong> (<a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerState">TrainerState</a>) &#x2014;
The current state of the <code>Trainer</code>.`,name:"state"},{anchor:"transformers.TrainerCallback.control",description:`<strong>control</strong> (<a href="/docs/transformers/v4.41.2/zh/main_classes/callback#transformers.TrainerControl">TrainerControl</a>) &#x2014;
The object that is returned to the <code>Trainer</code> and can be used to make some decisions.`,name:"control"},{anchor:"transformers.TrainerCallback.model",description:`<strong>model</strong> (<a href="/docs/transformers/v4.41.2/zh/main_classes/model#transformers.PreTrainedModel">PreTrainedModel</a> or <code>torch.nn.Module</code>) &#x2014;
The model being trained.`,name:"model"},{anchor:"transformers.TrainerCallback.tokenizer",description:`<strong>tokenizer</strong> (<a href="/docs/transformers/v4.41.2/zh/main_classes/tokenizer#transformers.PreTrainedTokenizer">PreTrainedTokenizer</a>) &#x2014;
The tokenizer used for encoding the data.`,name:"tokenizer"},{anchor:"transformers.TrainerCallback.optimizer",description:`<strong>optimizer</strong> (<code>torch.optim.Optimizer</code>) &#x2014;
The optimizer used for the training steps.`,name:"optimizer"},{anchor:"transformers.TrainerCallback.lr_scheduler",description:`<strong>lr_scheduler</strong> (<code>torch.optim.lr_scheduler.LambdaLR</code>) &#x2014;
The scheduler used for setting the learning rate.`,name:"lr_scheduler"},{anchor:"transformers.TrainerCallback.train_dataloader",description:`<strong>train_dataloader</strong> (<code>torch.utils.data.DataLoader</code>, <em>optional</em>) &#x2014;
The current dataloader used for training.`,name:"train_dataloader"},{anchor:"transformers.TrainerCallback.eval_dataloader",description:`<strong>eval_dataloader</strong> (<code>torch.utils.data.DataLoader</code>, <em>optional</em>) &#x2014;
The current dataloader used for evaluation.`,name:"eval_dataloader"},{anchor:"transformers.TrainerCallback.metrics",description:`<strong>metrics</strong> (<code>Dict[str, float]</code>) &#x2014;
The metrics computed by the last evaluation phase.</p>
<p>Those are only accessible in the event <code>on_evaluate</code>.`,name:"metrics"},{anchor:"transformers.TrainerCallback.logs",description:`<strong>logs</strong>  (<code>Dict[str, float]</code>) &#x2014;
The values to log.</p>
<p>Those are only accessible in the event <code>on_log</code>.`,name:"logs"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L259"}}),se=new Vs({props:{anchor:"transformers.TrainerCallback.example",$$slots:{default:[dl]},$$scope:{ctx:I}}}),ot=new C({props:{name:"on_epoch_begin",anchor:"transformers.TrainerCallback.on_epoch_begin",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L328"}}),st=new C({props:{name:"on_epoch_end",anchor:"transformers.TrainerCallback.on_epoch_end",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L334"}}),lt=new C({props:{name:"on_evaluate",anchor:"transformers.TrainerCallback.on_evaluate",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L360"}}),it=new C({props:{name:"on_init_end",anchor:"transformers.TrainerCallback.on_init_end",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L310"}}),ct=new C({props:{name:"on_log",anchor:"transformers.TrainerCallback.on_log",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L378"}}),dt=new C({props:{name:"on_predict",anchor:"transformers.TrainerCallback.on_predict",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"metrics",val:""},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L366"}}),mt=new C({props:{name:"on_prediction_step",anchor:"transformers.TrainerCallback.on_prediction_step",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L384"}}),pt=new C({props:{name:"on_save",anchor:"transformers.TrainerCallback.on_save",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L372"}}),ft=new C({props:{name:"on_step_begin",anchor:"transformers.TrainerCallback.on_step_begin",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L340"}}),gt=new C({props:{name:"on_step_end",anchor:"transformers.TrainerCallback.on_step_end",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L353"}}),ht=new C({props:{name:"on_substep_end",anchor:"transformers.TrainerCallback.on_substep_end",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L347"}}),ut=new C({props:{name:"on_train_begin",anchor:"transformers.TrainerCallback.on_train_begin",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L316"}}),bt=new C({props:{name:"on_train_end",anchor:"transformers.TrainerCallback.on_train_end",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L322"}}),Tt=new Oa({props:{code:"Y2xhc3MlMjBNeUNhbGxiYWNrKFRyYWluZXJDYWxsYmFjayklM0ElMEElMjAlMjAlMjAlMjAlMjJBJTIwY2FsbGJhY2slMjB0aGF0JTIwcHJpbnRzJTIwYSUyMG1lc3NhZ2UlMjBhdCUyMHRoZSUyMGJlZ2lubmluZyUyMG9mJTIwdHJhaW5pbmclMjIlMEElMEElMjAlMjAlMjAlMjBkZWYlMjBvbl90cmFpbl9iZWdpbihzZWxmJTJDJTIwYXJncyUyQyUyMHN0YXRlJTJDJTIwY29udHJvbCUyQyUyMCoqa3dhcmdzKSUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHByaW50KCUyMlN0YXJ0aW5nJTIwdHJhaW5pbmclMjIpJTBBJTBBJTBBdHJhaW5lciUyMCUzRCUyMFRyYWluZXIoJTBBJTIwJTIwJTIwJTIwbW9kZWwlMkMlMEElMjAlMjAlMjAlMjBhcmdzJTJDJTBBJTIwJTIwJTIwJTIwdHJhaW5fZGF0YXNldCUzRHRyYWluX2RhdGFzZXQlMkMlMEElMjAlMjAlMjAlMjBldmFsX2RhdGFzZXQlM0RldmFsX2RhdGFzZXQlMkMlMEElMjAlMjAlMjAlMjBjYWxsYmFja3MlM0QlNUJNeUNhbGxiYWNrJTVEJTJDJTIwJTIwJTIzJTIwV2UlMjBjYW4lMjBlaXRoZXIlMjBwYXNzJTIwdGhlJTIwY2FsbGJhY2slMjBjbGFzcyUyMHRoaXMlMjB3YXklMjBvciUyMGFuJTIwaW5zdGFuY2UlMjBvZiUyMGl0JTIwKE15Q2FsbGJhY2soKSklMEEp",highlighted:`<span class="hljs-keyword">class</span> <span class="hljs-title class_">MyCallback</span>(<span class="hljs-title class_ inherited__">TrainerCallback</span>):
    <span class="hljs-string">&quot;A callback that prints a message at the beginning of training&quot;</span>

    <span class="hljs-keyword">def</span> <span class="hljs-title function_">on_train_begin</span>(<span class="hljs-params">self, args, state, control, **kwargs</span>):
        <span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;Starting training&quot;</span>)


trainer = Trainer(
    model,
    args,
    train_dataset=train_dataset,
    eval_dataset=eval_dataset,
    callbacks=[MyCallback],  <span class="hljs-comment"># We can either pass the callback class this way or an instance of it (MyCallback())</span>
)`,wrap:!1}}),Ct=new Oa({props:{code:"dHJhaW5lciUyMCUzRCUyMFRyYWluZXIoLi4uKSUwQXRyYWluZXIuYWRkX2NhbGxiYWNrKE15Q2FsbGJhY2spJTBBJTIzJTIwQWx0ZXJuYXRpdmVseSUyQyUyMHdlJTIwY2FuJTIwcGFzcyUyMGFuJTIwaW5zdGFuY2UlMjBvZiUyMHRoZSUyMGNhbGxiYWNrJTIwY2xhc3MlMEF0cmFpbmVyLmFkZF9jYWxsYmFjayhNeUNhbGxiYWNrKCkp",highlighted:`trainer = Trainer(...)
trainer.add_callback(MyCallback)
<span class="hljs-comment"># Alternatively, we can pass an instance of the callback class</span>
trainer.add_callback(MyCallback())`,wrap:!1}}),kt=new Vr({props:{title:"TrainerState",local:"transformers.TrainerState",headingTag:"h2"}}),wt=new C({props:{name:"class transformers.TrainerState",anchor:"transformers.TrainerState",parameters:[{name:"epoch",val:": Optional = None"},{name:"global_step",val:": int = 0"},{name:"max_steps",val:": int = 0"},{name:"logging_steps",val:": int = 500"},{name:"eval_steps",val:": int = 500"},{name:"save_steps",val:": int = 500"},{name:"train_batch_size",val:": int = None"},{name:"num_train_epochs",val:": int = 0"},{name:"num_input_tokens_seen",val:": int = 0"},{name:"total_flos",val:": float = 0"},{name:"log_history",val:": List = None"},{name:"best_metric",val:": Optional = None"},{name:"best_model_checkpoint",val:": Optional = None"},{name:"is_local_process_zero",val:": bool = True"},{name:"is_world_process_zero",val:": bool = True"},{name:"is_hyper_param_search",val:": bool = False"},{name:"trial_name",val:": str = None"},{name:"trial_params",val:": Dict = None"},{name:"stateful_callbacks",val:": List = None"}],parametersDescription:[{anchor:"transformers.TrainerState.epoch",description:`<strong>epoch</strong> (<code>float</code>, <em>optional</em>) &#x2014;
Only set during training, will represent the epoch the training is at (the decimal part being the
percentage of the current epoch completed).`,name:"epoch"},{anchor:"transformers.TrainerState.global_step",description:`<strong>global_step</strong> (<code>int</code>, <em>optional</em>, defaults to 0) &#x2014;
During training, represents the number of update steps completed.`,name:"global_step"},{anchor:"transformers.TrainerState.max_steps",description:`<strong>max_steps</strong> (<code>int</code>, <em>optional</em>, defaults to 0) &#x2014;
The number of update steps to do during the current training.`,name:"max_steps"},{anchor:"transformers.TrainerState.logging_steps",description:`<strong>logging_steps</strong> (<code>int</code>, <em>optional</em>, defaults to 500) &#x2014;
Log every X updates steps`,name:"logging_steps"},{anchor:"transformers.TrainerState.eval_steps",description:`<strong>eval_steps</strong> (<code>int</code>, <em>optional</em>) &#x2014;
Run an evaluation every X steps.`,name:"eval_steps"},{anchor:"transformers.TrainerState.save_steps",description:`<strong>save_steps</strong> (<code>int</code>, <em>optional</em>, defaults to 500) &#x2014;
Save checkpoint every X updates steps.`,name:"save_steps"},{anchor:"transformers.TrainerState.train_batch_size",description:`<strong>train_batch_size</strong> (<code>int</code>, <em>optional</em>) &#x2014;
The batch size for the training dataloader. Only needed when
<code>auto_find_batch_size</code> has been used.`,name:"train_batch_size"},{anchor:"transformers.TrainerState.num_input_tokens_seen",description:`<strong>num_input_tokens_seen</strong> (<code>int</code>, <em>optional</em>, defaults to 0) &#x2014;
The number of tokens seen during training (number of input tokens, not the number of prediction tokens).`,name:"num_input_tokens_seen"},{anchor:"transformers.TrainerState.total_flos",description:`<strong>total_flos</strong> (<code>float</code>, <em>optional</em>, defaults to 0) &#x2014;
The total number of floating operations done by the model since the beginning of training (stored as floats
to avoid overflow).`,name:"total_flos"},{anchor:"transformers.TrainerState.log_history",description:`<strong>log_history</strong> (<code>List[Dict[str, float]]</code>, <em>optional</em>) &#x2014;
The list of logs done since the beginning of training.`,name:"log_history"},{anchor:"transformers.TrainerState.best_metric",description:`<strong>best_metric</strong> (<code>float</code>, <em>optional</em>) &#x2014;
When tracking the best model, the value of the best metric encountered so far.`,name:"best_metric"},{anchor:"transformers.TrainerState.best_model_checkpoint",description:`<strong>best_model_checkpoint</strong> (<code>str</code>, <em>optional</em>) &#x2014;
When tracking the best model, the value of the name of the checkpoint for the best model encountered so
far.`,name:"best_model_checkpoint"},{anchor:"transformers.TrainerState.is_local_process_zero",description:`<strong>is_local_process_zero</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not this process is the local (e.g., on one machine if training in a distributed fashion on
several machines) main process.`,name:"is_local_process_zero"},{anchor:"transformers.TrainerState.is_world_process_zero",description:`<strong>is_world_process_zero</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>True</code>) &#x2014;
Whether or not this process is the global main process (when training in a distributed fashion on several
machines, this is only going to be <code>True</code> for one process).`,name:"is_world_process_zero"},{anchor:"transformers.TrainerState.is_hyper_param_search",description:`<strong>is_hyper_param_search</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether we are in the process of a hyper parameter search using Trainer.hyperparameter_search. This will
impact the way data will be logged in TensorBoard.`,name:"is_hyper_param_search"},{anchor:"transformers.TrainerState.stateful_callbacks",description:`<strong>stateful_callbacks</strong> (<code>List[StatefulTrainerCallback]</code>, <em>optional</em>) &#x2014;
Callbacks attached to the <code>Trainer</code> that should have their states be saved or restored.
Relevent callbacks should implement a <code>state</code> and <code>from_state</code> function.`,name:"stateful_callbacks"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L35"}}),Te=new Ys({props:{$$slots:{default:[ml]},$$scope:{ctx:I}}}),Mt=new C({props:{name:"load_from_json",anchor:"transformers.TrainerState.load_from_json",parameters:[{name:"json_path",val:": str"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L145"}}),yt=new C({props:{name:"save_to_json",anchor:"transformers.TrainerState.save_to_json",parameters:[{name:"json_path",val:": str"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L139"}}),xt=new Vr({props:{title:"TrainerControl",local:"transformers.TrainerControl",headingTag:"h2"}}),Lt=new C({props:{name:"class transformers.TrainerControl",anchor:"transformers.TrainerControl",parameters:[{name:"should_training_stop",val:": bool = False"},{name:"should_epoch_stop",val:": bool = False"},{name:"should_save",val:": bool = False"},{name:"should_evaluate",val:": bool = False"},{name:"should_log",val:": bool = False"}],parametersDescription:[{anchor:"transformers.TrainerControl.should_training_stop",description:`<strong>should_training_stop</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not the training should be interrupted.</p>
<p>If <code>True</code>, this variable will not be set back to <code>False</code>. The training will just stop.`,name:"should_training_stop"},{anchor:"transformers.TrainerControl.should_epoch_stop",description:`<strong>should_epoch_stop</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not the current epoch should be interrupted.</p>
<p>If <code>True</code>, this variable will be set back to <code>False</code> at the beginning of the next epoch.`,name:"should_epoch_stop"},{anchor:"transformers.TrainerControl.should_save",description:`<strong>should_save</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not the model should be saved at this step.</p>
<p>If <code>True</code>, this variable will be set back to <code>False</code> at the beginning of the next step.`,name:"should_save"},{anchor:"transformers.TrainerControl.should_evaluate",description:`<strong>should_evaluate</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not the model should be evaluated at this step.</p>
<p>If <code>True</code>, this variable will be set back to <code>False</code> at the beginning of the next step.`,name:"should_evaluate"},{anchor:"transformers.TrainerControl.should_log",description:`<strong>should_log</strong> (<code>bool</code>, <em>optional</em>, defaults to <code>False</code>) &#x2014;
Whether or not the logs should be reported at this step.</p>
<p>If <code>True</code>, this variable will be set back to <code>False</code> at the beginning of the next step.`,name:"should_log"}],source:"https://github.com/huggingface/transformers/blob/v4.41.2/src/transformers/trainer_callback.py#L197"}}),It=new al({props:{source:"https://github.com/huggingface/transformers/blob/main/docs/source/zh/main_classes/callback.md"}}),{c(){d=o("meta"),x=r(),b=o("p"),k=r(),f(M.$$.fragment),v=r(),y=o("p"),y.textContent=L,E=r(),Ie=o("p"),Ie.innerHTML=Lo,Gr=r(),Ee=o("p"),Ee.innerHTML=Io,qr=r(),He=o("ul"),He.innerHTML=Eo,Or=r(),je=o("p"),je.innerHTML=Ho,Yr=r(),Je=o("p"),Je.innerHTML=jo,Xr=r(),f(De.$$.fragment),Zr=r(),Ue=o("p"),Ue.innerHTML=Jo,Qr=r(),F=o("div"),f(ze.$$.fragment),Xa=r(),jt=o("p"),jt.innerHTML=Do,Za=r(),j=o("div"),f(Ne.$$.fragment),Qa=r(),Jt=o("p"),Jt.textContent=Uo,Ka=r(),Dt=o("p"),Dt.textContent=zo,en=r(),Ut=o("ul"),Ut.innerHTML=No,tn=r(),zt=o("p"),zt.innerHTML=Ao,Kr=r(),X=o("div"),f(Ae.$$.fragment),rn=r(),Nt=o("p"),Nt.innerHTML=So,ea=r(),Z=o("div"),f(Se.$$.fragment),an=r(),At=o("p"),At.innerHTML=Fo,ta=r(),Q=o("div"),f(Fe.$$.fragment),nn=r(),St=o("p"),St.innerHTML=Po,ra=r(),P=o("div"),f(Pe.$$.fragment),on=r(),Ft=o("p"),Ft.innerHTML=Wo,sn=r(),Pt=o("p"),Pt.innerHTML=Bo,aa=r(),K=o("div"),f(We.$$.fragment),ln=r(),Wt=o("p"),Wt.innerHTML=Ro,na=r(),W=o("div"),f(Be.$$.fragment),cn=r(),Bt=o("p"),Bt.innerHTML=Vo,dn=r(),J=o("div"),f(Re.$$.fragment),mn=r(),Rt=o("p"),Rt.innerHTML=Go,pn=r(),Vt=o("p"),Vt.innerHTML=qo,fn=r(),Gt=o("p"),Gt.textContent=Oo,gn=r(),B=o("ul"),Ve=o("li"),qt=o("p"),qt.innerHTML=Yo,hn=r(),f(ne.$$.fragment),un=r(),Ot=o("li"),Ot.innerHTML=Xo,bn=r(),Yt=o("li"),Yt.innerHTML=Zo,vn=r(),Xt=o("li"),Xt.innerHTML=Qo,oa=r(),R=o("div"),f(Ge.$$.fragment),_n=r(),Zt=o("p"),Zt.innerHTML=Ko,Tn=r(),N=o("div"),f(qe.$$.fragment),$n=r(),Qt=o("p"),Qt.textContent=es,Cn=r(),Kt=o("p"),Kt.textContent=ts,kn=r(),er=o("ul"),er.innerHTML=rs,sa=r(),ee=o("div"),f(Oe.$$.fragment),wn=r(),tr=o("p"),tr.innerHTML=as,la=r(),te=o("div"),f(Ye.$$.fragment),Mn=r(),rr=o("p"),rr.innerHTML=ns,ia=r(),V=o("div"),f(Xe.$$.fragment),yn=r(),ar=o("p"),ar.innerHTML=os,xn=r(),nr=o("p"),nr.innerHTML=ss,ca=r(),D=o("div"),f(Ze.$$.fragment),Ln=r(),or=o("p"),or.innerHTML=ls,In=r(),sr=o("p"),sr.textContent=is,En=r(),lr=o("ul"),lr.innerHTML=cs,da=r(),G=o("div"),f(Qe.$$.fragment),Hn=r(),ir=o("p"),ir.innerHTML=ds,jn=r(),A=o("div"),f(Ke.$$.fragment),Jn=r(),cr=o("p"),cr.textContent=ms,Dn=r(),dr=o("p"),dr.textContent=ps,Un=r(),mr=o("ul"),mr.innerHTML=fs,ma=r(),q=o("div"),f(et.$$.fragment),zn=r(),pr=o("p"),pr.innerHTML=gs,Nn=r(),f(oe.$$.fragment),pa=r(),U=o("div"),f(tt.$$.fragment),An=r(),fr=o("p"),fr.innerHTML=hs,Sn=r(),gr=o("p"),gr.innerHTML=us,Fn=r(),S=o("div"),f(rt.$$.fragment),Pn=r(),hr=o("p"),hr.innerHTML=bs,Wn=r(),ur=o("p"),ur.textContent=vs,Bn=r(),br=o("ul"),br.innerHTML=_s,fa=r(),f(at.$$.fragment),ga=r(),T=o("div"),f(nt.$$.fragment),Rn=r(),vr=o("p"),vr.textContent=Ts,Vn=r(),_r=o("p"),_r.innerHTML=$s,Gn=r(),Tr=o("p"),Tr.innerHTML=Cs,qn=r(),f(se.$$.fragment),On=r(),le=o("div"),f(ot.$$.fragment),Yn=r(),$r=o("p"),$r.textContent=ks,Xn=r(),ie=o("div"),f(st.$$.fragment),Zn=r(),Cr=o("p"),Cr.textContent=ws,Qn=r(),ce=o("div"),f(lt.$$.fragment),Kn=r(),kr=o("p"),kr.textContent=Ms,eo=r(),de=o("div"),f(it.$$.fragment),to=r(),wr=o("p"),wr.innerHTML=ys,ro=r(),me=o("div"),f(ct.$$.fragment),ao=r(),Mr=o("p"),Mr.textContent=xs,no=r(),pe=o("div"),f(dt.$$.fragment),oo=r(),yr=o("p"),yr.textContent=Ls,so=r(),fe=o("div"),f(mt.$$.fragment),lo=r(),xr=o("p"),xr.textContent=Is,io=r(),ge=o("div"),f(pt.$$.fragment),co=r(),Lr=o("p"),Lr.textContent=Es,mo=r(),he=o("div"),f(ft.$$.fragment),po=r(),Ir=o("p"),Ir.textContent=Hs,fo=r(),ue=o("div"),f(gt.$$.fragment),go=r(),Er=o("p"),Er.textContent=js,ho=r(),be=o("div"),f(ht.$$.fragment),uo=r(),Hr=o("p"),Hr.textContent=Js,bo=r(),ve=o("div"),f(ut.$$.fragment),vo=r(),jr=o("p"),jr.textContent=Ds,_o=r(),_e=o("div"),f(bt.$$.fragment),To=r(),Jr=o("p"),Jr.textContent=Us,ha=r(),vt=o("p"),vt.textContent=zs,ua=r(),_t=o("p"),_t.innerHTML=Ns,ba=r(),f(Tt.$$.fragment),va=r(),$t=o("p"),$t.innerHTML=As,_a=r(),f(Ct.$$.fragment),Ta=r(),f(kt.$$.fragment),$a=r(),H=o("div"),f(wt.$$.fragment),$o=r(),Dr=o("p"),Dr.innerHTML=Ss,Co=r(),f(Te.$$.fragment),ko=r(),$e=o("div"),f(Mt.$$.fragment),wo=r(),Ur=o("p"),Ur.innerHTML=Fs,Mo=r(),Ce=o("div"),f(yt.$$.fragment),yo=r(),zr=o("p"),zr.innerHTML=Ps,Ca=r(),f(xt.$$.fragment),ka=r(),re=o("div"),f(Lt.$$.fragment),xo=r(),Nr=o("p"),Nr.innerHTML=Ws,wa=r(),f(It.$$.fragment),Ma=r(),Rr=o("p"),this.h()},l(e){const l=rl("svelte-u9bgzb",document.head);d=s(l,"META",{name:!0,content:!0}),l.forEach(n),x=a(e),b=s(e,"P",{}),_(b).forEach(n),k=a(e),g(M.$$.fragment,e),v=a(e),y=s(e,"P",{"data-svelte-h":!0}),c(y)!=="svelte-ixc7mw"&&(y.textContent=L),E=a(e),Ie=s(e,"P",{"data-svelte-h":!0}),c(Ie)!=="svelte-1o90q5b"&&(Ie.innerHTML=Lo),Gr=a(e),Ee=s(e,"P",{"data-svelte-h":!0}),c(Ee)!=="svelte-w2h063"&&(Ee.innerHTML=Io),qr=a(e),He=s(e,"UL",{"data-svelte-h":!0}),c(He)!=="svelte-1kt8ggm"&&(He.innerHTML=Eo),Or=a(e),je=s(e,"P",{"data-svelte-h":!0}),c(je)!=="svelte-cfm0j7"&&(je.innerHTML=Ho),Yr=a(e),Je=s(e,"P",{"data-svelte-h":!0}),c(Je)!=="svelte-1s2dcut"&&(Je.innerHTML=jo),Xr=a(e),g(De.$$.fragment,e),Zr=a(e),Ue=s(e,"P",{"data-svelte-h":!0}),c(Ue)!=="svelte-3vvsdg"&&(Ue.innerHTML=Jo),Qr=a(e),F=s(e,"DIV",{class:!0});var ae=_(F);g(ze.$$.fragment,ae),Xa=a(ae),jt=s(ae,"P",{"data-svelte-h":!0}),c(jt)!=="svelte-16whcoh"&&(jt.innerHTML=Do),Za=a(ae),j=s(ae,"DIV",{class:!0});var z=_(j);g(Ne.$$.fragment,z),Qa=a(z),Jt=s(z,"P",{"data-svelte-h":!0}),c(Jt)!=="svelte-1bfkm9x"&&(Jt.textContent=Uo),Ka=a(z),Dt=s(z,"P",{"data-svelte-h":!0}),c(Dt)!=="svelte-1fkshtn"&&(Dt.textContent=zo),en=a(z),Ut=s(z,"UL",{"data-svelte-h":!0}),c(Ut)!=="svelte-12drq5x"&&(Ut.innerHTML=No),tn=a(z),zt=s(z,"P",{"data-svelte-h":!0}),c(zt)!=="svelte-1faq0a7"&&(zt.innerHTML=Ao),z.forEach(n),ae.forEach(n),Kr=a(e),X=s(e,"DIV",{class:!0});var Et=_(X);g(Ae.$$.fragment,Et),rn=a(Et),Nt=s(Et,"P",{"data-svelte-h":!0}),c(Nt)!=="svelte-10rfq3g"&&(Nt.innerHTML=So),Et.forEach(n),ea=a(e),Z=s(e,"DIV",{class:!0});var Ht=_(Z);g(Se.$$.fragment,Ht),an=a(Ht),At=s(Ht,"P",{"data-svelte-h":!0}),c(At)!=="svelte-fdsdjv"&&(At.innerHTML=Fo),Ht.forEach(n),ta=a(e),Q=s(e,"DIV",{class:!0});var xa=_(Q);g(Fe.$$.fragment,xa),nn=a(xa),St=s(xa,"P",{"data-svelte-h":!0}),c(St)!=="svelte-xubfa6"&&(St.innerHTML=Po),xa.forEach(n),ra=a(e),P=s(e,"DIV",{class:!0});var Ar=_(P);g(Pe.$$.fragment,Ar),on=a(Ar),Ft=s(Ar,"P",{"data-svelte-h":!0}),c(Ft)!=="svelte-14wl7s3"&&(Ft.innerHTML=Wo),sn=a(Ar),Pt=s(Ar,"P",{"data-svelte-h":!0}),c(Pt)!=="svelte-727iar"&&(Pt.innerHTML=Bo),Ar.forEach(n),aa=a(e),K=s(e,"DIV",{class:!0});var La=_(K);g(We.$$.fragment,La),ln=a(La),Wt=s(La,"P",{"data-svelte-h":!0}),c(Wt)!=="svelte-1u84eoy"&&(Wt.innerHTML=Ro),La.forEach(n),na=a(e),W=s(e,"DIV",{class:!0});var Sr=_(W);g(Be.$$.fragment,Sr),cn=a(Sr),Bt=s(Sr,"P",{"data-svelte-h":!0}),c(Bt)!=="svelte-q91opb"&&(Bt.innerHTML=Vo),dn=a(Sr),J=s(Sr,"DIV",{class:!0});var O=_(J);g(Re.$$.fragment,O),mn=a(O),Rt=s(O,"P",{"data-svelte-h":!0}),c(Rt)!=="svelte-op70zs"&&(Rt.innerHTML=Go),pn=a(O),Vt=s(O,"P",{"data-svelte-h":!0}),c(Vt)!=="svelte-m2rt7w"&&(Vt.innerHTML=qo),fn=a(O),Gt=s(O,"P",{"data-svelte-h":!0}),c(Gt)!=="svelte-1fkshtn"&&(Gt.textContent=Oo),gn=a(O),B=s(O,"UL",{});var ke=_(B);Ve=s(ke,"LI",{});var Ia=_(Ve);qt=s(Ia,"P",{"data-svelte-h":!0}),c(qt)!=="svelte-py3r3s"&&(qt.innerHTML=Yo),hn=a(Ia),g(ne.$$.fragment,Ia),Ia.forEach(n),un=a(ke),Ot=s(ke,"LI",{"data-svelte-h":!0}),c(Ot)!=="svelte-dx3m30"&&(Ot.innerHTML=Xo),bn=a(ke),Yt=s(ke,"LI",{"data-svelte-h":!0}),c(Yt)!=="svelte-n1uh6c"&&(Yt.innerHTML=Zo),vn=a(ke),Xt=s(ke,"LI",{"data-svelte-h":!0}),c(Xt)!=="svelte-ybo66z"&&(Xt.innerHTML=Qo),ke.forEach(n),O.forEach(n),Sr.forEach(n),oa=a(e),R=s(e,"DIV",{class:!0});var Fr=_(R);g(Ge.$$.fragment,Fr),_n=a(Fr),Zt=s(Fr,"P",{"data-svelte-h":!0}),c(Zt)!=="svelte-tp77a7"&&(Zt.innerHTML=Ko),Tn=a(Fr),N=s(Fr,"DIV",{class:!0});var we=_(N);g(qe.$$.fragment,we),$n=a(we),Qt=s(we,"P",{"data-svelte-h":!0}),c(Qt)!=="svelte-nmg16f"&&(Qt.textContent=es),Cn=a(we),Kt=s(we,"P",{"data-svelte-h":!0}),c(Kt)!=="svelte-1fkshtn"&&(Kt.textContent=ts),kn=a(we),er=s(we,"UL",{"data-svelte-h":!0}),c(er)!=="svelte-o83nc7"&&(er.innerHTML=rs),we.forEach(n),Fr.forEach(n),sa=a(e),ee=s(e,"DIV",{class:!0});var Ea=_(ee);g(Oe.$$.fragment,Ea),wn=a(Ea),tr=s(Ea,"P",{"data-svelte-h":!0}),c(tr)!=="svelte-1nmddx6"&&(tr.innerHTML=as),Ea.forEach(n),la=a(e),te=s(e,"DIV",{class:!0});var Ha=_(te);g(Ye.$$.fragment,Ha),Mn=a(Ha),rr=s(Ha,"P",{"data-svelte-h":!0}),c(rr)!=="svelte-exd0zq"&&(rr.innerHTML=ns),Ha.forEach(n),ia=a(e),V=s(e,"DIV",{class:!0});var Pr=_(V);g(Xe.$$.fragment,Pr),yn=a(Pr),ar=s(Pr,"P",{"data-svelte-h":!0}),c(ar)!=="svelte-4ag9j6"&&(ar.innerHTML=os),xn=a(Pr),nr=s(Pr,"P",{"data-svelte-h":!0}),c(nr)!=="svelte-1mhjcx0"&&(nr.innerHTML=ss),Pr.forEach(n),ca=a(e),D=s(e,"DIV",{class:!0});var Me=_(D);g(Ze.$$.fragment,Me),Ln=a(Me),or=s(Me,"P",{"data-svelte-h":!0}),c(or)!=="svelte-4i0kno"&&(or.innerHTML=ls),In=a(Me),sr=s(Me,"P",{"data-svelte-h":!0}),c(sr)!=="svelte-1fkshtn"&&(sr.textContent=is),En=a(Me),lr=s(Me,"UL",{"data-svelte-h":!0}),c(lr)!=="svelte-15svthu"&&(lr.innerHTML=cs),Me.forEach(n),da=a(e),G=s(e,"DIV",{class:!0});var Wr=_(G);g(Qe.$$.fragment,Wr),Hn=a(Wr),ir=s(Wr,"P",{"data-svelte-h":!0}),c(ir)!=="svelte-ajomdf"&&(ir.innerHTML=ds),jn=a(Wr),A=s(Wr,"DIV",{class:!0});var ye=_(A);g(Ke.$$.fragment,ye),Jn=a(ye),cr=s(ye,"P",{"data-svelte-h":!0}),c(cr)!=="svelte-1wbmj3"&&(cr.textContent=ms),Dn=a(ye),dr=s(ye,"P",{"data-svelte-h":!0}),c(dr)!=="svelte-1fkshtn"&&(dr.textContent=ps),Un=a(ye),mr=s(ye,"UL",{"data-svelte-h":!0}),c(mr)!=="svelte-dna85o"&&(mr.innerHTML=fs),ye.forEach(n),Wr.forEach(n),ma=a(e),q=s(e,"DIV",{class:!0});var Br=_(q);g(et.$$.fragment,Br),zn=a(Br),pr=s(Br,"P",{"data-svelte-h":!0}),c(pr)!=="svelte-14m5g7i"&&(pr.innerHTML=gs),Nn=a(Br),g(oe.$$.fragment,Br),Br.forEach(n),pa=a(e),U=s(e,"DIV",{class:!0});var xe=_(U);g(tt.$$.fragment,xe),An=a(xe),fr=s(xe,"P",{"data-svelte-h":!0}),c(fr)!=="svelte-1qb9e8l"&&(fr.innerHTML=hs),Sn=a(xe),gr=s(xe,"P",{"data-svelte-h":!0}),c(gr)!=="svelte-eu3kj7"&&(gr.innerHTML=us),Fn=a(xe),S=s(xe,"DIV",{class:!0});var Le=_(S);g(rt.$$.fragment,Le),Pn=a(Le),hr=s(Le,"P",{"data-svelte-h":!0}),c(hr)!=="svelte-jjkenj"&&(hr.innerHTML=bs),Wn=a(Le),ur=s(Le,"P",{"data-svelte-h":!0}),c(ur)!=="svelte-1fkshtn"&&(ur.textContent=vs),Bn=a(Le),br=s(Le,"UL",{"data-svelte-h":!0}),c(br)!=="svelte-crnavn"&&(br.innerHTML=_s),Le.forEach(n),xe.forEach(n),fa=a(e),g(at.$$.fragment,e),ga=a(e),T=s(e,"DIV",{class:!0});var w=_(T);g(nt.$$.fragment,w),Rn=a(w),vr=s(w,"P",{"data-svelte-h":!0}),c(vr)!=="svelte-14xg00o"&&(vr.textContent=Ts),Vn=a(w),_r=s(w,"P",{"data-svelte-h":!0}),c(_r)!=="svelte-1xprdvt"&&(_r.innerHTML=$s),Gn=a(w),Tr=s(w,"P",{"data-svelte-h":!0}),c(Tr)!=="svelte-52m7ky"&&(Tr.innerHTML=Cs),qn=a(w),g(se.$$.fragment,w),On=a(w),le=s(w,"DIV",{class:!0});var ja=_(le);g(ot.$$.fragment,ja),Yn=a(ja),$r=s(ja,"P",{"data-svelte-h":!0}),c($r)!=="svelte-106889p"&&($r.textContent=ks),ja.forEach(n),Xn=a(w),ie=s(w,"DIV",{class:!0});var Ja=_(ie);g(st.$$.fragment,Ja),Zn=a(Ja),Cr=s(Ja,"P",{"data-svelte-h":!0}),c(Cr)!=="svelte-oshcpj"&&(Cr.textContent=ws),Ja.forEach(n),Qn=a(w),ce=s(w,"DIV",{class:!0});var Da=_(ce);g(lt.$$.fragment,Da),Kn=a(Da),kr=s(Da,"P",{"data-svelte-h":!0}),c(kr)!=="svelte-1o0xh73"&&(kr.textContent=Ms),Da.forEach(n),eo=a(w),de=s(w,"DIV",{class:!0});var Ua=_(de);g(it.$$.fragment,Ua),to=a(Ua),wr=s(Ua,"P",{"data-svelte-h":!0}),c(wr)!=="svelte-hzqkde"&&(wr.innerHTML=ys),Ua.forEach(n),ro=a(w),me=s(w,"DIV",{class:!0});var za=_(me);g(ct.$$.fragment,za),ao=a(za),Mr=s(za,"P",{"data-svelte-h":!0}),c(Mr)!=="svelte-10eiwg0"&&(Mr.textContent=xs),za.forEach(n),no=a(w),pe=s(w,"DIV",{class:!0});var Na=_(pe);g(dt.$$.fragment,Na),oo=a(Na),yr=s(Na,"P",{"data-svelte-h":!0}),c(yr)!=="svelte-1df7x4n"&&(yr.textContent=Ls),Na.forEach(n),so=a(w),fe=s(w,"DIV",{class:!0});var Aa=_(fe);g(mt.$$.fragment,Aa),lo=a(Aa),xr=s(Aa,"P",{"data-svelte-h":!0}),c(xr)!=="svelte-18swygp"&&(xr.textContent=Is),Aa.forEach(n),io=a(w),ge=s(w,"DIV",{class:!0});var Sa=_(ge);g(pt.$$.fragment,Sa),co=a(Sa),Lr=s(Sa,"P",{"data-svelte-h":!0}),c(Lr)!=="svelte-19xp05v"&&(Lr.textContent=Es),Sa.forEach(n),mo=a(w),he=s(w,"DIV",{class:!0});var Fa=_(he);g(ft.$$.fragment,Fa),po=a(Fa),Ir=s(Fa,"P",{"data-svelte-h":!0}),c(Ir)!=="svelte-7af61p"&&(Ir.textContent=Hs),Fa.forEach(n),fo=a(w),ue=s(w,"DIV",{class:!0});var Pa=_(ue);g(gt.$$.fragment,Pa),go=a(Pa),Er=s(Pa,"P",{"data-svelte-h":!0}),c(Er)!=="svelte-8cdxjr"&&(Er.textContent=js),Pa.forEach(n),ho=a(w),be=s(w,"DIV",{class:!0});var Wa=_(be);g(ht.$$.fragment,Wa),uo=a(Wa),Hr=s(Wa,"P",{"data-svelte-h":!0}),c(Hr)!=="svelte-sluvs0"&&(Hr.textContent=Js),Wa.forEach(n),bo=a(w),ve=s(w,"DIV",{class:!0});var Ba=_(ve);g(ut.$$.fragment,Ba),vo=a(Ba),jr=s(Ba,"P",{"data-svelte-h":!0}),c(jr)!=="svelte-6bvy6d"&&(jr.textContent=Ds),Ba.forEach(n),_o=a(w),_e=s(w,"DIV",{class:!0});var Ra=_(_e);g(bt.$$.fragment,Ra),To=a(Ra),Jr=s(Ra,"P",{"data-svelte-h":!0}),c(Jr)!=="svelte-zzwxsv"&&(Jr.textContent=Us),Ra.forEach(n),w.forEach(n),ha=a(e),vt=s(e,"P",{"data-svelte-h":!0}),c(vt)!=="svelte-87dqmt"&&(vt.textContent=zs),ua=a(e),_t=s(e,"P",{"data-svelte-h":!0}),c(_t)!=="svelte-17720zy"&&(_t.innerHTML=Ns),ba=a(e),g(Tt.$$.fragment,e),va=a(e),$t=s(e,"P",{"data-svelte-h":!0}),c($t)!=="svelte-u9gp17"&&($t.innerHTML=As),_a=a(e),g(Ct.$$.fragment,e),Ta=a(e),g(kt.$$.fragment,e),$a=a(e),H=s(e,"DIV",{class:!0});var Y=_(H);g(wt.$$.fragment,Y),$o=a(Y),Dr=s(Y,"P",{"data-svelte-h":!0}),c(Dr)!=="svelte-1ppw4p1"&&(Dr.innerHTML=Ss),Co=a(Y),g(Te.$$.fragment,Y),ko=a(Y),$e=s(Y,"DIV",{class:!0});var Va=_($e);g(Mt.$$.fragment,Va),wo=a(Va),Ur=s(Va,"P",{"data-svelte-h":!0}),c(Ur)!=="svelte-hbs6ga"&&(Ur.innerHTML=Fs),Va.forEach(n),Mo=a(Y),Ce=s(Y,"DIV",{class:!0});var Ga=_(Ce);g(yt.$$.fragment,Ga),yo=a(Ga),zr=s(Ga,"P",{"data-svelte-h":!0}),c(zr)!=="svelte-dkslae"&&(zr.innerHTML=Ps),Ga.forEach(n),Y.forEach(n),Ca=a(e),g(xt.$$.fragment,e),ka=a(e),re=s(e,"DIV",{class:!0});var qa=_(re);g(Lt.$$.fragment,qa),xo=a(qa),Nr=s(qa,"P",{"data-svelte-h":!0}),c(Nr)!=="svelte-tywe0x"&&(Nr.innerHTML=Ws),qa.forEach(n),wa=a(e),g(It.$$.fragment,e),Ma=a(e),Rr=s(e,"P",{}),_(Rr).forEach(n),this.h()},h(){$(d,"name","hf:doc:metadata"),$(d,"content",fl),$(j,"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"),$(X,"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"),$(P,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(K,"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"),$(W,"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"),$(R,"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"),$(te,"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"),$(D,"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"),$(G,"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"),$(S,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(U,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(le,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(ie,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(ce,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(de,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(me,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(pe,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(fe,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(ge,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(he,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(ue,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(be,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(ve,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(_e,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(T,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$($e,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(Ce,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(H,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),$(re,"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,l){t(document.head,d),i(e,x,l),i(e,b,l),i(e,k,l),h(M,e,l),i(e,v,l),i(e,y,l),i(e,E,l),i(e,Ie,l),i(e,Gr,l),i(e,Ee,l),i(e,qr,l),i(e,He,l),i(e,Or,l),i(e,je,l),i(e,Yr,l),i(e,Je,l),i(e,Xr,l),h(De,e,l),i(e,Zr,l),i(e,Ue,l),i(e,Qr,l),i(e,F,l),h(ze,F,null),t(F,Xa),t(F,jt),t(F,Za),t(F,j),h(Ne,j,null),t(j,Qa),t(j,Jt),t(j,Ka),t(j,Dt),t(j,en),t(j,Ut),t(j,tn),t(j,zt),i(e,Kr,l),i(e,X,l),h(Ae,X,null),t(X,rn),t(X,Nt),i(e,ea,l),i(e,Z,l),h(Se,Z,null),t(Z,an),t(Z,At),i(e,ta,l),i(e,Q,l),h(Fe,Q,null),t(Q,nn),t(Q,St),i(e,ra,l),i(e,P,l),h(Pe,P,null),t(P,on),t(P,Ft),t(P,sn),t(P,Pt),i(e,aa,l),i(e,K,l),h(We,K,null),t(K,ln),t(K,Wt),i(e,na,l),i(e,W,l),h(Be,W,null),t(W,cn),t(W,Bt),t(W,dn),t(W,J),h(Re,J,null),t(J,mn),t(J,Rt),t(J,pn),t(J,Vt),t(J,fn),t(J,Gt),t(J,gn),t(J,B),t(B,Ve),t(Ve,qt),t(Ve,hn),h(ne,Ve,null),t(B,un),t(B,Ot),t(B,bn),t(B,Yt),t(B,vn),t(B,Xt),i(e,oa,l),i(e,R,l),h(Ge,R,null),t(R,_n),t(R,Zt),t(R,Tn),t(R,N),h(qe,N,null),t(N,$n),t(N,Qt),t(N,Cn),t(N,Kt),t(N,kn),t(N,er),i(e,sa,l),i(e,ee,l),h(Oe,ee,null),t(ee,wn),t(ee,tr),i(e,la,l),i(e,te,l),h(Ye,te,null),t(te,Mn),t(te,rr),i(e,ia,l),i(e,V,l),h(Xe,V,null),t(V,yn),t(V,ar),t(V,xn),t(V,nr),i(e,ca,l),i(e,D,l),h(Ze,D,null),t(D,Ln),t(D,or),t(D,In),t(D,sr),t(D,En),t(D,lr),i(e,da,l),i(e,G,l),h(Qe,G,null),t(G,Hn),t(G,ir),t(G,jn),t(G,A),h(Ke,A,null),t(A,Jn),t(A,cr),t(A,Dn),t(A,dr),t(A,Un),t(A,mr),i(e,ma,l),i(e,q,l),h(et,q,null),t(q,zn),t(q,pr),t(q,Nn),h(oe,q,null),i(e,pa,l),i(e,U,l),h(tt,U,null),t(U,An),t(U,fr),t(U,Sn),t(U,gr),t(U,Fn),t(U,S),h(rt,S,null),t(S,Pn),t(S,hr),t(S,Wn),t(S,ur),t(S,Bn),t(S,br),i(e,fa,l),h(at,e,l),i(e,ga,l),i(e,T,l),h(nt,T,null),t(T,Rn),t(T,vr),t(T,Vn),t(T,_r),t(T,Gn),t(T,Tr),t(T,qn),h(se,T,null),t(T,On),t(T,le),h(ot,le,null),t(le,Yn),t(le,$r),t(T,Xn),t(T,ie),h(st,ie,null),t(ie,Zn),t(ie,Cr),t(T,Qn),t(T,ce),h(lt,ce,null),t(ce,Kn),t(ce,kr),t(T,eo),t(T,de),h(it,de,null),t(de,to),t(de,wr),t(T,ro),t(T,me),h(ct,me,null),t(me,ao),t(me,Mr),t(T,no),t(T,pe),h(dt,pe,null),t(pe,oo),t(pe,yr),t(T,so),t(T,fe),h(mt,fe,null),t(fe,lo),t(fe,xr),t(T,io),t(T,ge),h(pt,ge,null),t(ge,co),t(ge,Lr),t(T,mo),t(T,he),h(ft,he,null),t(he,po),t(he,Ir),t(T,fo),t(T,ue),h(gt,ue,null),t(ue,go),t(ue,Er),t(T,ho),t(T,be),h(ht,be,null),t(be,uo),t(be,Hr),t(T,bo),t(T,ve),h(ut,ve,null),t(ve,vo),t(ve,jr),t(T,_o),t(T,_e),h(bt,_e,null),t(_e,To),t(_e,Jr),i(e,ha,l),i(e,vt,l),i(e,ua,l),i(e,_t,l),i(e,ba,l),h(Tt,e,l),i(e,va,l),i(e,$t,l),i(e,_a,l),h(Ct,e,l),i(e,Ta,l),h(kt,e,l),i(e,$a,l),i(e,H,l),h(wt,H,null),t(H,$o),t(H,Dr),t(H,Co),h(Te,H,null),t(H,ko),t(H,$e),h(Mt,$e,null),t($e,wo),t($e,Ur),t(H,Mo),t(H,Ce),h(yt,Ce,null),t(Ce,yo),t(Ce,zr),i(e,Ca,l),h(xt,e,l),i(e,ka,l),i(e,re,l),h(Lt,re,null),t(re,xo),t(re,Nr),i(e,wa,l),h(It,e,l),i(e,Ma,l),i(e,Rr,l),ya=!0},p(e,[l]){const ae={};l&2&&(ae.$$scope={dirty:l,ctx:e}),ne.$set(ae);const z={};l&2&&(z.$$scope={dirty:l,ctx:e}),oe.$set(z);const Et={};l&2&&(Et.$$scope={dirty:l,ctx:e}),se.$set(Et);const Ht={};l&2&&(Ht.$$scope={dirty:l,ctx:e}),Te.$set(Ht)},i(e){ya||(m(M.$$.fragment,e),m(De.$$.fragment,e),m(ze.$$.fragment,e),m(Ne.$$.fragment,e),m(Ae.$$.fragment,e),m(Se.$$.fragment,e),m(Fe.$$.fragment,e),m(Pe.$$.fragment,e),m(We.$$.fragment,e),m(Be.$$.fragment,e),m(Re.$$.fragment,e),m(ne.$$.fragment,e),m(Ge.$$.fragment,e),m(qe.$$.fragment,e),m(Oe.$$.fragment,e),m(Ye.$$.fragment,e),m(Xe.$$.fragment,e),m(Ze.$$.fragment,e),m(Qe.$$.fragment,e),m(Ke.$$.fragment,e),m(et.$$.fragment,e),m(oe.$$.fragment,e),m(tt.$$.fragment,e),m(rt.$$.fragment,e),m(at.$$.fragment,e),m(nt.$$.fragment,e),m(se.$$.fragment,e),m(ot.$$.fragment,e),m(st.$$.fragment,e),m(lt.$$.fragment,e),m(it.$$.fragment,e),m(ct.$$.fragment,e),m(dt.$$.fragment,e),m(mt.$$.fragment,e),m(pt.$$.fragment,e),m(ft.$$.fragment,e),m(gt.$$.fragment,e),m(ht.$$.fragment,e),m(ut.$$.fragment,e),m(bt.$$.fragment,e),m(Tt.$$.fragment,e),m(Ct.$$.fragment,e),m(kt.$$.fragment,e),m(wt.$$.fragment,e),m(Te.$$.fragment,e),m(Mt.$$.fragment,e),m(yt.$$.fragment,e),m(xt.$$.fragment,e),m(Lt.$$.fragment,e),m(It.$$.fragment,e),ya=!0)},o(e){p(M.$$.fragment,e),p(De.$$.fragment,e),p(ze.$$.fragment,e),p(Ne.$$.fragment,e),p(Ae.$$.fragment,e),p(Se.$$.fragment,e),p(Fe.$$.fragment,e),p(Pe.$$.fragment,e),p(We.$$.fragment,e),p(Be.$$.fragment,e),p(Re.$$.fragment,e),p(ne.$$.fragment,e),p(Ge.$$.fragment,e),p(qe.$$.fragment,e),p(Oe.$$.fragment,e),p(Ye.$$.fragment,e),p(Xe.$$.fragment,e),p(Ze.$$.fragment,e),p(Qe.$$.fragment,e),p(Ke.$$.fragment,e),p(et.$$.fragment,e),p(oe.$$.fragment,e),p(tt.$$.fragment,e),p(rt.$$.fragment,e),p(at.$$.fragment,e),p(nt.$$.fragment,e),p(se.$$.fragment,e),p(ot.$$.fragment,e),p(st.$$.fragment,e),p(lt.$$.fragment,e),p(it.$$.fragment,e),p(ct.$$.fragment,e),p(dt.$$.fragment,e),p(mt.$$.fragment,e),p(pt.$$.fragment,e),p(ft.$$.fragment,e),p(gt.$$.fragment,e),p(ht.$$.fragment,e),p(ut.$$.fragment,e),p(bt.$$.fragment,e),p(Tt.$$.fragment,e),p(Ct.$$.fragment,e),p(kt.$$.fragment,e),p(wt.$$.fragment,e),p(Te.$$.fragment,e),p(Mt.$$.fragment,e),p(yt.$$.fragment,e),p(xt.$$.fragment,e),p(Lt.$$.fragment,e),p(It.$$.fragment,e),ya=!1},d(e){e&&(n(x),n(b),n(k),n(v),n(y),n(E),n(Ie),n(Gr),n(Ee),n(qr),n(He),n(Or),n(je),n(Yr),n(Je),n(Xr),n(Zr),n(Ue),n(Qr),n(F),n(Kr),n(X),n(ea),n(Z),n(ta),n(Q),n(ra),n(P),n(aa),n(K),n(na),n(W),n(oa),n(R),n(sa),n(ee),n(la),n(te),n(ia),n(V),n(ca),n(D),n(da),n(G),n(ma),n(q),n(pa),n(U),n(fa),n(ga),n(T),n(ha),n(vt),n(ua),n(_t),n(ba),n(va),n($t),n(_a),n(Ta),n($a),n(H),n(Ca),n(ka),n(re),n(wa),n(Ma),n(Rr)),n(d),u(M,e),u(De,e),u(ze),u(Ne),u(Ae),u(Se),u(Fe),u(Pe),u(We),u(Be),u(Re),u(ne),u(Ge),u(qe),u(Oe),u(Ye),u(Xe),u(Ze),u(Qe),u(Ke),u(et),u(oe),u(tt),u(rt),u(at,e),u(nt),u(se),u(ot),u(st),u(lt),u(it),u(ct),u(dt),u(mt),u(pt),u(ft),u(gt),u(ht),u(ut),u(bt),u(Tt,e),u(Ct,e),u(kt,e),u(wt),u(Te),u(Mt),u(yt),u(xt,e),u(Lt),u(It,e)}}}const fl='{"title":"Callbacks","local":"callbacks","sections":[{"title":"可用的Callbacks","local":"transformers.integrations.CometCallback","sections":[],"depth":2},{"title":"TrainerCallback","local":"transformers.TrainerCallback","sections":[],"depth":2},{"title":"TrainerState","local":"transformers.TrainerState","sections":[],"depth":2},{"title":"TrainerControl","local":"transformers.TrainerControl","sections":[],"depth":2}],"depth":1}';function gl(I){return el(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Cl extends qs{constructor(d){super(),Os(this,d,gl,pl,Gs,{})}}export{Cl as component};
