import{S as Hr,i as Ir,s as Rr,e as n,k as c,t as l,w as d,M as Br,c as p,d as s,m,a as i,h as r,x as u,b as j,G as t,g as o,y as f,q as _,o as h,B as $,v as Jr}from"../../chunks/vendor-hf-doc-builder.js";import{T as Gr}from"../../chunks/Tip-hf-doc-builder.js";import{Y as Nr}from"../../chunks/Youtube-hf-doc-builder.js";import{I as Yr}from"../../chunks/IconCopyLink-hf-doc-builder.js";import{C as k}from"../../chunks/CodeBlock-hf-doc-builder.js";import{D as Qr}from"../../chunks/DocNotebookDropdown-hf-doc-builder.js";function Kr(xe){let b,g,w,ee,M;return{c(){b=n("p"),g=l("\u270F\uFE0F "),w=n("strong"),ee=l("\u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435!"),M=l(" \u0418\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B \u0442\u0430\u043A, \u0447\u0442\u043E\u0431\u044B \u0434\u043E\u043E\u0431\u0443\u0447\u0438\u0442\u044C \u043C\u043E\u0434\u0435\u043B\u044C \u043D\u0430 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0435 SST-2.")},l(y){b=p(y,"P",{});var C=i(b);g=r(C,"\u270F\uFE0F "),w=p(C,"STRONG",{});var D=i(w);ee=r(D,"\u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435!"),D.forEach(s),M=r(C," \u0418\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B \u0442\u0430\u043A, \u0447\u0442\u043E\u0431\u044B \u0434\u043E\u043E\u0431\u0443\u0447\u0438\u0442\u044C \u043C\u043E\u0434\u0435\u043B\u044C \u043D\u0430 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0435 SST-2."),C.forEach(s)},m(y,C){o(y,b,C),t(b,g),t(b,w),t(w,ee),t(b,M)},d(y){y&&s(b)}}}function Vr(xe){let b;return{c(){b=l('\u26A0\uFE0F \u0427\u0442\u043E\u0431\u044B \u0432\u043E\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u0443\u0441\u043A\u043E\u0440\u0435\u043D\u0438\u0435\u043C, \u043F\u0440\u0435\u0434\u043B\u0430\u0433\u0430\u0435\u043C\u044B\u043C \u043E\u0431\u043B\u0430\u0447\u043D\u044B\u043C\u0438 TPU, \u043C\u044B \u0440\u0435\u043A\u043E\u043C\u0435\u043D\u0434\u0443\u0435\u043C \u0434\u043E\u043F\u043E\u043B\u043D\u044F\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435 \u0434\u043E \u0444\u0438\u043A\u0441\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0439 \u0434\u043B\u0438\u043D\u044B \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u0430\u0440\u0433\u0443\u043C\u0435\u043D\u0442\u043E\u0432 `padding="max_length"` \u0438 `max_length` \u0442\u043E\u043A\u0435\u043D\u0438\u0437\u0430\u0442\u043E\u0440\u0430.')},l(g){b=r(g,'\u26A0\uFE0F \u0427\u0442\u043E\u0431\u044B \u0432\u043E\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u0443\u0441\u043A\u043E\u0440\u0435\u043D\u0438\u0435\u043C, \u043F\u0440\u0435\u0434\u043B\u0430\u0433\u0430\u0435\u043C\u044B\u043C \u043E\u0431\u043B\u0430\u0447\u043D\u044B\u043C\u0438 TPU, \u043C\u044B \u0440\u0435\u043A\u043E\u043C\u0435\u043D\u0434\u0443\u0435\u043C \u0434\u043E\u043F\u043E\u043B\u043D\u044F\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435 \u0434\u043E \u0444\u0438\u043A\u0441\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0439 \u0434\u043B\u0438\u043D\u044B \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u0430\u0440\u0433\u0443\u043C\u0435\u043D\u0442\u043E\u0432 `padding="max_length"` \u0438 `max_length` \u0442\u043E\u043A\u0435\u043D\u0438\u0437\u0430\u0442\u043E\u0440\u0430.')},m(g,w){o(g,b,w)},d(g){g&&s(b)}}}function Xr(xe){let b,g,w,ee,M,y,C,D,Ps,F,Bt,Ke,Jt,Yt,Ds,se,Ss,te,Qt,xs,S,Kt,Ve,Vt,Xt,Xe,Zt,ea,Ts,x,O,sa,Ze,ta,aa,es,la,ra,oa,P,na,ss,pa,ia,ts,ca,ma,as,da,ua,fa,ls,_a,Os,U,ha,rs,$a,ba,Ws,ae,Ms,Te,ka,Fs,le,Us,Oe,va,Ls,re,Gs,We,ja,Ns,oe,Hs,ne,Is,L,wa,os,ga,za,Rs,Me,Ea,Bs,pe,Js,Fe,ya,Ys,ie,Qs,ce,Ks,G,qa,ns,Aa,Ca,Vs,z,Pa,ps,Da,Sa,is,xa,Ta,cs,Oa,Wa,me,Ma,Fa,Xs,de,Zs,N,Ua,ms,La,Ga,et,ue,st,fe,tt,_e,Na,at,H,Ha,ds,Ia,Ra,lt,he,rt,$e,ot,Ue,Ba,nt,be,pt,Le,Ja,it,ke,Ya,ct,q,Qa,us,Ka,Va,fs,Xa,Za,_s,el,sl,mt,ve,dt,je,ut,Ge,tl,ft,I,_t,W,R,hs,we,al,$s,ll,ht,ge,$t,B,rl,ze,ol,nl,bt,Ee,kt,Ne,pl,vt,ye,jt,A,il,bs,cl,ml,ks,dl,ul,vs,fl,_l,wt,v,hl,js,$l,bl,ws,kl,vl,gs,jl,wl,zs,gl,zl,Es,El,yl,ys,ql,Al,gt,J,zt,He,Cl,Et,qe,yt,Y,Pl,qs,Dl,Sl,qt,Ae,At,Ie,xl,Ct,Re,Tl,Pt,Ce,Dt,Be,Ol,St,Q,Wl,As,Ml,Fl,xt,Pe,Tt,K,Ul,De,Ll,Gl,Ot;return y=new Qr({props:{classNames:"absolute z-10 right-0 top-0",options:[{label:"Google Colab",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/master/course/chapter3/section4.ipynb"},{label:"Aws Studio",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/master/course/chapter3/section4.ipynb"}]}}),D=new Nr({props:{id:"Dh9CL8fyG80"}}),se=new k({props:{code:`from datasets import load_dataset
from transformers import AutoTokenizer, DataCollatorWithPadding

raw_datasets = load_dataset("glue", "mrpc")
checkpoint = "bert-base-uncased"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)


def tokenize_function(example):
    return tokenizer(example["sentence1"], example["sentence2"], truncation=True)


tokenized_datasets = raw_datasets.map(tokenize_function, batched=True)
data_collator = DataCollatorWithPadding(tokenizer=tokenizer)`,highlighted:`<span class="hljs-keyword">from</span> datasets <span class="hljs-keyword">import</span> load_dataset
<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoTokenizer, DataCollatorWithPadding

raw_datasets = load_dataset(<span class="hljs-string">&quot;glue&quot;</span>, <span class="hljs-string">&quot;mrpc&quot;</span>)
checkpoint = <span class="hljs-string">&quot;bert-base-uncased&quot;</span>
tokenizer = AutoTokenizer.from_pretrained(checkpoint)


<span class="hljs-keyword">def</span> <span class="hljs-title function_">tokenize_function</span>(<span class="hljs-params">example</span>):
    <span class="hljs-keyword">return</span> tokenizer(example[<span class="hljs-string">&quot;sentence1&quot;</span>], example[<span class="hljs-string">&quot;sentence2&quot;</span>], truncation=<span class="hljs-literal">True</span>)


tokenized_datasets = raw_datasets.<span class="hljs-built_in">map</span>(tokenize_function, batched=<span class="hljs-literal">True</span>)
data_collator = DataCollatorWithPadding(tokenizer=tokenizer)`}}),ae=new k({props:{code:`tokenized_datasets = tokenized_datasets.remove_columns(["sentence1", "sentence2", "idx"])
tokenized_datasets = tokenized_datasets.rename_column("label", "labels")
tokenized_datasets.set_format("torch")
tokenized_datasets["train"].column_names`,highlighted:`tokenized_datasets = tokenized_datasets.remove_columns([<span class="hljs-string">&quot;sentence1&quot;</span>, <span class="hljs-string">&quot;sentence2&quot;</span>, <span class="hljs-string">&quot;idx&quot;</span>])
tokenized_datasets = tokenized_datasets.rename_column(<span class="hljs-string">&quot;label&quot;</span>, <span class="hljs-string">&quot;labels&quot;</span>)
tokenized_datasets.set_format(<span class="hljs-string">&quot;torch&quot;</span>)
tokenized_datasets[<span class="hljs-string">&quot;train&quot;</span>].column_names`}}),le=new k({props:{code:'["attention_mask", "input_ids", "labels", "token_type_ids"]',highlighted:'[<span class="hljs-string">&quot;attention_mask&quot;</span>, <span class="hljs-string">&quot;input_ids&quot;</span>, <span class="hljs-string">&quot;labels&quot;</span>, <span class="hljs-string">&quot;token_type_ids&quot;</span>]'}}),re=new k({props:{code:`from torch.utils.data import DataLoader

train_dataloader = DataLoader(
    tokenized_datasets["train"], shuffle=True, batch_size=8, collate_fn=data_collator
)
eval_dataloader = DataLoader(
    tokenized_datasets["validation"], batch_size=8, collate_fn=data_collator
)`,highlighted:`<span class="hljs-keyword">from</span> torch.utils.data <span class="hljs-keyword">import</span> DataLoader

train_dataloader = DataLoader(
    tokenized_datasets[<span class="hljs-string">&quot;train&quot;</span>], shuffle=<span class="hljs-literal">True</span>, batch_size=<span class="hljs-number">8</span>, collate_fn=data_collator
)
eval_dataloader = DataLoader(
    tokenized_datasets[<span class="hljs-string">&quot;validation&quot;</span>], batch_size=<span class="hljs-number">8</span>, collate_fn=data_collator
)`}}),oe=new k({props:{code:`for batch in train_dataloader:
    break
{k: v.shape for k, v in batch.items()}`,highlighted:`<span class="hljs-keyword">for</span> batch <span class="hljs-keyword">in</span> train_dataloader:
    <span class="hljs-keyword">break</span>
{k: v.shape <span class="hljs-keyword">for</span> k, v <span class="hljs-keyword">in</span> batch.items()}`}}),ne=new k({props:{code:`{'attention_mask': torch.Size([8, 65]),
 'input_ids': torch.Size([8, 65]),
 'labels': torch.Size([8]),
 'token_type_ids': torch.Size([8, 65])}`,highlighted:`{<span class="hljs-string">&#x27;attention_mask&#x27;</span>: torch.Size([<span class="hljs-number">8</span>, <span class="hljs-number">65</span>]),
 <span class="hljs-string">&#x27;input_ids&#x27;</span>: torch.Size([<span class="hljs-number">8</span>, <span class="hljs-number">65</span>]),
 <span class="hljs-string">&#x27;labels&#x27;</span>: torch.Size([<span class="hljs-number">8</span>]),
 <span class="hljs-string">&#x27;token_type_ids&#x27;</span>: torch.Size([<span class="hljs-number">8</span>, <span class="hljs-number">65</span>])}`}}),pe=new k({props:{code:`from transformers import AutoModelForSequenceClassification

model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=2)`,highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoModelForSequenceClassification

model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=<span class="hljs-number">2</span>)`}}),ie=new k({props:{code:`outputs = model(**batch)
print(outputs.loss, outputs.logits.shape)`,highlighted:`outputs = model(**batch)
<span class="hljs-built_in">print</span>(outputs.loss, outputs.logits.shape)`}}),ce=new k({props:{code:"tensor(0.5441, grad_fn=<NllLossBackward>) torch.Size([8, 2])",highlighted:'tensor(<span class="hljs-number">0.5441</span>, grad_fn=&lt;NllLossBackward&gt;) torch.Size([<span class="hljs-number">8</span>, <span class="hljs-number">2</span>])'}}),de=new k({props:{code:`from transformers import AdamW

optimizer = AdamW(model.parameters(), lr=5e-5)`,highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AdamW

optimizer = AdamW(model.parameters(), lr=<span class="hljs-number">5e-5</span>)`}}),ue=new k({props:{code:`from transformers import get_scheduler

num_epochs = 3
num_training_steps = num_epochs * len(train_dataloader)
lr_scheduler = get_scheduler(
    "linear",
    optimizer=optimizer,
    num_warmup_steps=0,
    num_training_steps=num_training_steps,
)
print(num_training_steps)`,highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> get_scheduler

num_epochs = <span class="hljs-number">3</span>
num_training_steps = num_epochs * <span class="hljs-built_in">len</span>(train_dataloader)
lr_scheduler = get_scheduler(
    <span class="hljs-string">&quot;linear&quot;</span>,
    optimizer=optimizer,
    num_warmup_steps=<span class="hljs-number">0</span>,
    num_training_steps=num_training_steps,
)
<span class="hljs-built_in">print</span>(num_training_steps)`}}),fe=new k({props:{code:"1377",highlighted:'<span class="hljs-number">1377</span>'}}),he=new k({props:{code:`import torch

device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
model.to(device)
device`,highlighted:`<span class="hljs-keyword">import</span> torch

device = torch.device(<span class="hljs-string">&quot;cuda&quot;</span>) <span class="hljs-keyword">if</span> torch.cuda.is_available() <span class="hljs-keyword">else</span> torch.device(<span class="hljs-string">&quot;cpu&quot;</span>)
model.to(device)
device`}}),$e=new k({props:{code:"device(type='cuda')",highlighted:'device(<span class="hljs-built_in">type</span>=<span class="hljs-string">&#x27;cuda&#x27;</span>)'}}),be=new k({props:{code:`from tqdm.auto import tqdm

progress_bar = tqdm(range(num_training_steps))

model.train()
for epoch in range(num_epochs):
    for batch in train_dataloader:
        batch = {k: v.to(device) for k, v in batch.items()}
        outputs = model(**batch)
        loss = outputs.loss
        loss.backward()

        optimizer.step()
        lr_scheduler.step()
        optimizer.zero_grad()
        progress_bar.update(1)`,highlighted:`<span class="hljs-keyword">from</span> tqdm.auto <span class="hljs-keyword">import</span> tqdm

progress_bar = tqdm(<span class="hljs-built_in">range</span>(num_training_steps))

model.train()
<span class="hljs-keyword">for</span> epoch <span class="hljs-keyword">in</span> <span class="hljs-built_in">range</span>(num_epochs):
    <span class="hljs-keyword">for</span> batch <span class="hljs-keyword">in</span> train_dataloader:
        batch = {k: v.to(device) <span class="hljs-keyword">for</span> k, v <span class="hljs-keyword">in</span> batch.items()}
        outputs = model(**batch)
        loss = outputs.loss
        loss.backward()

        optimizer.step()
        lr_scheduler.step()
        optimizer.zero_grad()
        progress_bar.update(<span class="hljs-number">1</span>)`}}),ve=new k({props:{code:`from datasets import load_metric

metric = load_metric("glue", "mrpc")
model.eval()
for batch in eval_dataloader:
    batch = {k: v.to(device) for k, v in batch.items()}
    with torch.no_grad():
        outputs = model(**batch)

    logits = outputs.logits
    predictions = torch.argmax(logits, dim=-1)
    metric.add_batch(predictions=predictions, references=batch["labels"])

metric.compute()`,highlighted:`<span class="hljs-keyword">from</span> datasets <span class="hljs-keyword">import</span> load_metric

metric = load_metric(<span class="hljs-string">&quot;glue&quot;</span>, <span class="hljs-string">&quot;mrpc&quot;</span>)
model.<span class="hljs-built_in">eval</span>()
<span class="hljs-keyword">for</span> batch <span class="hljs-keyword">in</span> eval_dataloader:
    batch = {k: v.to(device) <span class="hljs-keyword">for</span> k, v <span class="hljs-keyword">in</span> batch.items()}
    <span class="hljs-keyword">with</span> torch.no_grad():
        outputs = model(**batch)

    logits = outputs.logits
    predictions = torch.argmax(logits, dim=-<span class="hljs-number">1</span>)
    metric.add_batch(predictions=predictions, references=batch[<span class="hljs-string">&quot;labels&quot;</span>])

metric.compute()`}}),je=new k({props:{code:"{'accuracy': 0.8431372549019608, 'f1': 0.8907849829351535}",highlighted:'{<span class="hljs-string">&#x27;accuracy&#x27;</span>: <span class="hljs-number">0.8431372549019608</span>, <span class="hljs-string">&#x27;f1&#x27;</span>: <span class="hljs-number">0.8907849829351535</span>}'}}),I=new Gr({props:{$$slots:{default:[Kr]},$$scope:{ctx:xe}}}),we=new Yr({}),ge=new Nr({props:{id:"s7dy8QRgjJ0"}}),Ee=new k({props:{code:`from transformers import AdamW, AutoModelForSequenceClassification, get_scheduler

model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=2)
optimizer = AdamW(model.parameters(), lr=3e-5)

device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
model.to(device)

num_epochs = 3
num_training_steps = num_epochs * len(train_dataloader)
lr_scheduler = get_scheduler(
    "linear",
    optimizer=optimizer,
    num_warmup_steps=0,
    num_training_steps=num_training_steps,
)

progress_bar = tqdm(range(num_training_steps))

model.train()
for epoch in range(num_epochs):
    for batch in train_dataloader:
        batch = {k: v.to(device) for k, v in batch.items()}
        outputs = model(**batch)
        loss = outputs.loss
        loss.backward()

        optimizer.step()
        lr_scheduler.step()
        optimizer.zero_grad()
        progress_bar.update(1)`,highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AdamW, AutoModelForSequenceClassification, get_scheduler

model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=<span class="hljs-number">2</span>)
optimizer = AdamW(model.parameters(), lr=<span class="hljs-number">3e-5</span>)

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

num_epochs = <span class="hljs-number">3</span>
num_training_steps = num_epochs * <span class="hljs-built_in">len</span>(train_dataloader)
lr_scheduler = get_scheduler(
    <span class="hljs-string">&quot;linear&quot;</span>,
    optimizer=optimizer,
    num_warmup_steps=<span class="hljs-number">0</span>,
    num_training_steps=num_training_steps,
)

progress_bar = tqdm(<span class="hljs-built_in">range</span>(num_training_steps))

model.train()
<span class="hljs-keyword">for</span> epoch <span class="hljs-keyword">in</span> <span class="hljs-built_in">range</span>(num_epochs):
    <span class="hljs-keyword">for</span> batch <span class="hljs-keyword">in</span> train_dataloader:
        batch = {k: v.to(device) <span class="hljs-keyword">for</span> k, v <span class="hljs-keyword">in</span> batch.items()}
        outputs = model(**batch)
        loss = outputs.loss
        loss.backward()

        optimizer.step()
        lr_scheduler.step()
        optimizer.zero_grad()
        progress_bar.update(<span class="hljs-number">1</span>)`}}),ye=new k({props:{code:`+ from accelerate import Accelerator
  from transformers import AdamW, AutoModelForSequenceClassification, get_scheduler

+ accelerator = Accelerator()

  model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=2)
  optimizer = AdamW(model.parameters(), lr=3e-5)

- device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
- model.to(device)

+ train_dataloader, eval_dataloader, model, optimizer = accelerator.prepare(
+     train_dataloader, eval_dataloader, model, optimizer
+ )

  num_epochs = 3
  num_training_steps = num_epochs * len(train_dataloader)
  lr_scheduler = get_scheduler(
      "linear",
      optimizer=optimizer,
      num_warmup_steps=0,
      num_training_steps=num_training_steps
  )

  progress_bar = tqdm(range(num_training_steps))

  model.train()
  for epoch in range(num_epochs):
      for batch in train_dataloader:
-         batch = {k: v.to(device) for k, v in batch.items()}
          outputs = model(**batch)
          loss = outputs.loss
-         loss.backward()
+         accelerator.backward(loss)

          optimizer.step()
          lr_scheduler.step()
          optimizer.zero_grad()
          progress_bar.update(1)`,highlighted:`<span class="hljs-addition">+ from accelerate import Accelerator</span>
  from transformers import AdamW, AutoModelForSequenceClassification, get_scheduler

<span class="hljs-addition">+ accelerator = Accelerator()</span>

  model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=2)
  optimizer = AdamW(model.parameters(), lr=3e-5)

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

<span class="hljs-addition">+ train_dataloader, eval_dataloader, model, optimizer = accelerator.prepare(</span>
<span class="hljs-addition">+     train_dataloader, eval_dataloader, model, optimizer</span>
<span class="hljs-addition">+ )</span>

  num_epochs = 3
  num_training_steps = num_epochs * len(train_dataloader)
  lr_scheduler = get_scheduler(
      &quot;linear&quot;,
      optimizer=optimizer,
      num_warmup_steps=0,
      num_training_steps=num_training_steps
  )

  progress_bar = tqdm(range(num_training_steps))

  model.train()
  for epoch in range(num_epochs):
      for batch in train_dataloader:
<span class="hljs-deletion">-         batch = {k: v.to(device) for k, v in batch.items()}</span>
          outputs = model(**batch)
          loss = outputs.loss
<span class="hljs-deletion">-         loss.backward()</span>
<span class="hljs-addition">+         accelerator.backward(loss)</span>

          optimizer.step()
          lr_scheduler.step()
          optimizer.zero_grad()
          progress_bar.update(1)`}}),J=new Gr({props:{$$slots:{default:[Vr]},$$scope:{ctx:xe}}}),qe=new k({props:{code:`from accelerate import Accelerator
from transformers import AdamW, AutoModelForSequenceClassification, get_scheduler

accelerator = Accelerator()

model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=2)
optimizer = AdamW(model.parameters(), lr=3e-5)

train_dl, eval_dl, model, optimizer = accelerator.prepare(
    train_dataloader, eval_dataloader, model, optimizer
)

num_epochs = 3
num_training_steps = num_epochs * len(train_dl)
lr_scheduler = get_scheduler(
    "linear",
    optimizer=optimizer,
    num_warmup_steps=0,
    num_training_steps=num_training_steps,
)

progress_bar = tqdm(range(num_training_steps))

model.train()
for epoch in range(num_epochs):
    for batch in train_dl:
        outputs = model(**batch)
        loss = outputs.loss
        accelerator.backward(loss)

        optimizer.step()
        lr_scheduler.step()
        optimizer.zero_grad()
        progress_bar.update(1)`,highlighted:`<span class="hljs-keyword">from</span> accelerate <span class="hljs-keyword">import</span> Accelerator
<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AdamW, AutoModelForSequenceClassification, get_scheduler

accelerator = Accelerator()

model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=<span class="hljs-number">2</span>)
optimizer = AdamW(model.parameters(), lr=<span class="hljs-number">3e-5</span>)

train_dl, eval_dl, model, optimizer = accelerator.prepare(
    train_dataloader, eval_dataloader, model, optimizer
)

num_epochs = <span class="hljs-number">3</span>
num_training_steps = num_epochs * <span class="hljs-built_in">len</span>(train_dl)
lr_scheduler = get_scheduler(
    <span class="hljs-string">&quot;linear&quot;</span>,
    optimizer=optimizer,
    num_warmup_steps=<span class="hljs-number">0</span>,
    num_training_steps=num_training_steps,
)

progress_bar = tqdm(<span class="hljs-built_in">range</span>(num_training_steps))

model.train()
<span class="hljs-keyword">for</span> epoch <span class="hljs-keyword">in</span> <span class="hljs-built_in">range</span>(num_epochs):
    <span class="hljs-keyword">for</span> batch <span class="hljs-keyword">in</span> train_dl:
        outputs = model(**batch)
        loss = outputs.loss
        accelerator.backward(loss)

        optimizer.step()
        lr_scheduler.step()
        optimizer.zero_grad()
        progress_bar.update(<span class="hljs-number">1</span>)`}}),Ae=new k({props:{code:"accelerate config",highlighted:"accelerate config"}}),Ce=new k({props:{code:"accelerate launch train.py",highlighted:'accelerate <span class="hljs-built_in">launch</span> train.py'}}),Pe=new k({props:{code:`from accelerate import notebook_launcher

notebook_launcher(training_function)`,highlighted:`<span class="hljs-keyword">from</span> accelerate <span class="hljs-keyword">import</span> notebook_launcher

notebook_launcher(training_function)`}}),{c(){b=n("meta"),g=c(),w=n("h1"),ee=l("\u041F\u043E\u043B\u043D\u043E\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435"),M=c(),d(y.$$.fragment),C=c(),d(D.$$.fragment),Ps=c(),F=n("p"),Bt=l("\u0422\u0435\u043F\u0435\u0440\u044C \u043C\u044B \u043F\u043E\u0441\u043C\u043E\u0442\u0440\u0438\u043C, \u043A\u0430\u043A \u0434\u043E\u0441\u0442\u0438\u0447\u044C \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u043E\u0432 \u0438\u0437 \u043F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0435\u0439 \u0433\u043B\u0430\u0432\u044B \u0431\u0435\u0437 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F \u043A\u043B\u0430\u0441\u0441\u0430 "),Ke=n("code"),Jt=l("Trainer"),Yt=l(". \u0412 \u044D\u0442\u043E\u0439 \u0433\u043B\u0430\u0432\u0435 \u043C\u044B \u043F\u0440\u0435\u0434\u043F\u043E\u043B\u0430\u0433\u0430\u0435\u043C, \u0447\u0442\u043E \u0432\u044B \u0432\u044B\u043F\u043E\u043B\u043D\u0438\u043B\u0438 \u044D\u0442\u0430\u043F\u044B \u043F\u0440\u0435\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0438\u043D\u0433\u0430 \u0440\u0430\u0437\u0434\u0435\u043B\u0430 2. \u041D\u0438\u0436\u0435 \u043A\u043E\u0440\u043E\u0442\u043A\u0430\u044F \u0432\u044B\u0436\u0438\u043C\u043A\u0430 \u0442\u043E\u0433\u043E, \u0447\u0442\u043E \u0432\u0430\u043C \u043F\u043E\u043D\u0430\u0434\u043E\u0431\u0438\u0442\u0441\u044F:"),Ds=c(),d(se.$$.fragment),Ss=c(),te=n("h3"),Qt=l("\u041F\u043E\u0434\u0433\u043E\u0442\u043E\u0432\u043A\u0430 \u043A \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044E"),xs=c(),S=n("p"),Kt=l("\u041F\u0435\u0440\u0435\u0434 \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0446\u0438\u043A\u043B\u0430 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0437\u0430\u0434\u0430\u0442\u044C \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u043E\u0431\u044A\u0435\u043A\u0442\u043E\u0432. \u041F\u0435\u0440\u0432\u044B\u0439: \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043A\u0438 \u0434\u0430\u043D\u043D\u044B\u0445 (\u0434\u0430\u043B\u0435\u0435 - dataloaders), \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043C\u044B \u0431\u0443\u0434\u0435\u043C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0434\u043B\u044F \u0438\u0442\u0435\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u043F\u043E \u0431\u0430\u0442\u0447\u0430\u043C \u0434\u0430\u043D\u043D\u044B\u0445. \u041F\u0435\u0440\u0435\u0434 \u044D\u0442\u0438\u043C \u043D\u0430\u043C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u043F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0439 \u043F\u043E\u0441\u0442\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0438\u043D\u0433\u0430 \u043A \u043D\u0430\u0448\u0435\u043C\u0443 "),Ve=n("code"),Vt=l("tokenized_datasets"),Xt=l(". \u042D\u0442\u043E \u043D\u0443\u0436\u043D\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C: \u0432 \u043F\u0440\u043E\u0448\u043B\u044B\u0439 \u0440\u0430\u0437 \u0437\u0430 \u043D\u0430\u0441 \u044D\u0442\u043E \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438 \u0434\u0435\u043B\u0430\u043B "),Xe=n("code"),Zt=l("Trainer"),ea=l(". \u041D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0435:"),Ts=c(),x=n("ul"),O=n("li"),sa=l("\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043B\u043E\u043D\u043A\u0438, \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0438\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043C\u043E\u0434\u0435\u043B\u044C \u043D\u0435 \u043F\u0440\u0438\u043D\u0438\u043C\u0430\u0435\u0442 \u043D\u0430 \u0432\u0445\u043E\u0434 (\u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, "),Ze=n("code"),ta=l("sentence1"),aa=l(" \u0438 "),es=n("code"),la=l("sentence2"),ra=l(")."),oa=c(),P=n("li"),na=l("\u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u043A\u043E\u043B\u043E\u043D\u043A\u0443 "),ss=n("code"),pa=l("label"),ia=l(" \u0432 "),ts=n("code"),ca=l("labels"),ma=l(" (\u043F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u043C\u043E\u0434\u0435\u043B\u044C \u043E\u0436\u0438\u0434\u0430\u0435\u0442 \u0430\u0440\u0433\u0443\u043C\u0435\u043D\u0442, \u043D\u0430\u0437\u0432\u0430\u043D\u043D\u044B\u0439 "),as=n("code"),da=l("labels"),ua=l(")."),fa=c(),ls=n("li"),_a=l("\u0417\u0430\u0434\u0430\u0442\u044C \u0442\u0438\u043F \u0434\u0430\u043D\u043D\u044B\u0445 \u0432 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0435 pytorch tensors \u0432\u043C\u0435\u0441\u0442\u043E \u0441\u043F\u0438\u0441\u043A\u043E\u0432."),Os=c(),U=n("p"),ha=l("\u041D\u0430\u0448 "),rs=n("code"),$a=l("tokenized_datasets"),ba=l(" \u043F\u0440\u0435\u0434\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u0442 \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0432\u0441\u0442\u0440\u043E\u0435\u043D\u043D\u044B\u0435 \u043C\u0435\u0442\u043E\u0434\u044B \u0434\u043B\u044F \u043A\u0430\u0436\u0434\u043E\u0433\u043E \u0438\u0437 \u043F\u0440\u0438\u0432\u0435\u0434\u0435\u043D\u043D\u044B\u0445 \u0432\u044B\u0448\u0435 \u0448\u0430\u0433\u043E\u0432:"),Ws=c(),d(ae.$$.fragment),Ms=c(),Te=n("p"),ka=l("\u041C\u044B \u043C\u043E\u0436\u0435\u043C \u043F\u0440\u043E\u0432\u0435\u0440\u0438\u0442\u044C, \u0447\u0442\u043E \u0432 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u0435 \u0443 \u043D\u0430\u0441 \u043F\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0442 \u0442\u043E\u043B\u044C\u043A\u043E \u0442\u0435 \u043F\u043E\u043B\u044F, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043E\u0436\u0438\u0434\u0430\u0435\u0442 \u043D\u0430\u0448\u0430 \u043C\u043E\u0434\u0435\u043B\u044C:"),Fs=c(),d(le.$$.fragment),Us=c(),Oe=n("p"),va=l("\u0422\u0435\u043F\u0435\u0440\u044C, \u043A\u043E\u0433\u0434\u0430 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0433\u043E\u0442\u043E\u0432, \u043C\u044B \u043C\u043E\u0436\u0435\u0442 \u0437\u0430\u0434\u0430\u0442\u044C dataloader:"),Ls=c(),d(re.$$.fragment),Gs=c(),We=n("p"),ja=l("\u0414\u043B\u044F \u0442\u043E\u0433\u043E, \u0447\u0442\u043E\u0431\u044B \u0443\u0431\u0435\u0434\u0438\u0442\u044C\u0441\u044F \u0432 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u043E\u0448\u0438\u0431\u043E\u043A \u0432 \u0441\u0434\u0435\u043B\u0430\u043D\u043D\u043E\u043C \u043D\u0430\u043C\u0438 \u043F\u0440\u0435\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0438\u043D\u0433\u0435, \u043C\u044B \u043C\u043E\u0436\u0435\u043C \u043F\u0440\u043E\u0432\u0435\u0440\u0438\u0442\u044C \u043E\u0434\u0438\u043D \u0431\u0430\u0442\u0447 \u0434\u0430\u043D\u043D\u044B\u0445:"),Ns=c(),d(oe.$$.fragment),Hs=c(),d(ne.$$.fragment),Is=c(),L=n("p"),wa=l("\u041E\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043D\u0438\u043C\u0430\u043D\u0438\u0435, \u0447\u0442\u043E \u0444\u0430\u043A\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u0440\u0430\u0437\u043C\u0435\u0440\u044B, \u0432\u0435\u0440\u043E\u044F\u0442\u043D\u043E, \u0431\u0443\u0434\u0443\u0442 \u043D\u0435\u043C\u043D\u043E\u0433\u043E \u043E\u0442\u043B\u0438\u0447\u0430\u0442\u044C\u0441\u044F \u0434\u043B\u044F \u0432 \u0432\u0430\u0448\u0435\u043C \u0441\u043B\u0443\u0447\u0430\u0435, \u0442\u0430\u043A \u043A\u0430\u043A \u043C\u044B \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u043B\u0438 "),os=n("code"),ga=l("shuffle=True"),za=l(" \u0434\u043B\u044F \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0435\u0433\u043E \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043A\u0430 \u0434\u0430\u043D\u043D\u044B\u0445, \u0442\u0430\u043A\u0436\u0435 \u043C\u044B \u0434\u043E\u043F\u043E\u043B\u043D\u044F\u0435\u043C (padding) \u0434\u043E \u043C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0439 \u0434\u043B\u0438\u043D\u044B \u0432\u043D\u0443\u0442\u0440\u0438 \u0431\u0430\u0442\u0447\u0430."),Rs=c(),Me=n("p"),Ea=l("\u0422\u0435\u043F\u0435\u0440\u044C \u043C\u044B \u043F\u043E\u043B\u043D\u043E\u0441\u0442\u044C\u044E \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u043B\u0438 \u044D\u0442\u0430\u043F \u043F\u0440\u0435\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0438\u043D\u0433\u0430 (\u043F\u0440\u0438\u044F\u0442\u043D\u044B\u0439, \u043D\u043E \u043D\u0435\u0443\u043B\u043E\u0432\u0438\u043C\u044B\u0439 \u043C\u043E\u043C\u0435\u043D\u0442 \u0434\u043B\u044F \u043B\u044E\u0431\u043E\u0433\u043E \u0441\u043F\u0435\u0446\u0438\u0430\u043B\u0438\u0441\u0442\u0430 \u043F\u043E \u043C\u0430\u0448\u0438\u043D\u043D\u043E\u043C\u0443 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044E), \u043F\u0435\u0440\u0435\u0439\u0434\u0435\u043C \u043A \u043C\u043E\u0434\u0435\u043B\u0438. \u041C\u044B \u0438\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0438\u0440\u0443\u0435\u043C \u0435\u0435 \u0442\u043E\u0447\u043D\u043E \u0442\u0430\u043A, \u043A\u0430\u043A \u0434\u0435\u043B\u0430\u043B\u0438 \u0432 \u043F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0435\u043C \u043F\u0440\u0438\u043C\u0435\u0440\u0435:"),Bs=c(),d(pe.$$.fragment),Js=c(),Fe=n("p"),ya=l("\u0427\u0442\u043E\u0431\u044B \u0443\u0431\u0435\u0434\u0438\u0442\u044C\u0441\u044F, \u0447\u0442\u043E \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435 \u043F\u043E\u0439\u0434\u0435\u0442 \u0433\u043B\u0430\u0434\u043A\u043E, \u0432\u044B \u043F\u043E\u0434\u0430\u0434\u0438\u043C \u043D\u0430 \u0432\u0445\u043E\u0434 \u043C\u043E\u0434\u0435\u043B\u0438 \u043E\u0434\u0438\u043D \u0431\u0430\u0442\u0447:"),Ys=c(),d(ie.$$.fragment),Qs=c(),d(ce.$$.fragment),Ks=c(),G=n("p"),qa=l("\u0412\u0441\u0435 \u043C\u043E\u0434\u0435\u043B\u0438 \u{1F917} \u0442\u0440\u0430\u043D\u0441\u0444\u043E\u0440\u043C\u0435\u0440\u043E\u0432 \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0430\u044E\u0442 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u043F\u043E\u0442\u0435\u0440\u044C, \u0435\u0441\u043B\u0438 \u0432 \u0434\u0430\u043D\u043D\u044B\u0445 \u0431\u044B\u043B\u0438 "),ns=n("code"),Aa=l("labels"),Ca=l(", \u0430 \u0442\u0430\u043A\u0436\u0435 \u043B\u043E\u0433\u0438\u0442\u044B (\u0432 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u0435 \u043F\u043E\u043B\u0443\u0447\u0430\u0435\u0442\u0441\u044F \u0442\u0435\u043D\u0437\u043E\u0440 8 \u0445 2)."),Vs=c(),z=n("p"),Pa=l("\u041C\u044B \u043F\u043E\u0447\u0442\u0438 \u0433\u043E\u0442\u043E\u0432\u044B \u043A \u043D\u0430\u043F\u0438\u0441\u0430\u043D\u0438\u044E \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0435\u0433\u043E \u0446\u0438\u043A\u043B\u0430! \u041C\u044B \u043F\u0440\u043E\u043F\u0443\u0441\u0442\u0438\u043B\u0438 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u0432\u0435 \u0432\u0435\u0449\u0438: \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0442\u043E\u0440 \u0438 \u043F\u043B\u0430\u043D\u0438\u0440\u043E\u0432\u0449\u0438\u043A \u0441\u043A\u043E\u0440\u043E\u0441\u0442\u0438 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F (learning rate scheduler). \u0412\u0432\u0438\u0434\u0443 \u0442\u043E\u0433\u043E, \u0447\u0442\u043E \u043C\u044B \u043F\u044B\u0442\u0430\u0435\u043C\u0441\u044F \u043F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u044C \u0432\u0440\u0443\u0447\u043D\u0443\u044E \u0442\u043E, \u0447\u0442\u043E \u0434\u0435\u043B\u0430\u043B \u0437\u0430 \u043D\u0430\u0441 "),ps=n("code"),Da=l("Trainer"),Sa=l(", \u043C\u044B \u0431\u0443\u0434\u0435\u043C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0442\u0430\u043A\u0438\u0435 \u0436\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E. \u041E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0442\u043E\u0440, \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u043C\u044B\u0439 \u0432 "),is=n("code"),xa=l("Trainer"),Ta=l(" - "),cs=n("code"),Oa=l("AdamW"),Wa=l(", \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u043F\u043E\u0447\u0442\u0438 \u043F\u043E\u043B\u043D\u043E\u0439 \u043A\u043E\u043F\u0438\u0435\u0439 Adam, \u0437\u0430 \u0438\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u043C \u0442\u0440\u044E\u043A\u0430 \u0441 \u0441\u043E\u043A\u0440\u0430\u0449\u0435\u043D\u0438\u0435\u043C \u0432\u0435\u0441\u043E\u0432 (\u0434\u0430\u043B\u0435\u0435 - weight decay) (\u0441\u043C. "),me=n("a"),Ma=l("\u201CDecoupled Weight Decay Regularization\u201D"),Fa=l(" \u0437\u0430 \u0430\u0432\u0442\u043E\u0440\u0441\u0442\u0432\u043E\u043C Ilya Loshchilov \u0438 Frank Hutter)."),Xs=c(),d(de.$$.fragment),Zs=c(),N=n("p"),Ua=l("\u041D\u0430\u043A\u043E\u043D\u0435\u0446, \u043F\u043B\u0430\u043D\u0438\u0440\u043E\u0432\u0449\u0438\u043A \u0441\u043A\u043E\u0440\u043E\u0441\u0442\u0438 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E - \u043F\u0440\u043E\u0441\u0442\u043E \u043B\u0438\u043D\u0435\u0439\u043D\u043E\u0435 \u0443\u043C\u0435\u043D\u044C\u0448\u0435\u043D\u0438\u0435 \u0432\u0435\u0441\u043E\u0432 \u0441 \u043C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F (5e-5) \u0434\u043E 0. \u0427\u0442\u043E\u0431\u044B \u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u043E \u0437\u0430\u0434\u0430\u0442\u044C \u0435\u0433\u043E, \u043D\u0430\u043C \u043D\u0443\u0436\u043D\u043E \u0437\u043D\u0430\u0442\u044C \u0447\u0438\u0441\u043B\u043E \u0448\u0430\u0433\u043E\u0432 \u0432 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0438, \u043A\u043E\u0442\u043E\u0440\u043E\u0435 \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044F \u043A\u0430\u043A \u043F\u0440\u043E\u0438\u0437\u0432\u0435\u0434\u0435\u043D\u0438\u0435 \u0447\u0438\u0441\u043B\u0430 \u044D\u043F\u043E\u0445 \u0438 \u0447\u0438\u0441\u043B\u0430 \u0431\u0430\u0442\u0447\u0435\u0439 (\u0434\u043B\u0438\u043D\u044B \u043D\u0430\u0448\u0435\u0433\u043E \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043A\u0430 \u0434\u0430\u043D\u043D\u044B\u0445). \u0427\u0438\u0441\u043B\u043E \u044D\u043F\u043E\u0445 \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E \u0432 "),ms=n("code"),La=l("Trainer"),Ga=l(" \u0440\u0430\u0432\u043D\u043E 3, \u0442\u0430\u043A \u0436\u0435 \u043C\u044B \u0437\u0430\u0434\u0430\u0434\u0438\u043C \u0435\u0433\u043E \u0438 \u0441\u0435\u0439\u0447\u0430\u0441:"),et=c(),d(ue.$$.fragment),st=c(),d(fe.$$.fragment),tt=c(),_e=n("h3"),Na=l("\u041E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B\u0430"),at=c(),H=n("p"),Ha=l("\u041F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0439 \u043C\u043E\u043C\u0435\u043D\u0442: \u043C\u044B \u0445\u043E\u0442\u0438\u043C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C GPU \u0432 \u0441\u043B\u0443\u0447\u0430\u0435, \u0435\u0441\u043B\u0438 \u0443 \u043D\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043A\u0430\u044F \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044C (\u043D\u0430 CPU \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u043C\u043E\u0436\u0435\u0442 \u0437\u0430\u043D\u044F\u0442\u044C \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0447\u0430\u0441\u043E\u0432 \u0432\u043C\u0435\u0441\u0442\u043E \u043F\u0430\u0440\u044B \u043C\u0438\u043D\u0443\u0442). \u0427\u0442\u043E\u0431\u044B \u0434\u043E\u0431\u0438\u0442\u044C\u0441\u044F \u044D\u0442\u043E\u0433\u043E, \u043C\u044B \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u043C \u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u0443\u044E "),ds=n("code"),Ia=l("device"),Ra=l(" \u0438 \xAB\u043F\u0440\u0438\u043A\u0440\u0435\u043F\u0438\u043C\xBB \u043A \u0432\u0438\u0434\u0435\u043E\u043A\u0430\u0440\u0442\u0435 \u043D\u0430\u0448\u0443 \u043C\u043E\u0434\u0435\u043B\u044C \u0438 \u0434\u0430\u043D\u043D\u044B\u0435:"),lt=c(),d(he.$$.fragment),rt=c(),d($e.$$.fragment),ot=c(),Ue=n("p"),Ba=l("\u0422\u0435\u043F\u0435\u0440\u044C \u043C\u044B \u0433\u043E\u0442\u043E\u0432\u044B \u043A \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044E \u043C\u043E\u0434\u0435\u043B\u0438! \u0427\u0442\u043E\u0431\u044B \u0438\u043C\u0435\u0442\u044C \u043F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043E \u0442\u043E\u043C, \u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0432\u0440\u0435\u043C\u0435\u043D\u0438 \u044D\u0442\u043E \u043C\u043E\u0436\u0435\u0442 \u0437\u0430\u043D\u044F\u0442\u044C, \u043C\u044B \u0434\u043E\u0431\u0430\u0432\u0438\u043C \u043F\u0440\u043E\u0433\u0440\u0435\u0441\u0441-\u0431\u0430\u0440, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u0431\u0443\u0434\u0435\u0442 \u0438\u043B\u043B\u044E\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u0442\u044C, \u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0448\u0430\u0433\u043E\u0432 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u0443\u0436\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u043E. \u042D\u0442\u043E \u043C\u043E\u0436\u043D\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0441 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u043C \u0431\u0438\u0431\u0438\u043B\u0438\u043E\u0442\u0435\u043A\u0438 tqdm:"),nt=c(),d(be.$$.fragment),pt=c(),Le=n("p"),Ja=l("\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0437\u0430\u043C\u0435\u0442\u0438\u0442\u044C, \u0447\u0442\u043E \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u0432\u044B\u0433\u043B\u044F\u0434\u0438\u0442 \u043E\u0447\u0435\u043D\u044C \u043F\u043E\u0445\u043E\u0436\u0438\u043C \u043D\u0430 \u0442\u043E, \u043A\u0430\u043A \u043E\u043D \u0432\u044B\u0433\u043B\u044F\u0434\u0435\u043B \u0432 \u043D\u0430\u0448\u0438\u0445 \u043F\u0435\u0440\u0432\u044B\u0445 \u043F\u0440\u0438\u043C\u0435\u0440\u0430\u0445. \u041C\u044B \u043D\u0435 \u0443\u043A\u0430\u0437\u044B\u0432\u0430\u043B\u0438 \u043C\u043E\u0434\u0435\u043B\u0438, \u0447\u0442\u043E\u0431\u044B \u043E\u043D\u0430 \u043D\u0430\u043C \u0447\u0442\u043E-\u0442\u043E \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0430\u043B\u0430 \u0432 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F. \u0414\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u043C\u044B \u0434\u043E\u0431\u0430\u0432\u0438\u043C \u0446\u0438\u043A\u043B \u0432\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u0438."),it=c(),ke=n("h3"),Ya=l("\u0412\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0439 \u0446\u0438\u043A\u043B"),ct=c(),q=n("p"),Qa=l("\u0420\u0430\u043D\u0435\u0435 \u043C\u044B \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043B\u0438 \u043C\u0435\u0442\u0440\u0438\u043A\u0443, \u043A\u043E\u0442\u043E\u0440\u0443\u044E \u043D\u0430\u043C \u043F\u0440\u0435\u0434\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u043B\u0430 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430 \u{1F917} Datasets. \u041C\u044B \u0443\u0436\u0435 \u0437\u043D\u0430\u0435\u043C, \u0447\u0442\u043E \u0435\u0441\u0442\u044C \u043C\u0435\u0442\u043E\u0434 "),us=n("code"),Ka=l("metric.compute()"),Va=l(", \u043E\u0434\u043D\u0430\u043A\u043E \u043C\u0435\u0442\u0440\u0438\u043A\u0438 \u043C\u043E\u0433\u0443\u0442 \u043D\u0430\u043A\u0430\u043F\u043B\u0438\u0432\u0430\u0442\u044C \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u0432 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435 \u0438\u0442\u0435\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u043F\u043E \u0431\u0430\u0442\u0447\u0443, \u0434\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u0435\u0441\u0442\u044C \u043C\u0435\u0442\u043E\u0434 "),fs=n("code"),Xa=l("add_batch()"),Za=l(". \u041F\u043E\u0441\u043B\u0435 \u0442\u043E\u0433\u043E, \u043A\u0430\u043A \u043C\u044B \u043F\u0440\u043E\u0439\u0434\u0435\u043C\u0441\u044F \u043F\u043E \u0432\u0441\u0435\u043C \u0431\u0430\u0442\u0447\u0430\u043C, \u043C\u044B \u0441\u043C\u043E\u0436\u0435\u043C \u0432\u044B\u0447\u0438\u0441\u043B\u0438\u0442\u044C \u0444\u0438\u043D\u0430\u043B\u044C\u043D\u044B\u0439 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E "),_s=n("code"),el=l("metric.compute()"),sl=l(". \u0412\u043E\u0442 \u043F\u0440\u0438\u043C\u0435\u0440 \u0442\u043E\u0433\u043E, \u043A\u0430\u043A \u044D\u0442\u043E \u043C\u043E\u0436\u043D\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0432 \u0446\u0438\u043A\u043B\u0435 \u0432\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u0438:"),mt=c(),d(ve.$$.fragment),dt=c(),d(je.$$.fragment),ut=c(),Ge=n("p"),tl=l("\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u043C: \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u044B, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u0435 \u0432\u044B, \u043C\u043E\u0433\u0443\u0442 \u043D\u0435\u043C\u043D\u043E\u0433\u043E \u043E\u0442\u043B\u0438\u0447\u0430\u0442\u044C\u0441\u044F \u0438\u0437-\u0437\u0430 \u043D\u0430\u043B\u0438\u0447\u0438\u044F \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u043E\u0441\u0442\u0435\u0439 \u043F\u0440\u0438 \u0438\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432 \u0441\u043B\u043E\u044F \u043C\u043E\u0434\u0435\u043B\u0438 \u0438 \u0438\u0437-\u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u043E\u0433\u043E \u043F\u0435\u0440\u0435\u043C\u0435\u0448\u0438\u0432\u0430\u043D\u0438\u044F \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043E\u0434\u043D\u0430\u043A\u043E \u0438\u0445 \u043F\u043E\u0440\u044F\u0434\u043E\u043A \u0434\u043E\u043B\u0436\u0435\u043D \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u0442\u044C."),ft=c(),d(I.$$.fragment),_t=c(),W=n("h3"),R=n("a"),hs=n("span"),d(we.$$.fragment),al=c(),$s=n("span"),ll=l("\u0423\u0441\u043A\u043E\u0440\u0435\u043D\u0438\u0435 \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0435\u0433\u043E \u0446\u0438\u043A\u043B\u0430 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u{1F917} Accelerate"),ht=c(),d(ge.$$.fragment),$t=c(),B=n("p"),rl=l("\u041E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B, \u0437\u0430\u0434\u0430\u043D\u043D\u044B\u0439 \u0432\u044B\u0448\u0435, \u043E\u0442\u043B\u0438\u0447\u043D\u043E \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442 \u043D\u0430 \u043E\u0434\u043D\u043E\u043C GPU \u0438\u043B\u0438 CPU. \u041E\u0434\u043D\u0430\u043A\u043E \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0438 "),ze=n("a"),ol=l("\u{1F917} Accelerate"),nl=l(" \u043F\u043E\u0437\u0432\u043E\u043B\u044F\u0435\u0442 \u0441 \u043D\u0435\u0431\u043E\u043B\u044C\u0448\u0438\u043C\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F\u043C\u0438 \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u044D\u0442\u0443 \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u0443 \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0439 \u043D\u0430 \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E GPU \u0438\u043B\u0438 TPU. \u041D\u0430\u0447\u0438\u0438\u043D\u0430\u044F \u0441 \u043C\u043E\u043C\u0435\u043D\u0442\u0430 \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0445 \u0438 \u0432\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0445 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043A\u043E\u0432 \u0434\u0430\u043D\u043D\u044B\u0445, \u043D\u0430\u0448 \xAB\u0440\u0443\u0447\u043D\u043E\u0439\xBB \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B \u0432\u044B\u0433\u043B\u044F\u0434\u0438\u0442 \u0442\u0430\u043A:"),bt=c(),d(Ee.$$.fragment),kt=c(),Ne=n("p"),pl=l("\u0410 \u0432\u043E\u0442 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043D\u0443\u0436\u043D\u043E \u0432\u043D\u0435\u0441\u0442\u0438, \u0447\u0442\u043E\u0431\u044B \u0443\u0441\u043A\u043E\u0440\u0438\u0442\u044C \u043F\u0440\u043E\u0446\u0435\u0441\u0441:"),vt=c(),d(ye.$$.fragment),jt=c(),A=n("p"),il=l("\u041F\u0435\u0440\u0432\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430 \u2013 \u044D\u0442\u043E \u0441\u0442\u0440\u043E\u043A\u0430 \u0438\u043C\u043F\u043E\u0440\u0442\u0430 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0438. \u0412\u0442\u043E\u0440\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430 \u0438\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u043E\u0431\u044A\u0435\u043A\u0442 "),bs=n("code"),cl=l("Accelerator"),ml=l(`, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u043F\u0440\u043E\u0430\u043D\u0430\u043B\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u043E\u043A\u0440\u0443\u0436\u0435\u043D\u0438\u0435 \u0438 \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u0442 \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u044B\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438. \u{1F917} Accelerate \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u043E\u0435 \u043E\u0431\u043E\u0440\u0443\u0434\u043E\u0432\u0430\u043D\u0438\u0435, \u043F\u043E\u044D\u0442\u043E\u043C\u0443 \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0438, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \xAB\u043F\u0440\u0438\u043A\u0440\u0435\u043F\u043B\u044F\u044E\u0442\xBB
\u043C\u043E\u0434\u0435\u043B\u044C \u0438 \u0434\u0430\u043D\u043D\u044B\u0435 \u043A \u0432\u0438\u0434\u0435\u043E\u043A\u0430\u0440\u0442\u0435 (\u0438\u043B\u0438, \u0435\u0441\u043B\u0438 \u0432\u0430\u043C \u0442\u0430\u043A \u0443\u0434\u043E\u0431\u043D\u0435\u0435, \u043C\u043E\u0436\u0435\u0442\u0435 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0438\u0445 \u043D\u0430 `),ks=n("code"),dl=l("accelerator.device"),ul=l(" \u0432\u043C\u0435\u0441\u0442\u043E \u043F\u0440\u043E\u0441\u0442\u043E "),vs=n("code"),fl=l("device"),_l=l(")."),wt=c(),v=n("p"),hl=l("\u0414\u0430\u043B\u0435\u0435 \u0433\u043B\u0430\u0432\u043D\u0430\u044F \u0447\u0430\u0441\u0442\u044C \u0440\u0430\u0431\u043E\u0442\u044B \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u0432 \u0441\u0442\u0440\u043E\u043A\u0435, \u043A\u043E\u0442\u043E\u0440\u0430\u044F \u043E\u0442\u043F\u0440\u0430\u0432\u043B\u044F\u0435\u0442 \u0434\u0430\u043D\u043D\u044B\u0435, \u043C\u043E\u0434\u0435\u043B\u044C \u0438 \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0442\u043E\u0440 \u043D\u0430 "),js=n("code"),$l=l("accelerator.prepare()"),bl=l(". \u042D\u0442\u043E\u0442 \u043C\u0435\u0442\u043E\u0434 \xAB\u043E\u0431\u0435\u0440\u043D\u0435\u0442\xBB \u0432\u0430\u0448\u0438 \u043E\u0431\u044A\u0435\u043A\u0442\u044B \u0432 \u043A\u043E\u043D\u0442\u0435\u0439\u043D\u0435\u0440 \u0438 \u0443\u0431\u0435\u0434\u0438\u0442\u0441\u044F, \u0447\u0442\u043E \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u043E. \u041E\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044F \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u2013 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0435 \u0441\u0442\u0440\u043E\u043A\u0438, \u043A\u043E\u0442\u043E\u0440\u0430\u044F \u043E\u0442\u043F\u0440\u0430\u0432\u043B\u044F\u0435\u0442 \u0431\u0430\u0442\u0447 \u043D\u0430 "),ws=n("code"),kl=l("device"),vl=l(" (\u043F\u043E\u0432\u0442\u043E\u0440\u0438\u043C: \u0435\u0441\u043B\u0438 \u0432\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u044D\u0442\u0443 \u0441\u0442\u0440\u043E\u043A\u0443, \u0437\u0430\u043C\u0435\u043D\u0438\u0442\u0435 "),gs=n("code"),jl=l("device"),wl=l(" \u043D\u0430 "),zs=n("code"),gl=l("accelerator.device"),zl=l(") \u0438 \u0437\u0430\u043C\u0435\u043D\u0438\u0442\u0435 "),Es=n("code"),El=l("loss.backward()"),yl=l(" \u043D\u0430 "),ys=n("code"),ql=l("accelerator.backward(loss)"),Al=l("."),gt=c(),d(J.$$.fragment),zt=c(),He=n("p"),Cl=l("\u0415\u0441\u043B\u0438 \u0432\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u0441\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0438 \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u043A\u043E\u0434, \u044D\u0442\u043E \u043F\u043E\u043B\u043D\u0430\u044F \u0432\u0435\u0440\u0441\u0438\u044F \u0441 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u043C \u{1F917} Accelerate:"),Et=c(),d(qe.$$.fragment),yt=c(),Y=n("p"),Pl=l("\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u044D\u0442\u043E\u0433\u043E \u0432 \u0441\u043A\u0440\u0438\u043F\u0442 "),qs=n("code"),Dl=l("train.py"),Sl=l(" \u0441\u0434\u0435\u043B\u0430\u0435\u0442 \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u0443\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u044B\u043C \u0434\u043B\u044F \u043B\u044E\u0431\u043E\u0439 \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u044B. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u0435\u0433\u043E \u043D\u0430 \u0432\u0430\u0448\u0435\u0439 \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u0435:"),qt=c(),d(Ae.$$.fragment),At=c(),Ie=n("p"),xl=l("\u044D\u0442\u0430 \u0441\u0442\u0440\u043E\u043A\u0430 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0438\u0442 \u0432\u0430\u043C \u043E\u0442\u0432\u0435\u0442\u0438\u0442\u044C \u043D\u0430 \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0432\u043E\u043F\u0440\u043E\u0441\u043E\u0432 \u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442 \u0432\u0430\u0448\u0438 \u043E\u0442\u0432\u0435\u0442\u044B \u0432 \u043A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0439 \u0444\u0430\u0439\u043B, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u043F\u0440\u0438 \u0432\u044B\u0437\u043E\u0432\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u044B:"),Ct=c(),Re=n("p"),Tl=l("which will prompt you to answer a few questions and dump your answers in a configuration file used by this command:"),Pt=c(),d(Ce.$$.fragment),Dt=c(),Be=n("p"),Ol=l("\u0437\u0430\u043F\u0443\u0441\u043A\u0430\u044E\u0449\u0435\u0439 \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435."),St=c(),Q=n("p"),Wl=l("\u0415\u0441\u043B\u0438 \u0432\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u043F\u043E\u043F\u0440\u043E\u0431\u043E\u0432\u0430\u0442\u044C \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u043A\u043E\u0434 \u0432 Jupyter Notebook (\u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, \u043F\u0440\u043E\u0442\u0435\u0441\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0435\u0433\u043E \u0441 TPU \u043D\u0430 Google Colab), \u043F\u0440\u043E\u0441\u0442\u043E \u0432\u0441\u0442\u0430\u0432\u044C\u0442\u0435 \u043A\u043E\u0434 \u0432 "),As=n("code"),Ml=l("training_function()"),Fl=l(" \u0438 \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u0435 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u044E\u044E \u044F\u0447\u0435\u0439\u043A\u0443:"),xt=c(),d(Pe.$$.fragment),Tt=c(),K=n("p"),Ul=l("\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 \u0431\u043E\u043B\u044C\u0448\u0435 \u043F\u0440\u0438\u043C\u0435\u0440\u043E\u0432 \u0432 \u0440\u0435\u043F\u043E\u0437\u0438\u0442\u043E\u0440\u0438\u0438 "),De=n("a"),Ll=l("\u{1F917} Accelerate repo"),Gl=l("."),this.h()},l(e){const a=Br('[data-svelte="svelte-1phssyn"]',document.head);b=p(a,"META",{name:!0,content:!0}),a.forEach(s),g=m(e),w=p(e,"H1",{id:!0});var Cs=i(w);ee=r(Cs,"\u041F\u043E\u043B\u043D\u043E\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435"),Cs.forEach(s),M=m(e),u(y.$$.fragment,e),C=m(e),u(D.$$.fragment,e),Ps=m(e),F=p(e,"P",{});var Se=i(F);Bt=r(Se,"\u0422\u0435\u043F\u0435\u0440\u044C \u043C\u044B \u043F\u043E\u0441\u043C\u043E\u0442\u0440\u0438\u043C, \u043A\u0430\u043A \u0434\u043E\u0441\u0442\u0438\u0447\u044C \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u043E\u0432 \u0438\u0437 \u043F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0435\u0439 \u0433\u043B\u0430\u0432\u044B \u0431\u0435\u0437 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F \u043A\u043B\u0430\u0441\u0441\u0430 "),Ke=p(Se,"CODE",{});var Nl=i(Ke);Jt=r(Nl,"Trainer"),Nl.forEach(s),Yt=r(Se,". \u0412 \u044D\u0442\u043E\u0439 \u0433\u043B\u0430\u0432\u0435 \u043C\u044B \u043F\u0440\u0435\u0434\u043F\u043E\u043B\u0430\u0433\u0430\u0435\u043C, \u0447\u0442\u043E \u0432\u044B \u0432\u044B\u043F\u043E\u043B\u043D\u0438\u043B\u0438 \u044D\u0442\u0430\u043F\u044B \u043F\u0440\u0435\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0438\u043D\u0433\u0430 \u0440\u0430\u0437\u0434\u0435\u043B\u0430 2. \u041D\u0438\u0436\u0435 \u043A\u043E\u0440\u043E\u0442\u043A\u0430\u044F \u0432\u044B\u0436\u0438\u043C\u043A\u0430 \u0442\u043E\u0433\u043E, \u0447\u0442\u043E \u0432\u0430\u043C \u043F\u043E\u043D\u0430\u0434\u043E\u0431\u0438\u0442\u0441\u044F:"),Se.forEach(s),Ds=m(e),u(se.$$.fragment,e),Ss=m(e),te=p(e,"H3",{id:!0});var Hl=i(te);Qt=r(Hl,"\u041F\u043E\u0434\u0433\u043E\u0442\u043E\u0432\u043A\u0430 \u043A \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044E"),Hl.forEach(s),xs=m(e),S=p(e,"P",{});var Je=i(S);Kt=r(Je,"\u041F\u0435\u0440\u0435\u0434 \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0446\u0438\u043A\u043B\u0430 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0437\u0430\u0434\u0430\u0442\u044C \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u043E\u0431\u044A\u0435\u043A\u0442\u043E\u0432. \u041F\u0435\u0440\u0432\u044B\u0439: \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043A\u0438 \u0434\u0430\u043D\u043D\u044B\u0445 (\u0434\u0430\u043B\u0435\u0435 - dataloaders), \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043C\u044B \u0431\u0443\u0434\u0435\u043C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0434\u043B\u044F \u0438\u0442\u0435\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u043F\u043E \u0431\u0430\u0442\u0447\u0430\u043C \u0434\u0430\u043D\u043D\u044B\u0445. \u041F\u0435\u0440\u0435\u0434 \u044D\u0442\u0438\u043C \u043D\u0430\u043C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u043F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0439 \u043F\u043E\u0441\u0442\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0438\u043D\u0433\u0430 \u043A \u043D\u0430\u0448\u0435\u043C\u0443 "),Ve=p(Je,"CODE",{});var Il=i(Ve);Vt=r(Il,"tokenized_datasets"),Il.forEach(s),Xt=r(Je,". \u042D\u0442\u043E \u043D\u0443\u0436\u043D\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C: \u0432 \u043F\u0440\u043E\u0448\u043B\u044B\u0439 \u0440\u0430\u0437 \u0437\u0430 \u043D\u0430\u0441 \u044D\u0442\u043E \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438 \u0434\u0435\u043B\u0430\u043B "),Xe=p(Je,"CODE",{});var Rl=i(Xe);Zt=r(Rl,"Trainer"),Rl.forEach(s),ea=r(Je,". \u041D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0435:"),Je.forEach(s),Ts=m(e),x=p(e,"UL",{});var Ye=i(x);O=p(Ye,"LI",{});var Qe=i(O);sa=r(Qe,"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043B\u043E\u043D\u043A\u0438, \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0438\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043C\u043E\u0434\u0435\u043B\u044C \u043D\u0435 \u043F\u0440\u0438\u043D\u0438\u043C\u0430\u0435\u0442 \u043D\u0430 \u0432\u0445\u043E\u0434 (\u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, "),Ze=p(Qe,"CODE",{});var Bl=i(Ze);ta=r(Bl,"sentence1"),Bl.forEach(s),aa=r(Qe," \u0438 "),es=p(Qe,"CODE",{});var Jl=i(es);la=r(Jl,"sentence2"),Jl.forEach(s),ra=r(Qe,")."),Qe.forEach(s),oa=m(Ye),P=p(Ye,"LI",{});var V=i(P);na=r(V,"\u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u043A\u043E\u043B\u043E\u043D\u043A\u0443 "),ss=p(V,"CODE",{});var Yl=i(ss);pa=r(Yl,"label"),Yl.forEach(s),ia=r(V," \u0432 "),ts=p(V,"CODE",{});var Ql=i(ts);ca=r(Ql,"labels"),Ql.forEach(s),ma=r(V," (\u043F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u043C\u043E\u0434\u0435\u043B\u044C \u043E\u0436\u0438\u0434\u0430\u0435\u0442 \u0430\u0440\u0433\u0443\u043C\u0435\u043D\u0442, \u043D\u0430\u0437\u0432\u0430\u043D\u043D\u044B\u0439 "),as=p(V,"CODE",{});var Kl=i(as);da=r(Kl,"labels"),Kl.forEach(s),ua=r(V,")."),V.forEach(s),fa=m(Ye),ls=p(Ye,"LI",{});var Vl=i(ls);_a=r(Vl,"\u0417\u0430\u0434\u0430\u0442\u044C \u0442\u0438\u043F \u0434\u0430\u043D\u043D\u044B\u0445 \u0432 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0435 pytorch tensors \u0432\u043C\u0435\u0441\u0442\u043E \u0441\u043F\u0438\u0441\u043A\u043E\u0432."),Vl.forEach(s),Ye.forEach(s),Os=m(e),U=p(e,"P",{});var Wt=i(U);ha=r(Wt,"\u041D\u0430\u0448 "),rs=p(Wt,"CODE",{});var Xl=i(rs);$a=r(Xl,"tokenized_datasets"),Xl.forEach(s),ba=r(Wt," \u043F\u0440\u0435\u0434\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u0442 \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0432\u0441\u0442\u0440\u043E\u0435\u043D\u043D\u044B\u0435 \u043C\u0435\u0442\u043E\u0434\u044B \u0434\u043B\u044F \u043A\u0430\u0436\u0434\u043E\u0433\u043E \u0438\u0437 \u043F\u0440\u0438\u0432\u0435\u0434\u0435\u043D\u043D\u044B\u0445 \u0432\u044B\u0448\u0435 \u0448\u0430\u0433\u043E\u0432:"),Wt.forEach(s),Ws=m(e),u(ae.$$.fragment,e),Ms=m(e),Te=p(e,"P",{});var Zl=i(Te);ka=r(Zl,"\u041C\u044B \u043C\u043E\u0436\u0435\u043C \u043F\u0440\u043E\u0432\u0435\u0440\u0438\u0442\u044C, \u0447\u0442\u043E \u0432 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u0435 \u0443 \u043D\u0430\u0441 \u043F\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0442 \u0442\u043E\u043B\u044C\u043A\u043E \u0442\u0435 \u043F\u043E\u043B\u044F, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043E\u0436\u0438\u0434\u0430\u0435\u0442 \u043D\u0430\u0448\u0430 \u043C\u043E\u0434\u0435\u043B\u044C:"),Zl.forEach(s),Fs=m(e),u(le.$$.fragment,e),Us=m(e),Oe=p(e,"P",{});var er=i(Oe);va=r(er,"\u0422\u0435\u043F\u0435\u0440\u044C, \u043A\u043E\u0433\u0434\u0430 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0433\u043E\u0442\u043E\u0432, \u043C\u044B \u043C\u043E\u0436\u0435\u0442 \u0437\u0430\u0434\u0430\u0442\u044C dataloader:"),er.forEach(s),Ls=m(e),u(re.$$.fragment,e),Gs=m(e),We=p(e,"P",{});var sr=i(We);ja=r(sr,"\u0414\u043B\u044F \u0442\u043E\u0433\u043E, \u0447\u0442\u043E\u0431\u044B \u0443\u0431\u0435\u0434\u0438\u0442\u044C\u0441\u044F \u0432 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u043E\u0448\u0438\u0431\u043E\u043A \u0432 \u0441\u0434\u0435\u043B\u0430\u043D\u043D\u043E\u043C \u043D\u0430\u043C\u0438 \u043F\u0440\u0435\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0438\u043D\u0433\u0435, \u043C\u044B \u043C\u043E\u0436\u0435\u043C \u043F\u0440\u043E\u0432\u0435\u0440\u0438\u0442\u044C \u043E\u0434\u0438\u043D \u0431\u0430\u0442\u0447 \u0434\u0430\u043D\u043D\u044B\u0445:"),sr.forEach(s),Ns=m(e),u(oe.$$.fragment,e),Hs=m(e),u(ne.$$.fragment,e),Is=m(e),L=p(e,"P",{});var Mt=i(L);wa=r(Mt,"\u041E\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043D\u0438\u043C\u0430\u043D\u0438\u0435, \u0447\u0442\u043E \u0444\u0430\u043A\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u0440\u0430\u0437\u043C\u0435\u0440\u044B, \u0432\u0435\u0440\u043E\u044F\u0442\u043D\u043E, \u0431\u0443\u0434\u0443\u0442 \u043D\u0435\u043C\u043D\u043E\u0433\u043E \u043E\u0442\u043B\u0438\u0447\u0430\u0442\u044C\u0441\u044F \u0434\u043B\u044F \u0432 \u0432\u0430\u0448\u0435\u043C \u0441\u043B\u0443\u0447\u0430\u0435, \u0442\u0430\u043A \u043A\u0430\u043A \u043C\u044B \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u043B\u0438 "),os=p(Mt,"CODE",{});var tr=i(os);ga=r(tr,"shuffle=True"),tr.forEach(s),za=r(Mt," \u0434\u043B\u044F \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0435\u0433\u043E \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043A\u0430 \u0434\u0430\u043D\u043D\u044B\u0445, \u0442\u0430\u043A\u0436\u0435 \u043C\u044B \u0434\u043E\u043F\u043E\u043B\u043D\u044F\u0435\u043C (padding) \u0434\u043E \u043C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0439 \u0434\u043B\u0438\u043D\u044B \u0432\u043D\u0443\u0442\u0440\u0438 \u0431\u0430\u0442\u0447\u0430."),Mt.forEach(s),Rs=m(e),Me=p(e,"P",{});var ar=i(Me);Ea=r(ar,"\u0422\u0435\u043F\u0435\u0440\u044C \u043C\u044B \u043F\u043E\u043B\u043D\u043E\u0441\u0442\u044C\u044E \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u043B\u0438 \u044D\u0442\u0430\u043F \u043F\u0440\u0435\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0438\u043D\u0433\u0430 (\u043F\u0440\u0438\u044F\u0442\u043D\u044B\u0439, \u043D\u043E \u043D\u0435\u0443\u043B\u043E\u0432\u0438\u043C\u044B\u0439 \u043C\u043E\u043C\u0435\u043D\u0442 \u0434\u043B\u044F \u043B\u044E\u0431\u043E\u0433\u043E \u0441\u043F\u0435\u0446\u0438\u0430\u043B\u0438\u0441\u0442\u0430 \u043F\u043E \u043C\u0430\u0448\u0438\u043D\u043D\u043E\u043C\u0443 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044E), \u043F\u0435\u0440\u0435\u0439\u0434\u0435\u043C \u043A \u043C\u043E\u0434\u0435\u043B\u0438. \u041C\u044B \u0438\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0438\u0440\u0443\u0435\u043C \u0435\u0435 \u0442\u043E\u0447\u043D\u043E \u0442\u0430\u043A, \u043A\u0430\u043A \u0434\u0435\u043B\u0430\u043B\u0438 \u0432 \u043F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0435\u043C \u043F\u0440\u0438\u043C\u0435\u0440\u0435:"),ar.forEach(s),Bs=m(e),u(pe.$$.fragment,e),Js=m(e),Fe=p(e,"P",{});var lr=i(Fe);ya=r(lr,"\u0427\u0442\u043E\u0431\u044B \u0443\u0431\u0435\u0434\u0438\u0442\u044C\u0441\u044F, \u0447\u0442\u043E \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435 \u043F\u043E\u0439\u0434\u0435\u0442 \u0433\u043B\u0430\u0434\u043A\u043E, \u0432\u044B \u043F\u043E\u0434\u0430\u0434\u0438\u043C \u043D\u0430 \u0432\u0445\u043E\u0434 \u043C\u043E\u0434\u0435\u043B\u0438 \u043E\u0434\u0438\u043D \u0431\u0430\u0442\u0447:"),lr.forEach(s),Ys=m(e),u(ie.$$.fragment,e),Qs=m(e),u(ce.$$.fragment,e),Ks=m(e),G=p(e,"P",{});var Ft=i(G);qa=r(Ft,"\u0412\u0441\u0435 \u043C\u043E\u0434\u0435\u043B\u0438 \u{1F917} \u0442\u0440\u0430\u043D\u0441\u0444\u043E\u0440\u043C\u0435\u0440\u043E\u0432 \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0430\u044E\u0442 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u043F\u043E\u0442\u0435\u0440\u044C, \u0435\u0441\u043B\u0438 \u0432 \u0434\u0430\u043D\u043D\u044B\u0445 \u0431\u044B\u043B\u0438 "),ns=p(Ft,"CODE",{});var rr=i(ns);Aa=r(rr,"labels"),rr.forEach(s),Ca=r(Ft,", \u0430 \u0442\u0430\u043A\u0436\u0435 \u043B\u043E\u0433\u0438\u0442\u044B (\u0432 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u0435 \u043F\u043E\u043B\u0443\u0447\u0430\u0435\u0442\u0441\u044F \u0442\u0435\u043D\u0437\u043E\u0440 8 \u0445 2)."),Ft.forEach(s),Vs=m(e),z=p(e,"P",{});var T=i(z);Pa=r(T,"\u041C\u044B \u043F\u043E\u0447\u0442\u0438 \u0433\u043E\u0442\u043E\u0432\u044B \u043A \u043D\u0430\u043F\u0438\u0441\u0430\u043D\u0438\u044E \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0435\u0433\u043E \u0446\u0438\u043A\u043B\u0430! \u041C\u044B \u043F\u0440\u043E\u043F\u0443\u0441\u0442\u0438\u043B\u0438 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u0432\u0435 \u0432\u0435\u0449\u0438: \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0442\u043E\u0440 \u0438 \u043F\u043B\u0430\u043D\u0438\u0440\u043E\u0432\u0449\u0438\u043A \u0441\u043A\u043E\u0440\u043E\u0441\u0442\u0438 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F (learning rate scheduler). \u0412\u0432\u0438\u0434\u0443 \u0442\u043E\u0433\u043E, \u0447\u0442\u043E \u043C\u044B \u043F\u044B\u0442\u0430\u0435\u043C\u0441\u044F \u043F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u044C \u0432\u0440\u0443\u0447\u043D\u0443\u044E \u0442\u043E, \u0447\u0442\u043E \u0434\u0435\u043B\u0430\u043B \u0437\u0430 \u043D\u0430\u0441 "),ps=p(T,"CODE",{});var or=i(ps);Da=r(or,"Trainer"),or.forEach(s),Sa=r(T,", \u043C\u044B \u0431\u0443\u0434\u0435\u043C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0442\u0430\u043A\u0438\u0435 \u0436\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E. \u041E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0442\u043E\u0440, \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u043C\u044B\u0439 \u0432 "),is=p(T,"CODE",{});var nr=i(is);xa=r(nr,"Trainer"),nr.forEach(s),Ta=r(T," - "),cs=p(T,"CODE",{});var pr=i(cs);Oa=r(pr,"AdamW"),pr.forEach(s),Wa=r(T,", \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u043F\u043E\u0447\u0442\u0438 \u043F\u043E\u043B\u043D\u043E\u0439 \u043A\u043E\u043F\u0438\u0435\u0439 Adam, \u0437\u0430 \u0438\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u043C \u0442\u0440\u044E\u043A\u0430 \u0441 \u0441\u043E\u043A\u0440\u0430\u0449\u0435\u043D\u0438\u0435\u043C \u0432\u0435\u0441\u043E\u0432 (\u0434\u0430\u043B\u0435\u0435 - weight decay) (\u0441\u043C. "),me=p(T,"A",{href:!0,rel:!0});var ir=i(me);Ma=r(ir,"\u201CDecoupled Weight Decay Regularization\u201D"),ir.forEach(s),Fa=r(T," \u0437\u0430 \u0430\u0432\u0442\u043E\u0440\u0441\u0442\u0432\u043E\u043C Ilya Loshchilov \u0438 Frank Hutter)."),T.forEach(s),Xs=m(e),u(de.$$.fragment,e),Zs=m(e),N=p(e,"P",{});var Ut=i(N);Ua=r(Ut,"\u041D\u0430\u043A\u043E\u043D\u0435\u0446, \u043F\u043B\u0430\u043D\u0438\u0440\u043E\u0432\u0449\u0438\u043A \u0441\u043A\u043E\u0440\u043E\u0441\u0442\u0438 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E - \u043F\u0440\u043E\u0441\u0442\u043E \u043B\u0438\u043D\u0435\u0439\u043D\u043E\u0435 \u0443\u043C\u0435\u043D\u044C\u0448\u0435\u043D\u0438\u0435 \u0432\u0435\u0441\u043E\u0432 \u0441 \u043C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F (5e-5) \u0434\u043E 0. \u0427\u0442\u043E\u0431\u044B \u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u043E \u0437\u0430\u0434\u0430\u0442\u044C \u0435\u0433\u043E, \u043D\u0430\u043C \u043D\u0443\u0436\u043D\u043E \u0437\u043D\u0430\u0442\u044C \u0447\u0438\u0441\u043B\u043E \u0448\u0430\u0433\u043E\u0432 \u0432 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0438, \u043A\u043E\u0442\u043E\u0440\u043E\u0435 \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044F \u043A\u0430\u043A \u043F\u0440\u043E\u0438\u0437\u0432\u0435\u0434\u0435\u043D\u0438\u0435 \u0447\u0438\u0441\u043B\u0430 \u044D\u043F\u043E\u0445 \u0438 \u0447\u0438\u0441\u043B\u0430 \u0431\u0430\u0442\u0447\u0435\u0439 (\u0434\u043B\u0438\u043D\u044B \u043D\u0430\u0448\u0435\u0433\u043E \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043A\u0430 \u0434\u0430\u043D\u043D\u044B\u0445). \u0427\u0438\u0441\u043B\u043E \u044D\u043F\u043E\u0445 \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E \u0432 "),ms=p(Ut,"CODE",{});var cr=i(ms);La=r(cr,"Trainer"),cr.forEach(s),Ga=r(Ut," \u0440\u0430\u0432\u043D\u043E 3, \u0442\u0430\u043A \u0436\u0435 \u043C\u044B \u0437\u0430\u0434\u0430\u0434\u0438\u043C \u0435\u0433\u043E \u0438 \u0441\u0435\u0439\u0447\u0430\u0441:"),Ut.forEach(s),et=m(e),u(ue.$$.fragment,e),st=m(e),u(fe.$$.fragment,e),tt=m(e),_e=p(e,"H3",{id:!0});var mr=i(_e);Na=r(mr,"\u041E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B\u0430"),mr.forEach(s),at=m(e),H=p(e,"P",{});var Lt=i(H);Ha=r(Lt,"\u041F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0439 \u043C\u043E\u043C\u0435\u043D\u0442: \u043C\u044B \u0445\u043E\u0442\u0438\u043C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C GPU \u0432 \u0441\u043B\u0443\u0447\u0430\u0435, \u0435\u0441\u043B\u0438 \u0443 \u043D\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043A\u0430\u044F \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044C (\u043D\u0430 CPU \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u043C\u043E\u0436\u0435\u0442 \u0437\u0430\u043D\u044F\u0442\u044C \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0447\u0430\u0441\u043E\u0432 \u0432\u043C\u0435\u0441\u0442\u043E \u043F\u0430\u0440\u044B \u043C\u0438\u043D\u0443\u0442). \u0427\u0442\u043E\u0431\u044B \u0434\u043E\u0431\u0438\u0442\u044C\u0441\u044F \u044D\u0442\u043E\u0433\u043E, \u043C\u044B \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u043C \u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u0443\u044E "),ds=p(Lt,"CODE",{});var dr=i(ds);Ia=r(dr,"device"),dr.forEach(s),Ra=r(Lt," \u0438 \xAB\u043F\u0440\u0438\u043A\u0440\u0435\u043F\u0438\u043C\xBB \u043A \u0432\u0438\u0434\u0435\u043E\u043A\u0430\u0440\u0442\u0435 \u043D\u0430\u0448\u0443 \u043C\u043E\u0434\u0435\u043B\u044C \u0438 \u0434\u0430\u043D\u043D\u044B\u0435:"),Lt.forEach(s),lt=m(e),u(he.$$.fragment,e),rt=m(e),u($e.$$.fragment,e),ot=m(e),Ue=p(e,"P",{});var ur=i(Ue);Ba=r(ur,"\u0422\u0435\u043F\u0435\u0440\u044C \u043C\u044B \u0433\u043E\u0442\u043E\u0432\u044B \u043A \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044E \u043C\u043E\u0434\u0435\u043B\u0438! \u0427\u0442\u043E\u0431\u044B \u0438\u043C\u0435\u0442\u044C \u043F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043E \u0442\u043E\u043C, \u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0432\u0440\u0435\u043C\u0435\u043D\u0438 \u044D\u0442\u043E \u043C\u043E\u0436\u0435\u0442 \u0437\u0430\u043D\u044F\u0442\u044C, \u043C\u044B \u0434\u043E\u0431\u0430\u0432\u0438\u043C \u043F\u0440\u043E\u0433\u0440\u0435\u0441\u0441-\u0431\u0430\u0440, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u0431\u0443\u0434\u0435\u0442 \u0438\u043B\u043B\u044E\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u0442\u044C, \u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0448\u0430\u0433\u043E\u0432 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u0443\u0436\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u043E. \u042D\u0442\u043E \u043C\u043E\u0436\u043D\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0441 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u043C \u0431\u0438\u0431\u0438\u043B\u0438\u043E\u0442\u0435\u043A\u0438 tqdm:"),ur.forEach(s),nt=m(e),u(be.$$.fragment,e),pt=m(e),Le=p(e,"P",{});var fr=i(Le);Ja=r(fr,"\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0437\u0430\u043C\u0435\u0442\u0438\u0442\u044C, \u0447\u0442\u043E \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u0432\u044B\u0433\u043B\u044F\u0434\u0438\u0442 \u043E\u0447\u0435\u043D\u044C \u043F\u043E\u0445\u043E\u0436\u0438\u043C \u043D\u0430 \u0442\u043E, \u043A\u0430\u043A \u043E\u043D \u0432\u044B\u0433\u043B\u044F\u0434\u0435\u043B \u0432 \u043D\u0430\u0448\u0438\u0445 \u043F\u0435\u0440\u0432\u044B\u0445 \u043F\u0440\u0438\u043C\u0435\u0440\u0430\u0445. \u041C\u044B \u043D\u0435 \u0443\u043A\u0430\u0437\u044B\u0432\u0430\u043B\u0438 \u043C\u043E\u0434\u0435\u043B\u0438, \u0447\u0442\u043E\u0431\u044B \u043E\u043D\u0430 \u043D\u0430\u043C \u0447\u0442\u043E-\u0442\u043E \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0430\u043B\u0430 \u0432 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F. \u0414\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u043C\u044B \u0434\u043E\u0431\u0430\u0432\u0438\u043C \u0446\u0438\u043A\u043B \u0432\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u0438."),fr.forEach(s),it=m(e),ke=p(e,"H3",{id:!0});var _r=i(ke);Ya=r(_r,"\u0412\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0439 \u0446\u0438\u043A\u043B"),_r.forEach(s),ct=m(e),q=p(e,"P",{});var X=i(q);Qa=r(X,"\u0420\u0430\u043D\u0435\u0435 \u043C\u044B \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043B\u0438 \u043C\u0435\u0442\u0440\u0438\u043A\u0443, \u043A\u043E\u0442\u043E\u0440\u0443\u044E \u043D\u0430\u043C \u043F\u0440\u0435\u0434\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u043B\u0430 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430 \u{1F917} Datasets. \u041C\u044B \u0443\u0436\u0435 \u0437\u043D\u0430\u0435\u043C, \u0447\u0442\u043E \u0435\u0441\u0442\u044C \u043C\u0435\u0442\u043E\u0434 "),us=p(X,"CODE",{});var hr=i(us);Ka=r(hr,"metric.compute()"),hr.forEach(s),Va=r(X,", \u043E\u0434\u043D\u0430\u043A\u043E \u043C\u0435\u0442\u0440\u0438\u043A\u0438 \u043C\u043E\u0433\u0443\u0442 \u043D\u0430\u043A\u0430\u043F\u043B\u0438\u0432\u0430\u0442\u044C \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u0432 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435 \u0438\u0442\u0435\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u043F\u043E \u0431\u0430\u0442\u0447\u0443, \u0434\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u0435\u0441\u0442\u044C \u043C\u0435\u0442\u043E\u0434 "),fs=p(X,"CODE",{});var $r=i(fs);Xa=r($r,"add_batch()"),$r.forEach(s),Za=r(X,". \u041F\u043E\u0441\u043B\u0435 \u0442\u043E\u0433\u043E, \u043A\u0430\u043A \u043C\u044B \u043F\u0440\u043E\u0439\u0434\u0435\u043C\u0441\u044F \u043F\u043E \u0432\u0441\u0435\u043C \u0431\u0430\u0442\u0447\u0430\u043C, \u043C\u044B \u0441\u043C\u043E\u0436\u0435\u043C \u0432\u044B\u0447\u0438\u0441\u043B\u0438\u0442\u044C \u0444\u0438\u043D\u0430\u043B\u044C\u043D\u044B\u0439 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E "),_s=p(X,"CODE",{});var br=i(_s);el=r(br,"metric.compute()"),br.forEach(s),sl=r(X,". \u0412\u043E\u0442 \u043F\u0440\u0438\u043C\u0435\u0440 \u0442\u043E\u0433\u043E, \u043A\u0430\u043A \u044D\u0442\u043E \u043C\u043E\u0436\u043D\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0432 \u0446\u0438\u043A\u043B\u0435 \u0432\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u0438:"),X.forEach(s),mt=m(e),u(ve.$$.fragment,e),dt=m(e),u(je.$$.fragment,e),ut=m(e),Ge=p(e,"P",{});var kr=i(Ge);tl=r(kr,"\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u043C: \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u044B, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u0435 \u0432\u044B, \u043C\u043E\u0433\u0443\u0442 \u043D\u0435\u043C\u043D\u043E\u0433\u043E \u043E\u0442\u043B\u0438\u0447\u0430\u0442\u044C\u0441\u044F \u0438\u0437-\u0437\u0430 \u043D\u0430\u043B\u0438\u0447\u0438\u044F \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u043E\u0441\u0442\u0435\u0439 \u043F\u0440\u0438 \u0438\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432 \u0441\u043B\u043E\u044F \u043C\u043E\u0434\u0435\u043B\u0438 \u0438 \u0438\u0437-\u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u043E\u0433\u043E \u043F\u0435\u0440\u0435\u043C\u0435\u0448\u0438\u0432\u0430\u043D\u0438\u044F \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043E\u0434\u043D\u0430\u043A\u043E \u0438\u0445 \u043F\u043E\u0440\u044F\u0434\u043E\u043A \u0434\u043E\u043B\u0436\u0435\u043D \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u0442\u044C."),kr.forEach(s),ft=m(e),u(I.$$.fragment,e),_t=m(e),W=p(e,"H3",{class:!0});var Gt=i(W);R=p(Gt,"A",{id:!0,class:!0,href:!0});var vr=i(R);hs=p(vr,"SPAN",{});var jr=i(hs);u(we.$$.fragment,jr),jr.forEach(s),vr.forEach(s),al=m(Gt),$s=p(Gt,"SPAN",{});var wr=i($s);ll=r(wr,"\u0423\u0441\u043A\u043E\u0440\u0435\u043D\u0438\u0435 \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0435\u0433\u043E \u0446\u0438\u043A\u043B\u0430 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u{1F917} Accelerate"),wr.forEach(s),Gt.forEach(s),ht=m(e),u(ge.$$.fragment,e),$t=m(e),B=p(e,"P",{});var Nt=i(B);rl=r(Nt,"\u041E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B, \u0437\u0430\u0434\u0430\u043D\u043D\u044B\u0439 \u0432\u044B\u0448\u0435, \u043E\u0442\u043B\u0438\u0447\u043D\u043E \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442 \u043D\u0430 \u043E\u0434\u043D\u043E\u043C GPU \u0438\u043B\u0438 CPU. \u041E\u0434\u043D\u0430\u043A\u043E \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0438 "),ze=p(Nt,"A",{href:!0,rel:!0});var gr=i(ze);ol=r(gr,"\u{1F917} Accelerate"),gr.forEach(s),nl=r(Nt," \u043F\u043E\u0437\u0432\u043E\u043B\u044F\u0435\u0442 \u0441 \u043D\u0435\u0431\u043E\u043B\u044C\u0448\u0438\u043C\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F\u043C\u0438 \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u044D\u0442\u0443 \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u0443 \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0439 \u043D\u0430 \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E GPU \u0438\u043B\u0438 TPU. \u041D\u0430\u0447\u0438\u0438\u043D\u0430\u044F \u0441 \u043C\u043E\u043C\u0435\u043D\u0442\u0430 \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0445 \u0438 \u0432\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0445 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043A\u043E\u0432 \u0434\u0430\u043D\u043D\u044B\u0445, \u043D\u0430\u0448 \xAB\u0440\u0443\u0447\u043D\u043E\u0439\xBB \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B \u0432\u044B\u0433\u043B\u044F\u0434\u0438\u0442 \u0442\u0430\u043A:"),Nt.forEach(s),bt=m(e),u(Ee.$$.fragment,e),kt=m(e),Ne=p(e,"P",{});var zr=i(Ne);pl=r(zr,"\u0410 \u0432\u043E\u0442 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043D\u0443\u0436\u043D\u043E \u0432\u043D\u0435\u0441\u0442\u0438, \u0447\u0442\u043E\u0431\u044B \u0443\u0441\u043A\u043E\u0440\u0438\u0442\u044C \u043F\u0440\u043E\u0446\u0435\u0441\u0441:"),zr.forEach(s),vt=m(e),u(ye.$$.fragment,e),jt=m(e),A=p(e,"P",{});var Z=i(A);il=r(Z,"\u041F\u0435\u0440\u0432\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430 \u2013 \u044D\u0442\u043E \u0441\u0442\u0440\u043E\u043A\u0430 \u0438\u043C\u043F\u043E\u0440\u0442\u0430 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0438. \u0412\u0442\u043E\u0440\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430 \u0438\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u043E\u0431\u044A\u0435\u043A\u0442 "),bs=p(Z,"CODE",{});var Er=i(bs);cl=r(Er,"Accelerator"),Er.forEach(s),ml=r(Z,`, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u043F\u0440\u043E\u0430\u043D\u0430\u043B\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u043E\u043A\u0440\u0443\u0436\u0435\u043D\u0438\u0435 \u0438 \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u0442 \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u044B\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438. \u{1F917} Accelerate \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u043E\u0435 \u043E\u0431\u043E\u0440\u0443\u0434\u043E\u0432\u0430\u043D\u0438\u0435, \u043F\u043E\u044D\u0442\u043E\u043C\u0443 \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0438, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \xAB\u043F\u0440\u0438\u043A\u0440\u0435\u043F\u043B\u044F\u044E\u0442\xBB
\u043C\u043E\u0434\u0435\u043B\u044C \u0438 \u0434\u0430\u043D\u043D\u044B\u0435 \u043A \u0432\u0438\u0434\u0435\u043E\u043A\u0430\u0440\u0442\u0435 (\u0438\u043B\u0438, \u0435\u0441\u043B\u0438 \u0432\u0430\u043C \u0442\u0430\u043A \u0443\u0434\u043E\u0431\u043D\u0435\u0435, \u043C\u043E\u0436\u0435\u0442\u0435 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0438\u0445 \u043D\u0430 `),ks=p(Z,"CODE",{});var yr=i(ks);dl=r(yr,"accelerator.device"),yr.forEach(s),ul=r(Z," \u0432\u043C\u0435\u0441\u0442\u043E \u043F\u0440\u043E\u0441\u0442\u043E "),vs=p(Z,"CODE",{});var qr=i(vs);fl=r(qr,"device"),qr.forEach(s),_l=r(Z,")."),Z.forEach(s),wt=m(e),v=p(e,"P",{});var E=i(v);hl=r(E,"\u0414\u0430\u043B\u0435\u0435 \u0433\u043B\u0430\u0432\u043D\u0430\u044F \u0447\u0430\u0441\u0442\u044C \u0440\u0430\u0431\u043E\u0442\u044B \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u0432 \u0441\u0442\u0440\u043E\u043A\u0435, \u043A\u043E\u0442\u043E\u0440\u0430\u044F \u043E\u0442\u043F\u0440\u0430\u0432\u043B\u044F\u0435\u0442 \u0434\u0430\u043D\u043D\u044B\u0435, \u043C\u043E\u0434\u0435\u043B\u044C \u0438 \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0442\u043E\u0440 \u043D\u0430 "),js=p(E,"CODE",{});var Ar=i(js);$l=r(Ar,"accelerator.prepare()"),Ar.forEach(s),bl=r(E,". \u042D\u0442\u043E\u0442 \u043C\u0435\u0442\u043E\u0434 \xAB\u043E\u0431\u0435\u0440\u043D\u0435\u0442\xBB \u0432\u0430\u0448\u0438 \u043E\u0431\u044A\u0435\u043A\u0442\u044B \u0432 \u043A\u043E\u043D\u0442\u0435\u0439\u043D\u0435\u0440 \u0438 \u0443\u0431\u0435\u0434\u0438\u0442\u0441\u044F, \u0447\u0442\u043E \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u043E. \u041E\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044F \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u2013 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0435 \u0441\u0442\u0440\u043E\u043A\u0438, \u043A\u043E\u0442\u043E\u0440\u0430\u044F \u043E\u0442\u043F\u0440\u0430\u0432\u043B\u044F\u0435\u0442 \u0431\u0430\u0442\u0447 \u043D\u0430 "),ws=p(E,"CODE",{});var Cr=i(ws);kl=r(Cr,"device"),Cr.forEach(s),vl=r(E," (\u043F\u043E\u0432\u0442\u043E\u0440\u0438\u043C: \u0435\u0441\u043B\u0438 \u0432\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u044D\u0442\u0443 \u0441\u0442\u0440\u043E\u043A\u0443, \u0437\u0430\u043C\u0435\u043D\u0438\u0442\u0435 "),gs=p(E,"CODE",{});var Pr=i(gs);jl=r(Pr,"device"),Pr.forEach(s),wl=r(E," \u043D\u0430 "),zs=p(E,"CODE",{});var Dr=i(zs);gl=r(Dr,"accelerator.device"),Dr.forEach(s),zl=r(E,") \u0438 \u0437\u0430\u043C\u0435\u043D\u0438\u0442\u0435 "),Es=p(E,"CODE",{});var Sr=i(Es);El=r(Sr,"loss.backward()"),Sr.forEach(s),yl=r(E," \u043D\u0430 "),ys=p(E,"CODE",{});var xr=i(ys);ql=r(xr,"accelerator.backward(loss)"),xr.forEach(s),Al=r(E,"."),E.forEach(s),gt=m(e),u(J.$$.fragment,e),zt=m(e),He=p(e,"P",{});var Tr=i(He);Cl=r(Tr,"\u0415\u0441\u043B\u0438 \u0432\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u0441\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0438 \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u043A\u043E\u0434, \u044D\u0442\u043E \u043F\u043E\u043B\u043D\u0430\u044F \u0432\u0435\u0440\u0441\u0438\u044F \u0441 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u043C \u{1F917} Accelerate:"),Tr.forEach(s),Et=m(e),u(qe.$$.fragment,e),yt=m(e),Y=p(e,"P",{});var Ht=i(Y);Pl=r(Ht,"\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u044D\u0442\u043E\u0433\u043E \u0432 \u0441\u043A\u0440\u0438\u043F\u0442 "),qs=p(Ht,"CODE",{});var Or=i(qs);Dl=r(Or,"train.py"),Or.forEach(s),Sl=r(Ht," \u0441\u0434\u0435\u043B\u0430\u0435\u0442 \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u0443\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u044B\u043C \u0434\u043B\u044F \u043B\u044E\u0431\u043E\u0439 \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u044B. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u0435\u0433\u043E \u043D\u0430 \u0432\u0430\u0448\u0435\u0439 \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u0435:"),Ht.forEach(s),qt=m(e),u(Ae.$$.fragment,e),At=m(e),Ie=p(e,"P",{});var Wr=i(Ie);xl=r(Wr,"\u044D\u0442\u0430 \u0441\u0442\u0440\u043E\u043A\u0430 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0438\u0442 \u0432\u0430\u043C \u043E\u0442\u0432\u0435\u0442\u0438\u0442\u044C \u043D\u0430 \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0432\u043E\u043F\u0440\u043E\u0441\u043E\u0432 \u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442 \u0432\u0430\u0448\u0438 \u043E\u0442\u0432\u0435\u0442\u044B \u0432 \u043A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0439 \u0444\u0430\u0439\u043B, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u043F\u0440\u0438 \u0432\u044B\u0437\u043E\u0432\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u044B:"),Wr.forEach(s),Ct=m(e),Re=p(e,"P",{});var Mr=i(Re);Tl=r(Mr,"which will prompt you to answer a few questions and dump your answers in a configuration file used by this command:"),Mr.forEach(s),Pt=m(e),u(Ce.$$.fragment,e),Dt=m(e),Be=p(e,"P",{});var Fr=i(Be);Ol=r(Fr,"\u0437\u0430\u043F\u0443\u0441\u043A\u0430\u044E\u0449\u0435\u0439 \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435."),Fr.forEach(s),St=m(e),Q=p(e,"P",{});var It=i(Q);Wl=r(It,"\u0415\u0441\u043B\u0438 \u0432\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u043F\u043E\u043F\u0440\u043E\u0431\u043E\u0432\u0430\u0442\u044C \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u043A\u043E\u0434 \u0432 Jupyter Notebook (\u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, \u043F\u0440\u043E\u0442\u0435\u0441\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0435\u0433\u043E \u0441 TPU \u043D\u0430 Google Colab), \u043F\u0440\u043E\u0441\u0442\u043E \u0432\u0441\u0442\u0430\u0432\u044C\u0442\u0435 \u043A\u043E\u0434 \u0432 "),As=p(It,"CODE",{});var Ur=i(As);Ml=r(Ur,"training_function()"),Ur.forEach(s),Fl=r(It," \u0438 \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u0435 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u044E\u044E \u044F\u0447\u0435\u0439\u043A\u0443:"),It.forEach(s),xt=m(e),u(Pe.$$.fragment,e),Tt=m(e),K=p(e,"P",{});var Rt=i(K);Ul=r(Rt,"\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 \u0431\u043E\u043B\u044C\u0448\u0435 \u043F\u0440\u0438\u043C\u0435\u0440\u043E\u0432 \u0432 \u0440\u0435\u043F\u043E\u0437\u0438\u0442\u043E\u0440\u0438\u0438 "),De=p(Rt,"A",{href:!0,rel:!0});var Lr=i(De);Ll=r(Lr,"\u{1F917} Accelerate repo"),Lr.forEach(s),Gl=r(Rt,"."),Rt.forEach(s),this.h()},h(){j(b,"name","hf:doc:metadata"),j(b,"content",JSON.stringify(Zr)),j(w,"id",""),j(te,"id",""),j(me,"href","https://arxiv.org/abs/1711.05101"),j(me,"rel","nofollow"),j(_e,"id",""),j(ke,"id",""),j(R,"id","accelerate"),j(R,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),j(R,"href","#accelerate"),j(W,"class","relative group"),j(ze,"href","https://github.com/huggingface/accelerate"),j(ze,"rel","nofollow"),j(De,"href","https://github.com/huggingface/accelerate/tree/main/examples"),j(De,"rel","nofollow")},m(e,a){t(document.head,b),o(e,g,a),o(e,w,a),t(w,ee),o(e,M,a),f(y,e,a),o(e,C,a),f(D,e,a),o(e,Ps,a),o(e,F,a),t(F,Bt),t(F,Ke),t(Ke,Jt),t(F,Yt),o(e,Ds,a),f(se,e,a),o(e,Ss,a),o(e,te,a),t(te,Qt),o(e,xs,a),o(e,S,a),t(S,Kt),t(S,Ve),t(Ve,Vt),t(S,Xt),t(S,Xe),t(Xe,Zt),t(S,ea),o(e,Ts,a),o(e,x,a),t(x,O),t(O,sa),t(O,Ze),t(Ze,ta),t(O,aa),t(O,es),t(es,la),t(O,ra),t(x,oa),t(x,P),t(P,na),t(P,ss),t(ss,pa),t(P,ia),t(P,ts),t(ts,ca),t(P,ma),t(P,as),t(as,da),t(P,ua),t(x,fa),t(x,ls),t(ls,_a),o(e,Os,a),o(e,U,a),t(U,ha),t(U,rs),t(rs,$a),t(U,ba),o(e,Ws,a),f(ae,e,a),o(e,Ms,a),o(e,Te,a),t(Te,ka),o(e,Fs,a),f(le,e,a),o(e,Us,a),o(e,Oe,a),t(Oe,va),o(e,Ls,a),f(re,e,a),o(e,Gs,a),o(e,We,a),t(We,ja),o(e,Ns,a),f(oe,e,a),o(e,Hs,a),f(ne,e,a),o(e,Is,a),o(e,L,a),t(L,wa),t(L,os),t(os,ga),t(L,za),o(e,Rs,a),o(e,Me,a),t(Me,Ea),o(e,Bs,a),f(pe,e,a),o(e,Js,a),o(e,Fe,a),t(Fe,ya),o(e,Ys,a),f(ie,e,a),o(e,Qs,a),f(ce,e,a),o(e,Ks,a),o(e,G,a),t(G,qa),t(G,ns),t(ns,Aa),t(G,Ca),o(e,Vs,a),o(e,z,a),t(z,Pa),t(z,ps),t(ps,Da),t(z,Sa),t(z,is),t(is,xa),t(z,Ta),t(z,cs),t(cs,Oa),t(z,Wa),t(z,me),t(me,Ma),t(z,Fa),o(e,Xs,a),f(de,e,a),o(e,Zs,a),o(e,N,a),t(N,Ua),t(N,ms),t(ms,La),t(N,Ga),o(e,et,a),f(ue,e,a),o(e,st,a),f(fe,e,a),o(e,tt,a),o(e,_e,a),t(_e,Na),o(e,at,a),o(e,H,a),t(H,Ha),t(H,ds),t(ds,Ia),t(H,Ra),o(e,lt,a),f(he,e,a),o(e,rt,a),f($e,e,a),o(e,ot,a),o(e,Ue,a),t(Ue,Ba),o(e,nt,a),f(be,e,a),o(e,pt,a),o(e,Le,a),t(Le,Ja),o(e,it,a),o(e,ke,a),t(ke,Ya),o(e,ct,a),o(e,q,a),t(q,Qa),t(q,us),t(us,Ka),t(q,Va),t(q,fs),t(fs,Xa),t(q,Za),t(q,_s),t(_s,el),t(q,sl),o(e,mt,a),f(ve,e,a),o(e,dt,a),f(je,e,a),o(e,ut,a),o(e,Ge,a),t(Ge,tl),o(e,ft,a),f(I,e,a),o(e,_t,a),o(e,W,a),t(W,R),t(R,hs),f(we,hs,null),t(W,al),t(W,$s),t($s,ll),o(e,ht,a),f(ge,e,a),o(e,$t,a),o(e,B,a),t(B,rl),t(B,ze),t(ze,ol),t(B,nl),o(e,bt,a),f(Ee,e,a),o(e,kt,a),o(e,Ne,a),t(Ne,pl),o(e,vt,a),f(ye,e,a),o(e,jt,a),o(e,A,a),t(A,il),t(A,bs),t(bs,cl),t(A,ml),t(A,ks),t(ks,dl),t(A,ul),t(A,vs),t(vs,fl),t(A,_l),o(e,wt,a),o(e,v,a),t(v,hl),t(v,js),t(js,$l),t(v,bl),t(v,ws),t(ws,kl),t(v,vl),t(v,gs),t(gs,jl),t(v,wl),t(v,zs),t(zs,gl),t(v,zl),t(v,Es),t(Es,El),t(v,yl),t(v,ys),t(ys,ql),t(v,Al),o(e,gt,a),f(J,e,a),o(e,zt,a),o(e,He,a),t(He,Cl),o(e,Et,a),f(qe,e,a),o(e,yt,a),o(e,Y,a),t(Y,Pl),t(Y,qs),t(qs,Dl),t(Y,Sl),o(e,qt,a),f(Ae,e,a),o(e,At,a),o(e,Ie,a),t(Ie,xl),o(e,Ct,a),o(e,Re,a),t(Re,Tl),o(e,Pt,a),f(Ce,e,a),o(e,Dt,a),o(e,Be,a),t(Be,Ol),o(e,St,a),o(e,Q,a),t(Q,Wl),t(Q,As),t(As,Ml),t(Q,Fl),o(e,xt,a),f(Pe,e,a),o(e,Tt,a),o(e,K,a),t(K,Ul),t(K,De),t(De,Ll),t(K,Gl),Ot=!0},p(e,[a]){const Cs={};a&2&&(Cs.$$scope={dirty:a,ctx:e}),I.$set(Cs);const Se={};a&2&&(Se.$$scope={dirty:a,ctx:e}),J.$set(Se)},i(e){Ot||(_(y.$$.fragment,e),_(D.$$.fragment,e),_(se.$$.fragment,e),_(ae.$$.fragment,e),_(le.$$.fragment,e),_(re.$$.fragment,e),_(oe.$$.fragment,e),_(ne.$$.fragment,e),_(pe.$$.fragment,e),_(ie.$$.fragment,e),_(ce.$$.fragment,e),_(de.$$.fragment,e),_(ue.$$.fragment,e),_(fe.$$.fragment,e),_(he.$$.fragment,e),_($e.$$.fragment,e),_(be.$$.fragment,e),_(ve.$$.fragment,e),_(je.$$.fragment,e),_(I.$$.fragment,e),_(we.$$.fragment,e),_(ge.$$.fragment,e),_(Ee.$$.fragment,e),_(ye.$$.fragment,e),_(J.$$.fragment,e),_(qe.$$.fragment,e),_(Ae.$$.fragment,e),_(Ce.$$.fragment,e),_(Pe.$$.fragment,e),Ot=!0)},o(e){h(y.$$.fragment,e),h(D.$$.fragment,e),h(se.$$.fragment,e),h(ae.$$.fragment,e),h(le.$$.fragment,e),h(re.$$.fragment,e),h(oe.$$.fragment,e),h(ne.$$.fragment,e),h(pe.$$.fragment,e),h(ie.$$.fragment,e),h(ce.$$.fragment,e),h(de.$$.fragment,e),h(ue.$$.fragment,e),h(fe.$$.fragment,e),h(he.$$.fragment,e),h($e.$$.fragment,e),h(be.$$.fragment,e),h(ve.$$.fragment,e),h(je.$$.fragment,e),h(I.$$.fragment,e),h(we.$$.fragment,e),h(ge.$$.fragment,e),h(Ee.$$.fragment,e),h(ye.$$.fragment,e),h(J.$$.fragment,e),h(qe.$$.fragment,e),h(Ae.$$.fragment,e),h(Ce.$$.fragment,e),h(Pe.$$.fragment,e),Ot=!1},d(e){s(b),e&&s(g),e&&s(w),e&&s(M),$(y,e),e&&s(C),$(D,e),e&&s(Ps),e&&s(F),e&&s(Ds),$(se,e),e&&s(Ss),e&&s(te),e&&s(xs),e&&s(S),e&&s(Ts),e&&s(x),e&&s(Os),e&&s(U),e&&s(Ws),$(ae,e),e&&s(Ms),e&&s(Te),e&&s(Fs),$(le,e),e&&s(Us),e&&s(Oe),e&&s(Ls),$(re,e),e&&s(Gs),e&&s(We),e&&s(Ns),$(oe,e),e&&s(Hs),$(ne,e),e&&s(Is),e&&s(L),e&&s(Rs),e&&s(Me),e&&s(Bs),$(pe,e),e&&s(Js),e&&s(Fe),e&&s(Ys),$(ie,e),e&&s(Qs),$(ce,e),e&&s(Ks),e&&s(G),e&&s(Vs),e&&s(z),e&&s(Xs),$(de,e),e&&s(Zs),e&&s(N),e&&s(et),$(ue,e),e&&s(st),$(fe,e),e&&s(tt),e&&s(_e),e&&s(at),e&&s(H),e&&s(lt),$(he,e),e&&s(rt),$($e,e),e&&s(ot),e&&s(Ue),e&&s(nt),$(be,e),e&&s(pt),e&&s(Le),e&&s(it),e&&s(ke),e&&s(ct),e&&s(q),e&&s(mt),$(ve,e),e&&s(dt),$(je,e),e&&s(ut),e&&s(Ge),e&&s(ft),$(I,e),e&&s(_t),e&&s(W),$(we),e&&s(ht),$(ge,e),e&&s($t),e&&s(B),e&&s(bt),$(Ee,e),e&&s(kt),e&&s(Ne),e&&s(vt),$(ye,e),e&&s(jt),e&&s(A),e&&s(wt),e&&s(v),e&&s(gt),$(J,e),e&&s(zt),e&&s(He),e&&s(Et),$(qe,e),e&&s(yt),e&&s(Y),e&&s(qt),$(Ae,e),e&&s(At),e&&s(Ie),e&&s(Ct),e&&s(Re),e&&s(Pt),$(Ce,e),e&&s(Dt),e&&s(Be),e&&s(St),e&&s(Q),e&&s(xt),$(Pe,e),e&&s(Tt),e&&s(K)}}}const Zr={local:"",sections:[{local:"",title:"\u041F\u043E\u0434\u0433\u043E\u0442\u043E\u0432\u043A\u0430 \u043A \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044E"},{local:"",title:"\u041E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439 \u0446\u0438\u043A\u043B\u0430"},{local:"",title:"\u0412\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0439 \u0446\u0438\u043A\u043B"},{local:"accelerate",title:"\u0423\u0441\u043A\u043E\u0440\u0435\u043D\u0438\u0435 \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0435\u0433\u043E \u0446\u0438\u043A\u043B\u0430 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u{1F917} Accelerate"}],title:"\u041F\u043E\u043B\u043D\u043E\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435"};function eo(xe){return Jr(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class no extends Hr{constructor(b){super();Ir(this,b,eo,Xr,Rr,{})}}export{no as default,Zr as metadata};
