import{s as rl,c as sl,u as ll,g as il,d as cl,o as dl,n as Qa}from"../chunks/scheduler.9991993c.js";import{S as al,i as nl,r as f,u as g,v as h,d as m,t as p,w as u,g as o,m as Qs,s as r,h as s,j as _,n as Ks,f as n,c as a,k as C,a as i,y as t,o as ml,A as pl,x as c}from"../chunks/index.7fc9a5e7.js";import{T as ol}from"../chunks/Tip.9de92fc6.js";import{D as $}from"../chunks/Docstring.0d7e3ebb.js";import{C as Za}from"../chunks/CodeBlock.e11cba92.js";import{E as el}from"../chunks/ExampleCodeBlock.46b9776a.js";import{H as tl,E as fl}from"../chunks/EditOnGithub.84ab7f0e.js";function gl(I){let d,x,b,w,y;const v=I[1].default,M=sl(v,I,I[2],null);return{c(){d=o("p"),x=Qs("Deprecated in "),b=Qs(I[0]),w=r(),M&&M.c(),this.h()},l(L){d=s(L,"P",{class:!0});var E=_(d);x=Ks(E,"Deprecated in "),b=Ks(E,I[0]),E.forEach(n),w=a(L),M&&M.l(L),this.h()},h(){C(d,"class","font-medium")},m(L,E){i(L,d,E),t(d,x),t(d,b),i(L,w,E),M&&M.m(L,E),y=!0},p(L,E){(!y||E&1)&&ml(b,L[0]),M&&M.p&&(!y||E&4)&&ll(M,v,L,L[2],y?cl(v,L[2],E,null):il(L[2]),null)},i(L){y||(m(M,L),y=!0)},o(L){p(M,L),y=!1},d(L){L&&(n(d),n(w)),M&&M.d(L)}}}function hl(I){let d,x;return d=new ol({props:{warning:!0,$$slots:{default:[gl]},$$scope:{ctx:I}}}),{c(){f(d.$$.fragment)},l(b){g(d.$$.fragment,b)},m(b,w){h(d,b,w),x=!0},p(b,[w]){const y={};w&5&&(y.$$scope={dirty:w,ctx:b}),d.$set(y)},i(b){x||(m(d.$$.fragment,b),x=!0)},o(b){p(d.$$.fragment,b),x=!1},d(b){u(d,b)}}}function ul(I,d,x){let{$$slots:b={},$$scope:w}=d,{version:y}=d;return I.$$set=v=>{"version"in v&&x(0,y=v.version),"$$scope"in v&&x(2,w=v.$$scope)},[y,b,w]}class bl extends al{constructor(d){super(),nl(this,d,ul,hl,rl,{version:0})}}function _l(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,w){i(b,d,w)},p:Qa,d(b){b&&n(d)}}}function vl(I){let d,x="Example:",b,w,y;return w=new Za({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(w.$$.fragment)},l(v){d=s(v,"P",{"data-svelte-h":!0}),c(d)!=="svelte-11lpom8"&&(d.textContent=x),b=a(v),g(w.$$.fragment,v)},m(v,M){i(v,d,M),i(v,b,M),h(w,v,M),y=!0},p:Qa,i(v){y||(m(w.$$.fragment,v),y=!0)},o(v){p(w.$$.fragment,v),y=!1},d(v){v&&(n(d),n(b)),u(w,v)}}}function Tl(I){let d,x="Example:",b,w,y;return w=new Za({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(w.$$.fragment)},l(v){d=s(v,"P",{"data-svelte-h":!0}),c(d)!=="svelte-11lpom8"&&(d.textContent=x),b=a(v),g(w.$$.fragment,v)},m(v,M){i(v,d,M),i(v,b,M),h(w,v,M),y=!0},p:Qa,i(v){y||(m(w.$$.fragment,v),y=!0)},o(v){p(w.$$.fragment,v),y=!1},d(v){v&&(n(d),n(b)),u(w,v)}}}function Cl(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,w){i(b,d,w)},p:Qa,d(b){b&&n(d)}}}function $l(I){let d,x,b,w,y,v,M,L="Callbacks可以用来自定义PyTorch [Trainer]中训练循环行为的对象（此功能尚未在TensorFlow中实现），该对象可以检查训练循环状态（用于进度报告、在TensorBoard或其他ML平台上记录日志等），并做出决策（例如提前停止）。",E,Ee,zo='Callbacks是“只读”的代码片段，除了它们返回的[TrainerControl]对象外，它们不能更改训练循环中的任何内容。对于需要更改训练循环的自定义，您应该继承[Trainer]并重载您需要的方法（有关示例，请参见<a href="trainer">trainer</a>）。',Or,He,Jo="默认情况下，<code>TrainingArguments.report_to</code> 设置为”all”，然后[Trainer]将使用以下callbacks。",Yr,je,Do='<li><a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.DefaultFlowCallback">DefaultFlowCallback</a>，它处理默认的日志记录、保存和评估行为</li> <li><a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.PrinterCallback">PrinterCallback</a> 或 <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.ProgressCallback">ProgressCallback</a>，用于显示进度和打印日志（如果通过<code>TrainingArguments</code>停用tqdm，则使用第一个函数；否则使用第二个）。</li> <li><a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.integrations.TensorBoardCallback">TensorBoardCallback</a>，如果TensorBoard可访问（通过PyTorch版本 &gt;= 1.4 或者 tensorboardX）。</li> <li><a href="/docs/transformers/pr_30021/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/pr_30021/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/pr_30021/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/pr_30021/zh/main_classes/callback#transformers.integrations.NeptuneCallback">NeptuneCallback</a>，如果安装了<a href="https://neptune.ai/" rel="nofollow">neptune</a>。</li> <li><a href="/docs/transformers/pr_30021/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/pr_30021/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/pr_30021/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/pr_30021/zh/main_classes/callback#transformers.integrations.DagsHubCallback">DagsHubCallback</a>，如果安装了<a href="https://dagshub.com/" rel="nofollow">dagshub</a>。</li> <li><a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.integrations.FlyteCallback">FlyteCallback</a>，如果安装了<a href="https://flyte.org/" rel="nofollow">flyte</a>。</li> <li><a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.integrations.DVCLiveCallback">DVCLiveCallback</a>，如果安装了<a href="https://dvc.org/doc/dvclive" rel="nofollow">dvclive</a>。</li>',Xr,ze,Uo="如果安装了一个软件包，但您不希望使用相关的集成，您可以将 <code>TrainingArguments.report_to</code> 更改为仅包含您想要使用的集成的列表（例如 <code>[&quot;azure_ml&quot;, &quot;wandb&quot;]</code>）。",Zr,Je,No='实现callbacks的主要类是<a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a>。它获取用于实例化<code>Trainer</code>的<code>TrainingArguments</code>，可以通过<a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerState">TrainerState</a>访问该Trainer的内部状态，并可以通过<a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerControl">TrainerControl</a>对训练循环执行一些操作。',Qr,De,Kr,Ue,Ao='这里是库里可用<a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a>的列表：',ea,F,Ne,Ka,Jt,Po='A <a href="/docs/transformers/pr_30021/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>.',en,j,Ae,tn,Dt,Fo="Setup the optional Comet.ml integration.",rn,Ut,So="Environment:",an,Nt,Wo=`<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>`,nn,At,Bo=`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>.`,ta,X,Pe,on,Pt,Ro='A <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that handles the default flow of the training loop for logs, evaluation and checkpoints.',ra,Z,Fe,sn,Ft,Vo='A bare <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that just prints the logs.',aa,Q,Se,ln,St,Go='A <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that displays the progress of training or evaluation.',na,S,We,cn,Wt,qo='A <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that handles early stopping.',dn,Bt,Oo=`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/pr_30021/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.`,oa,K,Be,mn,Rt,Yo='A <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://www.tensorflow.org/tensorboard" rel="nofollow">TensorBoard</a>.',sa,W,Re,pn,Vt,Xo='A <a href="/docs/transformers/pr_30021/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>.',fn,z,Ve,gn,Gt,Zo="Setup the optional Weights &amp; Biases (<em>wandb</em>) integration.",hn,qt,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:`,un,Ot,Ko="Environment:",bn,B,Ge,Yt,es=`<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.`,_n,ne,vn,Xt,ts=`<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>`,Tn,Zt,rs=`<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>`,Cn,Qt,as=`<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>`,la,R,qe,$n,Kt,ns=`A <a href="/docs/transformers/pr_30021/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>.`,kn,N,Oe,wn,er,os="Setup the optional MLflow integration.",yn,tr,ss="Environment:",Mn,rr,ls=`<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>`,ia,ee,Ye,xn,ar,is='A <a href="/docs/transformers/pr_30021/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>.',ca,te,Xe,Ln,nr,cs='A <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that tracks the CO2 emission of training.',da,V,Ze,In,or,ds='TrainerCallback that sends the logs to <a href="https://app.neptune.ai" rel="nofollow">Neptune</a>.',En,sr,ms=`For instructions and examples, see the <a href="https://docs.neptune.ai/integrations/transformers" rel="nofollow">Transformers integration
guide</a> in the Neptune documentation.`,ma,J,Qe,Hn,lr,ps='A <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that sends the logs to <a href="https://clear.ml/" rel="nofollow">ClearML</a>.',jn,ir,fs="Environment:",zn,cr,gs=`<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>`,pa,G,Ke,Jn,dr,hs='A <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> that logs to <a href="https://dagshub.com/" rel="nofollow">DagsHub</a>. Extends <code>MLflowCallback</code>',Dn,A,et,Un,mr,us="Setup the DagsHub’s Logging integration.",Nn,pr,bs="Environment:",An,fr,_s=`<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>`,fa,q,tt,Pn,gr,vs=`A <a href="/docs/transformers/pr_30021/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.`,Fn,oe,ga,D,rt,Sn,hr,Ts='A <a href="/docs/transformers/pr_30021/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>.',Wn,ur,Cs=`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>.`,Bn,P,at,Rn,br,$s=`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>.`,Vn,_r,ks="Environment:",Gn,vr,ws=`<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>`,ha,nt,ys="## TrainerCallback[[transformers.TrainerCallback]]",ua,T,ot,qn,Tr,Ms=`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:`,On,Cr,xs=`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.`,Yn,$r,Ls=`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/pr_30021/zh/main_classes/callback#transformers.PrinterCallback">PrinterCallback</a>.`,Xn,se,Zn,le,st,Qn,kr,Is="Event called at the beginning of an epoch.",Kn,ie,lt,eo,wr,Es="Event called at the end of an epoch.",to,ce,it,ro,yr,Hs="Event called after an evaluation phase.",ao,de,ct,no,Mr,js="Event called at the end of the initialization of the <code>Trainer</code>.",oo,me,dt,so,xr,zs="Event called after logging the last logs.",lo,pe,mt,io,Lr,Js="Event called after the optimizer step but before gradients are zeroed out. Useful for monitoring gradients.",co,fe,pt,mo,Ir,Ds="Event called after a successful prediction.",po,ge,ft,fo,Er,Us="Event called after a prediction step.",go,he,gt,ho,Hr,Ns="Event called after a checkpoint save.",uo,ue,ht,bo,jr,As=`Event called at the beginning of a training step. If using gradient accumulation, one training step might take
several inputs.`,_o,be,ut,vo,zr,Ps=`Event called at the end of a training step. If using gradient accumulation, one training step might take
several inputs.`,To,_e,bt,Co,Jr,Fs="Event called at the end of an substep during gradient accumulation.",$o,ve,_t,ko,Dr,Ss="Event called at the beginning of training.",wo,Te,vt,yo,Ur,Ws="Event called at the end of training.",ba,Tt,Bs="以下是如何使用PyTorch注册自定义callback的示例：",_a,Ct,Rs="<code>Trainer</code>:",va,$t,Ta,kt,Vs="注册callback的另一种方式是调用 <code>trainer.add_callback()</code>，如下所示：",Ca,wt,$a,yt,Gs="## TrainerState[[transformers.TrainerState]]",ka,H,Mt,Mo,Nr,qs=`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/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a>.`,xo,Ce,Lo,$e,xt,Io,Ar,Os="Create an instance from the content of <code>json_path</code>.",Eo,ke,Lt,Ho,Pr,Ys="Save the content of this instance in JSON format inside <code>json_path</code>.",wa,It,Xs="## TrainerControl[[transformers.TrainerControl]]",ya,re,Et,jo,Fr,Zs=`A class that handles the <code>Trainer</code> control flow. This class is used by the <a href="/docs/transformers/pr_30021/zh/main_classes/callback#transformers.TrainerCallback">TrainerCallback</a> to activate some
switches in the training loop.`,Ma,Ht,xa,qr,La;return y=new tl({props:{title:"Callbacks",local:"callbacks",headingTag:"h1"}}),De=new tl({props:{title:"可用的Callbacks",local:"transformers.integrations.CometCallback",headingTag:"h2"}}),Ne=new $({props:{name:"class transformers.integrations.CometCallback",anchor:"transformers.integrations.CometCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/integrations/integration_utils.py#L937"}}),Ae=new $({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/vr_30021/src/transformers/integrations/integration_utils.py#L948"}}),Pe=new $({props:{name:"class transformers.DefaultFlowCallback",anchor:"transformers.DefaultFlowCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/trainer_callback.py#L526"}}),Fe=new $({props:{name:"class transformers.PrinterCallback",anchor:"transformers.PrinterCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/trainer_callback.py#L634"}}),Se=new $({props:{name:"class transformers.ProgressCallback",anchor:"transformers.ProgressCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/trainer_callback.py#L579"}}),We=new $({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/vr_30021/src/transformers/trainer_callback.py#L645"}}),Be=new $({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/vr_30021/src/transformers/integrations/integration_utils.py#L591"}}),Re=new $({props:{name:"class transformers.integrations.WandbCallback",anchor:"transformers.integrations.WandbCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/integrations/integration_utils.py#L693"}}),Ve=new $({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/vr_30021/src/transformers/integrations/integration_utils.py#L718"}}),ne=new bl({props:{version:"5.0",$$slots:{default:[_l]},$$scope:{ctx:I}}}),qe=new $({props:{name:"class transformers.integrations.MLflowCallback",anchor:"transformers.integrations.MLflowCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/integrations/integration_utils.py#L1037"}}),Oe=new $({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/vr_30021/src/transformers/integrations/integration_utils.py#L1056"}}),Ye=new $({props:{name:"class transformers.integrations.AzureMLCallback",anchor:"transformers.integrations.AzureMLCallback",parameters:[{name:"azureml_run",val:" = None"}],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/integrations/integration_utils.py#L1014"}}),Xe=new $({props:{name:"class transformers.integrations.CodeCarbonCallback",anchor:"transformers.integrations.CodeCarbonCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/integrations/integration_utils.py#L1538"}}),Ze=new $({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/vr_30021/src/transformers/integrations/integration_utils.py#L1265"}}),Qe=new $({props:{name:"class transformers.integrations.ClearMLCallback",anchor:"transformers.integrations.ClearMLCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/integrations/integration_utils.py#L1572"}}),Ke=new $({props:{name:"class transformers.integrations.DagsHubCallback",anchor:"transformers.integrations.DagsHubCallback",parameters:[],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/integrations/integration_utils.py#L1205"}}),et=new $({props:{name:"setup",anchor:"transformers.integrations.DagsHubCallback.setup",parameters:[{name:"*args",val:""},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/integrations/integration_utils.py#L1219"}}),tt=new $({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/vr_30021/src/transformers/integrations/integration_utils.py#L1825"}}),oe=new el({props:{anchor:"transformers.integrations.FlyteCallback.example",$$slots:{default:[vl]},$$scope:{ctx:I}}}),rt=new $({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/vr_30021/src/transformers/integrations/integration_utils.py#L1888"}}),at=new $({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/vr_30021/src/transformers/integrations/integration_utils.py#L1929"}}),ot=new $({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/pr_30021/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/pr_30021/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/pr_30021/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/pr_30021/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/vr_30021/src/transformers/trainer_callback.py#L260"}}),se=new el({props:{anchor:"transformers.TrainerCallback.example",$$slots:{default:[Tl]},$$scope:{ctx:I}}}),st=new $({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/vr_30021/src/transformers/trainer_callback.py#L329"}}),lt=new $({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/vr_30021/src/transformers/trainer_callback.py#L335"}}),it=new $({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/vr_30021/src/transformers/trainer_callback.py#L367"}}),ct=new $({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/vr_30021/src/transformers/trainer_callback.py#L311"}}),dt=new $({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/vr_30021/src/transformers/trainer_callback.py#L385"}}),mt=new $({props:{name:"on_optimizer_step",anchor:"transformers.TrainerCallback.on_optimizer_step",parameters:[{name:"args",val:": TrainingArguments"},{name:"state",val:": TrainerState"},{name:"control",val:": TrainerControl"},{name:"**kwargs",val:""}],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/trainer_callback.py#L348"}}),pt=new $({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/vr_30021/src/transformers/trainer_callback.py#L373"}}),ft=new $({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/vr_30021/src/transformers/trainer_callback.py#L391"}}),gt=new $({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/vr_30021/src/transformers/trainer_callback.py#L379"}}),ht=new $({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/vr_30021/src/transformers/trainer_callback.py#L341"}}),ut=new $({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/vr_30021/src/transformers/trainer_callback.py#L360"}}),bt=new $({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/vr_30021/src/transformers/trainer_callback.py#L354"}}),_t=new $({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/vr_30021/src/transformers/trainer_callback.py#L317"}}),vt=new $({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/vr_30021/src/transformers/trainer_callback.py#L323"}}),$t=new Za({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}}),wt=new Za({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}}),Mt=new $({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/vr_30021/src/transformers/trainer_callback.py#L36"}}),Ce=new ol({props:{$$slots:{default:[Cl]},$$scope:{ctx:I}}}),xt=new $({props:{name:"load_from_json",anchor:"transformers.TrainerState.load_from_json",parameters:[{name:"json_path",val:": str"}],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/trainer_callback.py#L146"}}),Lt=new $({props:{name:"save_to_json",anchor:"transformers.TrainerState.save_to_json",parameters:[{name:"json_path",val:": str"}],source:"https://github.com/huggingface/transformers/blob/vr_30021/src/transformers/trainer_callback.py#L140"}}),Et=new $({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/vr_30021/src/transformers/trainer_callback.py#L198"}}),Ht=new fl({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"),w=r(),f(y.$$.fragment),v=r(),M=o("p"),M.textContent=L,E=r(),Ee=o("p"),Ee.innerHTML=zo,Or=r(),He=o("p"),He.innerHTML=Jo,Yr=r(),je=o("ul"),je.innerHTML=Do,Xr=r(),ze=o("p"),ze.innerHTML=Uo,Zr=r(),Je=o("p"),Je.innerHTML=No,Qr=r(),f(De.$$.fragment),Kr=r(),Ue=o("p"),Ue.innerHTML=Ao,ea=r(),F=o("div"),f(Ne.$$.fragment),Ka=r(),Jt=o("p"),Jt.innerHTML=Po,en=r(),j=o("div"),f(Ae.$$.fragment),tn=r(),Dt=o("p"),Dt.textContent=Fo,rn=r(),Ut=o("p"),Ut.textContent=So,an=r(),Nt=o("ul"),Nt.innerHTML=Wo,nn=r(),At=o("p"),At.innerHTML=Bo,ta=r(),X=o("div"),f(Pe.$$.fragment),on=r(),Pt=o("p"),Pt.innerHTML=Ro,ra=r(),Z=o("div"),f(Fe.$$.fragment),sn=r(),Ft=o("p"),Ft.innerHTML=Vo,aa=r(),Q=o("div"),f(Se.$$.fragment),ln=r(),St=o("p"),St.innerHTML=Go,na=r(),S=o("div"),f(We.$$.fragment),cn=r(),Wt=o("p"),Wt.innerHTML=qo,dn=r(),Bt=o("p"),Bt.innerHTML=Oo,oa=r(),K=o("div"),f(Be.$$.fragment),mn=r(),Rt=o("p"),Rt.innerHTML=Yo,sa=r(),W=o("div"),f(Re.$$.fragment),pn=r(),Vt=o("p"),Vt.innerHTML=Xo,fn=r(),z=o("div"),f(Ve.$$.fragment),gn=r(),Gt=o("p"),Gt.innerHTML=Zo,hn=r(),qt=o("p"),qt.innerHTML=Qo,un=r(),Ot=o("p"),Ot.textContent=Ko,bn=r(),B=o("ul"),Ge=o("li"),Yt=o("p"),Yt.innerHTML=es,_n=r(),f(ne.$$.fragment),vn=r(),Xt=o("li"),Xt.innerHTML=ts,Tn=r(),Zt=o("li"),Zt.innerHTML=rs,Cn=r(),Qt=o("li"),Qt.innerHTML=as,la=r(),R=o("div"),f(qe.$$.fragment),$n=r(),Kt=o("p"),Kt.innerHTML=ns,kn=r(),N=o("div"),f(Oe.$$.fragment),wn=r(),er=o("p"),er.textContent=os,yn=r(),tr=o("p"),tr.textContent=ss,Mn=r(),rr=o("ul"),rr.innerHTML=ls,ia=r(),ee=o("div"),f(Ye.$$.fragment),xn=r(),ar=o("p"),ar.innerHTML=is,ca=r(),te=o("div"),f(Xe.$$.fragment),Ln=r(),nr=o("p"),nr.innerHTML=cs,da=r(),V=o("div"),f(Ze.$$.fragment),In=r(),or=o("p"),or.innerHTML=ds,En=r(),sr=o("p"),sr.innerHTML=ms,ma=r(),J=o("div"),f(Qe.$$.fragment),Hn=r(),lr=o("p"),lr.innerHTML=ps,jn=r(),ir=o("p"),ir.textContent=fs,zn=r(),cr=o("ul"),cr.innerHTML=gs,pa=r(),G=o("div"),f(Ke.$$.fragment),Jn=r(),dr=o("p"),dr.innerHTML=hs,Dn=r(),A=o("div"),f(et.$$.fragment),Un=r(),mr=o("p"),mr.textContent=us,Nn=r(),pr=o("p"),pr.textContent=bs,An=r(),fr=o("ul"),fr.innerHTML=_s,fa=r(),q=o("div"),f(tt.$$.fragment),Pn=r(),gr=o("p"),gr.innerHTML=vs,Fn=r(),f(oe.$$.fragment),ga=r(),D=o("div"),f(rt.$$.fragment),Sn=r(),hr=o("p"),hr.innerHTML=Ts,Wn=r(),ur=o("p"),ur.innerHTML=Cs,Bn=r(),P=o("div"),f(at.$$.fragment),Rn=r(),br=o("p"),br.innerHTML=$s,Vn=r(),_r=o("p"),_r.textContent=ks,Gn=r(),vr=o("ul"),vr.innerHTML=ws,ha=r(),nt=o("p"),nt.textContent=ys,ua=r(),T=o("div"),f(ot.$$.fragment),qn=r(),Tr=o("p"),Tr.textContent=Ms,On=r(),Cr=o("p"),Cr.innerHTML=xs,Yn=r(),$r=o("p"),$r.innerHTML=Ls,Xn=r(),f(se.$$.fragment),Zn=r(),le=o("div"),f(st.$$.fragment),Qn=r(),kr=o("p"),kr.textContent=Is,Kn=r(),ie=o("div"),f(lt.$$.fragment),eo=r(),wr=o("p"),wr.textContent=Es,to=r(),ce=o("div"),f(it.$$.fragment),ro=r(),yr=o("p"),yr.textContent=Hs,ao=r(),de=o("div"),f(ct.$$.fragment),no=r(),Mr=o("p"),Mr.innerHTML=js,oo=r(),me=o("div"),f(dt.$$.fragment),so=r(),xr=o("p"),xr.textContent=zs,lo=r(),pe=o("div"),f(mt.$$.fragment),io=r(),Lr=o("p"),Lr.textContent=Js,co=r(),fe=o("div"),f(pt.$$.fragment),mo=r(),Ir=o("p"),Ir.textContent=Ds,po=r(),ge=o("div"),f(ft.$$.fragment),fo=r(),Er=o("p"),Er.textContent=Us,go=r(),he=o("div"),f(gt.$$.fragment),ho=r(),Hr=o("p"),Hr.textContent=Ns,uo=r(),ue=o("div"),f(ht.$$.fragment),bo=r(),jr=o("p"),jr.textContent=As,_o=r(),be=o("div"),f(ut.$$.fragment),vo=r(),zr=o("p"),zr.textContent=Ps,To=r(),_e=o("div"),f(bt.$$.fragment),Co=r(),Jr=o("p"),Jr.textContent=Fs,$o=r(),ve=o("div"),f(_t.$$.fragment),ko=r(),Dr=o("p"),Dr.textContent=Ss,wo=r(),Te=o("div"),f(vt.$$.fragment),yo=r(),Ur=o("p"),Ur.textContent=Ws,ba=r(),Tt=o("p"),Tt.textContent=Bs,_a=r(),Ct=o("p"),Ct.innerHTML=Rs,va=r(),f($t.$$.fragment),Ta=r(),kt=o("p"),kt.innerHTML=Vs,Ca=r(),f(wt.$$.fragment),$a=r(),yt=o("p"),yt.textContent=Gs,ka=r(),H=o("div"),f(Mt.$$.fragment),Mo=r(),Nr=o("p"),Nr.innerHTML=qs,xo=r(),f(Ce.$$.fragment),Lo=r(),$e=o("div"),f(xt.$$.fragment),Io=r(),Ar=o("p"),Ar.innerHTML=Os,Eo=r(),ke=o("div"),f(Lt.$$.fragment),Ho=r(),Pr=o("p"),Pr.innerHTML=Ys,wa=r(),It=o("p"),It.textContent=Xs,ya=r(),re=o("div"),f(Et.$$.fragment),jo=r(),Fr=o("p"),Fr.innerHTML=Zs,Ma=r(),f(Ht.$$.fragment),xa=r(),qr=o("p"),this.h()},l(e){const l=pl("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),w=a(e),g(y.$$.fragment,e),v=a(e),M=s(e,"P",{"data-svelte-h":!0}),c(M)!=="svelte-ixc7mw"&&(M.textContent=L),E=a(e),Ee=s(e,"P",{"data-svelte-h":!0}),c(Ee)!=="svelte-1o90q5b"&&(Ee.innerHTML=zo),Or=a(e),He=s(e,"P",{"data-svelte-h":!0}),c(He)!=="svelte-w2h063"&&(He.innerHTML=Jo),Yr=a(e),je=s(e,"UL",{"data-svelte-h":!0}),c(je)!=="svelte-xy1k6y"&&(je.innerHTML=Do),Xr=a(e),ze=s(e,"P",{"data-svelte-h":!0}),c(ze)!=="svelte-cfm0j7"&&(ze.innerHTML=Uo),Zr=a(e),Je=s(e,"P",{"data-svelte-h":!0}),c(Je)!=="svelte-j32lyh"&&(Je.innerHTML=No),Qr=a(e),g(De.$$.fragment,e),Kr=a(e),Ue=s(e,"P",{"data-svelte-h":!0}),c(Ue)!=="svelte-8oc82k"&&(Ue.innerHTML=Ao),ea=a(e),F=s(e,"DIV",{class:!0});var ae=_(F);g(Ne.$$.fragment,ae),Ka=a(ae),Jt=s(ae,"P",{"data-svelte-h":!0}),c(Jt)!=="svelte-1kyzw0h"&&(Jt.innerHTML=Po),en=a(ae),j=s(ae,"DIV",{class:!0});var U=_(j);g(Ae.$$.fragment,U),tn=a(U),Dt=s(U,"P",{"data-svelte-h":!0}),c(Dt)!=="svelte-1bfkm9x"&&(Dt.textContent=Fo),rn=a(U),Ut=s(U,"P",{"data-svelte-h":!0}),c(Ut)!=="svelte-1fkshtn"&&(Ut.textContent=So),an=a(U),Nt=s(U,"UL",{"data-svelte-h":!0}),c(Nt)!=="svelte-12drq5x"&&(Nt.innerHTML=Wo),nn=a(U),At=s(U,"P",{"data-svelte-h":!0}),c(At)!=="svelte-1faq0a7"&&(At.innerHTML=Bo),U.forEach(n),ae.forEach(n),ta=a(e),X=s(e,"DIV",{class:!0});var jt=_(X);g(Pe.$$.fragment,jt),on=a(jt),Pt=s(jt,"P",{"data-svelte-h":!0}),c(Pt)!=="svelte-5ryvcq"&&(Pt.innerHTML=Ro),jt.forEach(n),ra=a(e),Z=s(e,"DIV",{class:!0});var zt=_(Z);g(Fe.$$.fragment,zt),sn=a(zt),Ft=s(zt,"P",{"data-svelte-h":!0}),c(Ft)!=="svelte-1oew0fr"&&(Ft.innerHTML=Vo),zt.forEach(n),aa=a(e),Q=s(e,"DIV",{class:!0});var Ia=_(Q);g(Se.$$.fragment,Ia),ln=a(Ia),St=s(Ia,"P",{"data-svelte-h":!0}),c(St)!=="svelte-17cn3c8"&&(St.innerHTML=Go),Ia.forEach(n),na=a(e),S=s(e,"DIV",{class:!0});var Sr=_(S);g(We.$$.fragment,Sr),cn=a(Sr),Wt=s(Sr,"P",{"data-svelte-h":!0}),c(Wt)!=="svelte-wojn1"&&(Wt.innerHTML=qo),dn=a(Sr),Bt=s(Sr,"P",{"data-svelte-h":!0}),c(Bt)!=="svelte-1qla88l"&&(Bt.innerHTML=Oo),Sr.forEach(n),oa=a(e),K=s(e,"DIV",{class:!0});var Ea=_(K);g(Be.$$.fragment,Ea),mn=a(Ea),Rt=s(Ea,"P",{"data-svelte-h":!0}),c(Rt)!=="svelte-16rzlqi"&&(Rt.innerHTML=Yo),Ea.forEach(n),sa=a(e),W=s(e,"DIV",{class:!0});var Wr=_(W);g(Re.$$.fragment,Wr),pn=a(Wr),Vt=s(Wr,"P",{"data-svelte-h":!0}),c(Vt)!=="svelte-5bdis1"&&(Vt.innerHTML=Xo),fn=a(Wr),z=s(Wr,"DIV",{class:!0});var O=_(z);g(Ve.$$.fragment,O),gn=a(O),Gt=s(O,"P",{"data-svelte-h":!0}),c(Gt)!=="svelte-op70zs"&&(Gt.innerHTML=Zo),hn=a(O),qt=s(O,"P",{"data-svelte-h":!0}),c(qt)!=="svelte-m2rt7w"&&(qt.innerHTML=Qo),un=a(O),Ot=s(O,"P",{"data-svelte-h":!0}),c(Ot)!=="svelte-1fkshtn"&&(Ot.textContent=Ko),bn=a(O),B=s(O,"UL",{});var we=_(B);Ge=s(we,"LI",{});var Ha=_(Ge);Yt=s(Ha,"P",{"data-svelte-h":!0}),c(Yt)!=="svelte-py3r3s"&&(Yt.innerHTML=es),_n=a(Ha),g(ne.$$.fragment,Ha),Ha.forEach(n),vn=a(we),Xt=s(we,"LI",{"data-svelte-h":!0}),c(Xt)!=="svelte-dx3m30"&&(Xt.innerHTML=ts),Tn=a(we),Zt=s(we,"LI",{"data-svelte-h":!0}),c(Zt)!=="svelte-n1uh6c"&&(Zt.innerHTML=rs),Cn=a(we),Qt=s(we,"LI",{"data-svelte-h":!0}),c(Qt)!=="svelte-ybo66z"&&(Qt.innerHTML=as),we.forEach(n),O.forEach(n),Wr.forEach(n),la=a(e),R=s(e,"DIV",{class:!0});var Br=_(R);g(qe.$$.fragment,Br),$n=a(Br),Kt=s(Br,"P",{"data-svelte-h":!0}),c(Kt)!=="svelte-14r6ra9"&&(Kt.innerHTML=ns),kn=a(Br),N=s(Br,"DIV",{class:!0});var ye=_(N);g(Oe.$$.fragment,ye),wn=a(ye),er=s(ye,"P",{"data-svelte-h":!0}),c(er)!=="svelte-nmg16f"&&(er.textContent=os),yn=a(ye),tr=s(ye,"P",{"data-svelte-h":!0}),c(tr)!=="svelte-1fkshtn"&&(tr.textContent=ss),Mn=a(ye),rr=s(ye,"UL",{"data-svelte-h":!0}),c(rr)!=="svelte-o83nc7"&&(rr.innerHTML=ls),ye.forEach(n),Br.forEach(n),ia=a(e),ee=s(e,"DIV",{class:!0});var ja=_(ee);g(Ye.$$.fragment,ja),xn=a(ja),ar=s(ja,"P",{"data-svelte-h":!0}),c(ar)!=="svelte-h8xmsy"&&(ar.innerHTML=is),ja.forEach(n),ca=a(e),te=s(e,"DIV",{class:!0});var za=_(te);g(Xe.$$.fragment,za),Ln=a(za),nr=s(za,"P",{"data-svelte-h":!0}),c(nr)!=="svelte-1eof2ee"&&(nr.innerHTML=cs),za.forEach(n),da=a(e),V=s(e,"DIV",{class:!0});var Rr=_(V);g(Ze.$$.fragment,Rr),In=a(Rr),or=s(Rr,"P",{"data-svelte-h":!0}),c(or)!=="svelte-4ag9j6"&&(or.innerHTML=ds),En=a(Rr),sr=s(Rr,"P",{"data-svelte-h":!0}),c(sr)!=="svelte-1mhjcx0"&&(sr.innerHTML=ms),Rr.forEach(n),ma=a(e),J=s(e,"DIV",{class:!0});var Me=_(J);g(Qe.$$.fragment,Me),Hn=a(Me),lr=s(Me,"P",{"data-svelte-h":!0}),c(lr)!=="svelte-1nzrwqw"&&(lr.innerHTML=ps),jn=a(Me),ir=s(Me,"P",{"data-svelte-h":!0}),c(ir)!=="svelte-1fkshtn"&&(ir.textContent=fs),zn=a(Me),cr=s(Me,"UL",{"data-svelte-h":!0}),c(cr)!=="svelte-15svthu"&&(cr.innerHTML=gs),Me.forEach(n),pa=a(e),G=s(e,"DIV",{class:!0});var Vr=_(G);g(Ke.$$.fragment,Vr),Jn=a(Vr),dr=s(Vr,"P",{"data-svelte-h":!0}),c(dr)!=="svelte-6qjhot"&&(dr.innerHTML=hs),Dn=a(Vr),A=s(Vr,"DIV",{class:!0});var xe=_(A);g(et.$$.fragment,xe),Un=a(xe),mr=s(xe,"P",{"data-svelte-h":!0}),c(mr)!=="svelte-1wbmj3"&&(mr.textContent=us),Nn=a(xe),pr=s(xe,"P",{"data-svelte-h":!0}),c(pr)!=="svelte-1fkshtn"&&(pr.textContent=bs),An=a(xe),fr=s(xe,"UL",{"data-svelte-h":!0}),c(fr)!=="svelte-dna85o"&&(fr.innerHTML=_s),xe.forEach(n),Vr.forEach(n),fa=a(e),q=s(e,"DIV",{class:!0});var Gr=_(q);g(tt.$$.fragment,Gr),Pn=a(Gr),gr=s(Gr,"P",{"data-svelte-h":!0}),c(gr)!=="svelte-llm7su"&&(gr.innerHTML=vs),Fn=a(Gr),g(oe.$$.fragment,Gr),Gr.forEach(n),ga=a(e),D=s(e,"DIV",{class:!0});var Le=_(D);g(rt.$$.fragment,Le),Sn=a(Le),hr=s(Le,"P",{"data-svelte-h":!0}),c(hr)!=="svelte-1oojiyj"&&(hr.innerHTML=Ts),Wn=a(Le),ur=s(Le,"P",{"data-svelte-h":!0}),c(ur)!=="svelte-eu3kj7"&&(ur.innerHTML=Cs),Bn=a(Le),P=s(Le,"DIV",{class:!0});var Ie=_(P);g(at.$$.fragment,Ie),Rn=a(Ie),br=s(Ie,"P",{"data-svelte-h":!0}),c(br)!=="svelte-jjkenj"&&(br.innerHTML=$s),Vn=a(Ie),_r=s(Ie,"P",{"data-svelte-h":!0}),c(_r)!=="svelte-1fkshtn"&&(_r.textContent=ks),Gn=a(Ie),vr=s(Ie,"UL",{"data-svelte-h":!0}),c(vr)!=="svelte-crnavn"&&(vr.innerHTML=ws),Ie.forEach(n),Le.forEach(n),ha=a(e),nt=s(e,"P",{"data-svelte-h":!0}),c(nt)!=="svelte-4e1hmk"&&(nt.textContent=ys),ua=a(e),T=s(e,"DIV",{class:!0});var k=_(T);g(ot.$$.fragment,k),qn=a(k),Tr=s(k,"P",{"data-svelte-h":!0}),c(Tr)!=="svelte-14xg00o"&&(Tr.textContent=Ms),On=a(k),Cr=s(k,"P",{"data-svelte-h":!0}),c(Cr)!=="svelte-1xprdvt"&&(Cr.innerHTML=xs),Yn=a(k),$r=s(k,"P",{"data-svelte-h":!0}),c($r)!=="svelte-71zi12"&&($r.innerHTML=Ls),Xn=a(k),g(se.$$.fragment,k),Zn=a(k),le=s(k,"DIV",{class:!0});var Ja=_(le);g(st.$$.fragment,Ja),Qn=a(Ja),kr=s(Ja,"P",{"data-svelte-h":!0}),c(kr)!=="svelte-106889p"&&(kr.textContent=Is),Ja.forEach(n),Kn=a(k),ie=s(k,"DIV",{class:!0});var Da=_(ie);g(lt.$$.fragment,Da),eo=a(Da),wr=s(Da,"P",{"data-svelte-h":!0}),c(wr)!=="svelte-oshcpj"&&(wr.textContent=Es),Da.forEach(n),to=a(k),ce=s(k,"DIV",{class:!0});var Ua=_(ce);g(it.$$.fragment,Ua),ro=a(Ua),yr=s(Ua,"P",{"data-svelte-h":!0}),c(yr)!=="svelte-1o0xh73"&&(yr.textContent=Hs),Ua.forEach(n),ao=a(k),de=s(k,"DIV",{class:!0});var Na=_(de);g(ct.$$.fragment,Na),no=a(Na),Mr=s(Na,"P",{"data-svelte-h":!0}),c(Mr)!=="svelte-hzqkde"&&(Mr.innerHTML=js),Na.forEach(n),oo=a(k),me=s(k,"DIV",{class:!0});var Aa=_(me);g(dt.$$.fragment,Aa),so=a(Aa),xr=s(Aa,"P",{"data-svelte-h":!0}),c(xr)!=="svelte-10eiwg0"&&(xr.textContent=zs),Aa.forEach(n),lo=a(k),pe=s(k,"DIV",{class:!0});var Pa=_(pe);g(mt.$$.fragment,Pa),io=a(Pa),Lr=s(Pa,"P",{"data-svelte-h":!0}),c(Lr)!=="svelte-1mpbj2z"&&(Lr.textContent=Js),Pa.forEach(n),co=a(k),fe=s(k,"DIV",{class:!0});var Fa=_(fe);g(pt.$$.fragment,Fa),mo=a(Fa),Ir=s(Fa,"P",{"data-svelte-h":!0}),c(Ir)!=="svelte-1df7x4n"&&(Ir.textContent=Ds),Fa.forEach(n),po=a(k),ge=s(k,"DIV",{class:!0});var Sa=_(ge);g(ft.$$.fragment,Sa),fo=a(Sa),Er=s(Sa,"P",{"data-svelte-h":!0}),c(Er)!=="svelte-18swygp"&&(Er.textContent=Us),Sa.forEach(n),go=a(k),he=s(k,"DIV",{class:!0});var Wa=_(he);g(gt.$$.fragment,Wa),ho=a(Wa),Hr=s(Wa,"P",{"data-svelte-h":!0}),c(Hr)!=="svelte-19xp05v"&&(Hr.textContent=Ns),Wa.forEach(n),uo=a(k),ue=s(k,"DIV",{class:!0});var Ba=_(ue);g(ht.$$.fragment,Ba),bo=a(Ba),jr=s(Ba,"P",{"data-svelte-h":!0}),c(jr)!=="svelte-7af61p"&&(jr.textContent=As),Ba.forEach(n),_o=a(k),be=s(k,"DIV",{class:!0});var Ra=_(be);g(ut.$$.fragment,Ra),vo=a(Ra),zr=s(Ra,"P",{"data-svelte-h":!0}),c(zr)!=="svelte-8cdxjr"&&(zr.textContent=Ps),Ra.forEach(n),To=a(k),_e=s(k,"DIV",{class:!0});var Va=_(_e);g(bt.$$.fragment,Va),Co=a(Va),Jr=s(Va,"P",{"data-svelte-h":!0}),c(Jr)!=="svelte-sluvs0"&&(Jr.textContent=Fs),Va.forEach(n),$o=a(k),ve=s(k,"DIV",{class:!0});var Ga=_(ve);g(_t.$$.fragment,Ga),ko=a(Ga),Dr=s(Ga,"P",{"data-svelte-h":!0}),c(Dr)!=="svelte-6bvy6d"&&(Dr.textContent=Ss),Ga.forEach(n),wo=a(k),Te=s(k,"DIV",{class:!0});var qa=_(Te);g(vt.$$.fragment,qa),yo=a(qa),Ur=s(qa,"P",{"data-svelte-h":!0}),c(Ur)!=="svelte-zzwxsv"&&(Ur.textContent=Ws),qa.forEach(n),k.forEach(n),ba=a(e),Tt=s(e,"P",{"data-svelte-h":!0}),c(Tt)!=="svelte-87dqmt"&&(Tt.textContent=Bs),_a=a(e),Ct=s(e,"P",{"data-svelte-h":!0}),c(Ct)!=="svelte-17720zy"&&(Ct.innerHTML=Rs),va=a(e),g($t.$$.fragment,e),Ta=a(e),kt=s(e,"P",{"data-svelte-h":!0}),c(kt)!=="svelte-u9gp17"&&(kt.innerHTML=Vs),Ca=a(e),g(wt.$$.fragment,e),$a=a(e),yt=s(e,"P",{"data-svelte-h":!0}),c(yt)!=="svelte-140fjes"&&(yt.textContent=Gs),ka=a(e),H=s(e,"DIV",{class:!0});var Y=_(H);g(Mt.$$.fragment,Y),Mo=a(Y),Nr=s(Y,"P",{"data-svelte-h":!0}),c(Nr)!=="svelte-wle45l"&&(Nr.innerHTML=qs),xo=a(Y),g(Ce.$$.fragment,Y),Lo=a(Y),$e=s(Y,"DIV",{class:!0});var Oa=_($e);g(xt.$$.fragment,Oa),Io=a(Oa),Ar=s(Oa,"P",{"data-svelte-h":!0}),c(Ar)!=="svelte-hbs6ga"&&(Ar.innerHTML=Os),Oa.forEach(n),Eo=a(Y),ke=s(Y,"DIV",{class:!0});var Ya=_(ke);g(Lt.$$.fragment,Ya),Ho=a(Ya),Pr=s(Ya,"P",{"data-svelte-h":!0}),c(Pr)!=="svelte-dkslae"&&(Pr.innerHTML=Ys),Ya.forEach(n),Y.forEach(n),wa=a(e),It=s(e,"P",{"data-svelte-h":!0}),c(It)!=="svelte-1cmiei4"&&(It.textContent=Xs),ya=a(e),re=s(e,"DIV",{class:!0});var Xa=_(re);g(Et.$$.fragment,Xa),jo=a(Xa),Fr=s(Xa,"P",{"data-svelte-h":!0}),c(Fr)!=="svelte-11vrfmr"&&(Fr.innerHTML=Zs),Xa.forEach(n),Ma=a(e),g(Ht.$$.fragment,e),xa=a(e),qr=s(e,"P",{}),_(qr).forEach(n),this.h()},h(){C(d,"name","hf:doc:metadata"),C(d,"content",kl),C(j,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(F,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(X,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(Z,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(Q,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(S,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(K,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(z,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(W,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(N,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(R,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ee,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(te,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(V,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(J,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(A,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(G,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(q,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(P,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(D,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(le,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ie,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ce,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(de,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(me,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(pe,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(fe,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ge,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(he,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ue,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(be,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(_e,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ve,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(Te,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(T,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C($e,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ke,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(H,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(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,w,l),h(y,e,l),i(e,v,l),i(e,M,l),i(e,E,l),i(e,Ee,l),i(e,Or,l),i(e,He,l),i(e,Yr,l),i(e,je,l),i(e,Xr,l),i(e,ze,l),i(e,Zr,l),i(e,Je,l),i(e,Qr,l),h(De,e,l),i(e,Kr,l),i(e,Ue,l),i(e,ea,l),i(e,F,l),h(Ne,F,null),t(F,Ka),t(F,Jt),t(F,en),t(F,j),h(Ae,j,null),t(j,tn),t(j,Dt),t(j,rn),t(j,Ut),t(j,an),t(j,Nt),t(j,nn),t(j,At),i(e,ta,l),i(e,X,l),h(Pe,X,null),t(X,on),t(X,Pt),i(e,ra,l),i(e,Z,l),h(Fe,Z,null),t(Z,sn),t(Z,Ft),i(e,aa,l),i(e,Q,l),h(Se,Q,null),t(Q,ln),t(Q,St),i(e,na,l),i(e,S,l),h(We,S,null),t(S,cn),t(S,Wt),t(S,dn),t(S,Bt),i(e,oa,l),i(e,K,l),h(Be,K,null),t(K,mn),t(K,Rt),i(e,sa,l),i(e,W,l),h(Re,W,null),t(W,pn),t(W,Vt),t(W,fn),t(W,z),h(Ve,z,null),t(z,gn),t(z,Gt),t(z,hn),t(z,qt),t(z,un),t(z,Ot),t(z,bn),t(z,B),t(B,Ge),t(Ge,Yt),t(Ge,_n),h(ne,Ge,null),t(B,vn),t(B,Xt),t(B,Tn),t(B,Zt),t(B,Cn),t(B,Qt),i(e,la,l),i(e,R,l),h(qe,R,null),t(R,$n),t(R,Kt),t(R,kn),t(R,N),h(Oe,N,null),t(N,wn),t(N,er),t(N,yn),t(N,tr),t(N,Mn),t(N,rr),i(e,ia,l),i(e,ee,l),h(Ye,ee,null),t(ee,xn),t(ee,ar),i(e,ca,l),i(e,te,l),h(Xe,te,null),t(te,Ln),t(te,nr),i(e,da,l),i(e,V,l),h(Ze,V,null),t(V,In),t(V,or),t(V,En),t(V,sr),i(e,ma,l),i(e,J,l),h(Qe,J,null),t(J,Hn),t(J,lr),t(J,jn),t(J,ir),t(J,zn),t(J,cr),i(e,pa,l),i(e,G,l),h(Ke,G,null),t(G,Jn),t(G,dr),t(G,Dn),t(G,A),h(et,A,null),t(A,Un),t(A,mr),t(A,Nn),t(A,pr),t(A,An),t(A,fr),i(e,fa,l),i(e,q,l),h(tt,q,null),t(q,Pn),t(q,gr),t(q,Fn),h(oe,q,null),i(e,ga,l),i(e,D,l),h(rt,D,null),t(D,Sn),t(D,hr),t(D,Wn),t(D,ur),t(D,Bn),t(D,P),h(at,P,null),t(P,Rn),t(P,br),t(P,Vn),t(P,_r),t(P,Gn),t(P,vr),i(e,ha,l),i(e,nt,l),i(e,ua,l),i(e,T,l),h(ot,T,null),t(T,qn),t(T,Tr),t(T,On),t(T,Cr),t(T,Yn),t(T,$r),t(T,Xn),h(se,T,null),t(T,Zn),t(T,le),h(st,le,null),t(le,Qn),t(le,kr),t(T,Kn),t(T,ie),h(lt,ie,null),t(ie,eo),t(ie,wr),t(T,to),t(T,ce),h(it,ce,null),t(ce,ro),t(ce,yr),t(T,ao),t(T,de),h(ct,de,null),t(de,no),t(de,Mr),t(T,oo),t(T,me),h(dt,me,null),t(me,so),t(me,xr),t(T,lo),t(T,pe),h(mt,pe,null),t(pe,io),t(pe,Lr),t(T,co),t(T,fe),h(pt,fe,null),t(fe,mo),t(fe,Ir),t(T,po),t(T,ge),h(ft,ge,null),t(ge,fo),t(ge,Er),t(T,go),t(T,he),h(gt,he,null),t(he,ho),t(he,Hr),t(T,uo),t(T,ue),h(ht,ue,null),t(ue,bo),t(ue,jr),t(T,_o),t(T,be),h(ut,be,null),t(be,vo),t(be,zr),t(T,To),t(T,_e),h(bt,_e,null),t(_e,Co),t(_e,Jr),t(T,$o),t(T,ve),h(_t,ve,null),t(ve,ko),t(ve,Dr),t(T,wo),t(T,Te),h(vt,Te,null),t(Te,yo),t(Te,Ur),i(e,ba,l),i(e,Tt,l),i(e,_a,l),i(e,Ct,l),i(e,va,l),h($t,e,l),i(e,Ta,l),i(e,kt,l),i(e,Ca,l),h(wt,e,l),i(e,$a,l),i(e,yt,l),i(e,ka,l),i(e,H,l),h(Mt,H,null),t(H,Mo),t(H,Nr),t(H,xo),h(Ce,H,null),t(H,Lo),t(H,$e),h(xt,$e,null),t($e,Io),t($e,Ar),t(H,Eo),t(H,ke),h(Lt,ke,null),t(ke,Ho),t(ke,Pr),i(e,wa,l),i(e,It,l),i(e,ya,l),i(e,re,l),h(Et,re,null),t(re,jo),t(re,Fr),i(e,Ma,l),h(Ht,e,l),i(e,xa,l),i(e,qr,l),La=!0},p(e,[l]){const ae={};l&2&&(ae.$$scope={dirty:l,ctx:e}),ne.$set(ae);const U={};l&2&&(U.$$scope={dirty:l,ctx:e}),oe.$set(U);const jt={};l&2&&(jt.$$scope={dirty:l,ctx:e}),se.$set(jt);const zt={};l&2&&(zt.$$scope={dirty:l,ctx:e}),Ce.$set(zt)},i(e){La||(m(y.$$.fragment,e),m(De.$$.fragment,e),m(Ne.$$.fragment,e),m(Ae.$$.fragment,e),m(Pe.$$.fragment,e),m(Fe.$$.fragment,e),m(Se.$$.fragment,e),m(We.$$.fragment,e),m(Be.$$.fragment,e),m(Re.$$.fragment,e),m(Ve.$$.fragment,e),m(ne.$$.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(tt.$$.fragment,e),m(oe.$$.fragment,e),m(rt.$$.fragment,e),m(at.$$.fragment,e),m(ot.$$.fragment,e),m(se.$$.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(_t.$$.fragment,e),m(vt.$$.fragment,e),m($t.$$.fragment,e),m(wt.$$.fragment,e),m(Mt.$$.fragment,e),m(Ce.$$.fragment,e),m(xt.$$.fragment,e),m(Lt.$$.fragment,e),m(Et.$$.fragment,e),m(Ht.$$.fragment,e),La=!0)},o(e){p(y.$$.fragment,e),p(De.$$.fragment,e),p(Ne.$$.fragment,e),p(Ae.$$.fragment,e),p(Pe.$$.fragment,e),p(Fe.$$.fragment,e),p(Se.$$.fragment,e),p(We.$$.fragment,e),p(Be.$$.fragment,e),p(Re.$$.fragment,e),p(Ve.$$.fragment,e),p(ne.$$.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(tt.$$.fragment,e),p(oe.$$.fragment,e),p(rt.$$.fragment,e),p(at.$$.fragment,e),p(ot.$$.fragment,e),p(se.$$.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(_t.$$.fragment,e),p(vt.$$.fragment,e),p($t.$$.fragment,e),p(wt.$$.fragment,e),p(Mt.$$.fragment,e),p(Ce.$$.fragment,e),p(xt.$$.fragment,e),p(Lt.$$.fragment,e),p(Et.$$.fragment,e),p(Ht.$$.fragment,e),La=!1},d(e){e&&(n(x),n(b),n(w),n(v),n(M),n(E),n(Ee),n(Or),n(He),n(Yr),n(je),n(Xr),n(ze),n(Zr),n(Je),n(Qr),n(Kr),n(Ue),n(ea),n(F),n(ta),n(X),n(ra),n(Z),n(aa),n(Q),n(na),n(S),n(oa),n(K),n(sa),n(W),n(la),n(R),n(ia),n(ee),n(ca),n(te),n(da),n(V),n(ma),n(J),n(pa),n(G),n(fa),n(q),n(ga),n(D),n(ha),n(nt),n(ua),n(T),n(ba),n(Tt),n(_a),n(Ct),n(va),n(Ta),n(kt),n(Ca),n($a),n(yt),n(ka),n(H),n(wa),n(It),n(ya),n(re),n(Ma),n(xa),n(qr)),n(d),u(y,e),u(De,e),u(Ne),u(Ae),u(Pe),u(Fe),u(Se),u(We),u(Be),u(Re),u(Ve),u(ne),u(qe),u(Oe),u(Ye),u(Xe),u(Ze),u(Qe),u(Ke),u(et),u(tt),u(oe),u(rt),u(at),u(ot),u(se),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(_t),u(vt),u($t,e),u(wt,e),u(Mt),u(Ce),u(xt),u(Lt),u(Et),u(Ht,e)}}}const kl='{"title":"Callbacks","local":"callbacks","sections":[{"title":"可用的Callbacks","local":"transformers.integrations.CometCallback","sections":[],"depth":2}],"depth":1}';function wl(I){return dl(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class jl extends al{constructor(d){super(),nl(this,d,wl,$l,rl,{})}}export{jl as component};
