Transformers 文件

回撥

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

回撥函式

回撥函式是能夠自定義 PyTorch Trainer 中訓練迴圈行為的物件(此功能尚未在 TensorFlow 中實現),它可以檢查訓練迴圈狀態(用於進度報告、在 TensorBoard 或其他 ML 平臺上記錄日誌……)並做出決策(如提前停止)。

回撥函式是“只讀”的程式碼片段,除了它們返回的 TrainerControl 物件外,它們不能改變訓練迴圈中的任何內容。對於需要改變訓練迴圈的自定義,您應該子類化 Trainer 並覆蓋您需要的方法(參閱 訓練器 以獲取示例)。

預設情況下,`TrainingArguments.report_to` 設定為 `"all"`,因此 Trainer 將使用以下回調函式。

如果已安裝某個包,但您不想使用隨附的整合,您可以將 `TrainingArguments.report_to` 更改為僅包含您要使用的整合的列表(例如,`["azure_ml", "wandb"]`)。

實現回撥函式的主要類是 TrainerCallback。它獲取用於例項化 TrainerTrainingArguments,可以透過 TrainerState 訪問該 Trainer 的內部狀態,並且可以透過 TrainerControl 對訓練迴圈執行一些操作。

可用回撥函式

以下是庫中可用的 TrainerCallback 列表

class transformers.integrations.CometCallback

< >

( )

一個將日誌傳送到 Comet MLTrainerCallback

設定

< >

( args state model )

設定可選的 Comet 整合。

環境

  • COMET_MODE (str, 可選,預設為 get_or_create):控制是建立並記錄到新的 Comet 實驗還是附加到現有實驗。它接受以下值
    • get_or_create:根據是否設定了 `COMET_EXPERIMENT_KEY` 以及該鍵的實驗是否存在自動決定。
    • create:始終建立一個新的 Comet 實驗。
    • get:始終嘗試附加到現有 Comet 實驗。需要設定 `COMET_EXPERIMENT_KEY`。
    • ONLINE:**已棄用**,用於建立線上實驗。請改用 `COMET_START_ONLINE=1`。
    • OFFLINE:**已棄用**,用於建立離線實驗。請改用 `COMET_START_ONLINE=0`。
    • DISABLED:**已棄用**,用於停用 Comet 日誌記錄。請改用 `--report_to` 標誌來控制用於記錄結果的整合。
  • COMET_PROJECT_NAME (str, 可選):Comet 實驗的專案名稱。
  • COMET_LOG_ASSETS (str, 可選,預設為 TRUE):是否將訓練資產(tf 事件日誌、檢查點等)記錄到 Comet。可以是 TRUEFALSE

有關環境中可配置項的數量,請參閱此處

class transformers.DefaultFlowCallback

< >

( )

一個 TrainerCallback,用於處理日誌、評估和檢查點的預設訓練迴圈流。

class transformers.PrinterCallback

< >

( )

一個只打印日誌的 TrainerCallback

class transformers.ProgressCallback

< >

( max_str_len: int = 100 )

一個 TrainerCallback,顯示訓練或評估的進度。您可以修改 `max_str_len` 來控制日誌記錄時字串截斷的長度。

class transformers.EarlyStoppingCallback

< >

( early_stopping_patience: int = 1 early_stopping_threshold: typing.Optional[float] = 0.0 )

引數

  • early_stopping_patience (int) — 與 metric_for_best_model 一起使用,當指定指標在 `early_stopping_patience` 次評估呼叫後惡化時停止訓練。
  • early_stopping_threshold(float, 可選) — 與 TrainingArguments `metric_for_best_model` 和 `early_stopping_patience` 一起使用,表示指定指標必須提高多少才能滿足提前停止條件。`

一個處理提前停止的 TrainerCallback

此回撥函式依賴於 TrainingArguments 引數 *load_best_model_at_end* 功能,用於設定 TrainerState 中的 best_metric。請注意,如果 TrainingArguments 引數 *save_steps* 與 *eval_steps* 不同,則提前停止不會發生,直到下一個儲存步驟。

class transformers.integrations.TensorBoardCallback

< >

( tb_writer = None )

引數

  • tb_writer (SummaryWriter, 可選) — 要使用的寫入器。如果未設定,將例項化一個新的。

一個將日誌傳送到 TensorBoardTrainerCallback

class transformers.integrations.WandbCallback

< >

( )

一個將指標、媒體、模型檢查點記錄到 Weight and BiasesTrainerCallback

設定

< >

( args state model **kwargs )

設定可選的 Weights & Biases (wandb) 整合。

可以子類化並重寫此方法以根據需要自定義設定。欲瞭解更多資訊,請參閱此處。您還可以覆蓋以下環境變數

環境

  • WANDB_LOG_MODEL (str, 可選, 預設為 "false"):是否在訓練期間記錄模型和檢查點。可以是 "end", "checkpoint""false"。如果設定為 "end",模型將在訓練結束時上傳。如果設定為 "checkpoint",檢查點將每 args.save_steps 上傳一次。如果設定為 "false",模型將不會上傳。與 load_best_model_at_end() 一起使用以上傳最佳模型。

    5.0 版本中已棄用

    在 🤗 Transformers 的 5.0 版本中,將 WANDB_LOG_MODEL 設定為 bool 將被棄用。

  • WANDB_WATCH (str, 可選,預設為 "false"):可以是 "gradients", "all", "parameters""false"。設定為 "all" 以記錄梯度和引數。

  • WANDB_PROJECT (str, 可選,預設為 "huggingface"):將其設定為自定義字串以將結果儲存在不同的專案中。

  • WANDB_DISABLED (bool, 可選,預設為 False):是否完全停用 wandb。設定為 `WANDB_DISABLED=true` 以停用。

class transformers.integrations.MLflowCallback

< >

( )

一個將日誌傳送到 MLflowTrainerCallback。可以透過設定環境變數 `DISABLE_MLFLOW_INTEGRATION = TRUE` 來停用。

設定

< >

( args state model )

設定可選的 MLflow 整合。

環境

  • HF_MLFLOW_LOG_ARTIFACTS (str, 可選):是否使用 MLflow `log_artifact()` 功能記錄工件。這僅在記錄到遠端伺服器(例如 s3 或 GCS)時才有意義。如果設定為 `True` 或 *1*,則在 TrainingArguments 的 `output_dir` 中每次儲存時將每個儲存的檢查點複製到本地或遠端工件儲存。在沒有遠端儲存的情況下使用它只會將檔案複製到您的工件位置。
  • MLFLOW_TRACKING_URI (str, 可選):是否將執行儲存在特定路徑或遠端伺服器。預設情況下未設定,這將完全跳過設定跟蹤 URI。
  • MLFLOW_EXPERIMENT_NAME (str, 可選, 預設為 None):是否使用 MLflow 實驗名稱來啟動執行。預設為 None,這將指向 MLflow 中的 `Default` 實驗。否則,它是要啟用的實驗的區分大小寫名稱。如果不存在具有此名稱的實驗,則會建立一個具有此名稱的新實驗。
  • MLFLOW_TAGS (str, 可選):鍵/值對字典的字串轉儲,將作為標籤新增到 MLflow 執行中。示例:`os.environ['MLFLOW_TAGS']='{"release.candidate": "RC1", "release.version": "2.2.0"}'`。
  • MLFLOW_NESTED_RUN (str, 可選):是否使用 MLflow 巢狀執行。如果設定為 True 或 *1*,將在當前執行中建立一個巢狀執行。
  • MLFLOW_RUN_ID (str, 可選):允許重新連線到現有執行,這在從檢查點恢復訓練時很有用。當設定了 `MLFLOW_RUN_ID` 環境變數時,`start_run` 嘗試恢復具有指定執行 ID 的執行,其他引數將被忽略。
  • MLFLOW_FLATTEN_PARAMS (str, 可選,預設為 False):是否在記錄之前展平引數字典。
  • MLFLOW_MAX_LOG_PARAMS (int, 可選):設定在執行中記錄的最大引數數量。

class transformers.integrations.AzureMLCallback

< >

( azureml_run = None )

一個將日誌傳送到 AzureMLTrainerCallback

class transformers.integrations.CodeCarbonCallback

< >

( )

一個追蹤訓練過程中二氧化碳排放量的 TrainerCallback

class transformers.integrations.NeptuneCallback

< >

( api_token: typing.Optional[str] = None project: typing.Optional[str] = None name: typing.Optional[str] = None base_namespace: str = 'finetuning' run = None log_parameters: bool = True log_checkpoints: typing.Optional[str] = None **neptune_run_kwargs )

引數

  • api_token (str, 可選) — 註冊時獲取的 Neptune API 令牌。如果您已將令牌儲存到 `NEPTUNE_API_TOKEN` 環境變數中(強烈推薦),則可以省略此引數。請參閱文件中的完整設定說明。
  • project (str, 可選) — 現有 Neptune 專案的名稱,格式為“workspace-name/project-name”。您可以在 Neptune 的專案設定 -> 屬性中找到並複製該名稱。如果為 None(預設),則使用 `NEPTUNE_PROJECT` 環境變數的值。
  • name (str, 可選) — 執行的自定義名稱。
  • base_namespace (str, 可選, 預設為“finetuning”) — 在 Neptune 執行中,將包含回撥函式記錄的所有元資料的根名稱空間。
  • log_parameters (bool, 可選, 預設為 True) — 如果為 True,則記錄 Trainer 提供的所有 Trainer 引數和模型引數。
  • log_checkpoints (str, 可選) — 如果為“same”,則在 Trainer 儲存檢查點時上傳檢查點。如果為“last”,則僅上傳最近儲存的檢查點。如果為“best”,則上傳最佳檢查點(Trainer 儲存的檢查點中)。如果為 `None`,則不上傳檢查點。
  • run (Run, 可選) — 如果您想繼續記錄到現有執行,請傳入一個 Neptune 執行物件。有關恢復執行的更多資訊,請參閱文件
  • **neptune_run_kwargs (可選) — 在建立新執行時直接傳遞給 neptune.init_run() 函式的其他關鍵字引數。

將日誌傳送到 Neptune 的 TrainerCallback。

有關說明和示例,請參閱 Neptune 文件中的Transformers 整合指南

class transformers.integrations.ClearMLCallback

< >

( )

一個將日誌傳送到 ClearMLTrainerCallback

環境

  • CLEARML_PROJECT (str, 可選,預設為 HuggingFace Transformers):ClearML 專案名稱。
  • CLEARML_TASK (str, 可選,預設為 Trainer):ClearML 任務名稱。
  • CLEARML_LOG_MODEL (bool, 可選,預設為 False):是否在訓練期間將模型記錄為工件。

class transformers.integrations.DagsHubCallback

< >

( )

一個將日誌記錄到 DagsHubTrainerCallback。繼承自 `MLflowCallback`

設定

< >

( *args **kwargs )

設定 DagsHub 的日誌整合。

環境

  • HF_DAGSHUB_LOG_ARTIFACTS (str, 可選):是否儲存實驗的資料和模型工件。預設為 `False`。

class transformers.integrations.FlyteCallback

< >

( save_log_history: bool = True sync_checkpoints: bool = True )

引數

  • save_log_history (bool, 可選, 預設為 True) — 如果設定為 True,訓練日誌將作為 Flyte Deck 儲存。
  • sync_checkpoints (bool, 可選, 預設為 True) — 如果設定為 True,檢查點將與 Flyte 同步,並且可以在中斷時用於恢復訓練。

一個將日誌傳送到 FlyteTrainerCallback。注意:此回撥函式僅在 Flyte 任務中有效。

示例

# Note: This example skips over some setup steps for brevity.
from flytekit import current_context, task


@task
def train_hf_transformer():
    cp = current_context().checkpoint
    trainer = Trainer(..., callbacks=[FlyteCallback()])
    output = trainer.train(resume_from_checkpoint=cp.restore())

class transformers.integrations.DVCLiveCallback

< >

( live: typing.Optional[typing.Any] = None log_model: typing.Union[typing.Literal['all'], bool, NoneType] = None **kwargs )

引數

  • live (dvclive.Live, 可選, 預設為 None) — 可選的 Live 例項。如果為 None,將使用 **kwargs 建立一個新例項。
  • log_model (Union[Literal[“all”], bool], 可選, 預設為 None) — 是否使用 dvclive.Live.log_artifact() 記錄由 Trainer 建立的檢查點。如果設定為 True,最終檢查點將在訓練結束時記錄。如果設定為 "all",整個 TrainingArguments 的 `output_dir` 將在每個檢查點記錄。

一個將日誌傳送到 DVCLiveTrainerCallback

在 `setup` 中使用以下環境變數配置整合。要在此環境變數之外自定義此回撥函式,請參閱此處

設定

< >

( args state model )

設定可選的 DVCLive 整合。要在此環境變數之外自定義此回撥函式,請參閱此處

環境

  • HF_DVCLIVE_LOG_MODEL (str, 可選):是否使用 `dvclive.Live.log_artifact()` 記錄由 Trainer 建立的檢查點。如果設定為 `True` 或 *1*,最終檢查點將在訓練結束時記錄。如果設定為 `all`,整個 TrainingArguments 的 `output_dir` 將在每個檢查點記錄。

class transformers.integrations.SwanLabCallback

< >

( )

一個將指標、媒體、模型檢查點記錄到 SwanLabTrainerCallback

設定

< >

( args state model **kwargs )

設定可選的 SwanLab (swanlab) 整合。

如有需要,可以子類化並覆蓋此方法以自定義設定。更多資訊請參閱此處

您還可以覆蓋以下環境變數。更多關於環境變數的資訊請參閱此處

環境

  • SWANLAB_API_KEY (str, 可選, 預設為 None): 雲API金鑰。登入時,首先檢查此環境變數。如果不存在,系統會檢查使用者是否已登入。如果未登入,則啟動登入過程。

    • 如果將字串傳遞給登入介面,則忽略此環境變數。
    • 如果使用者已登入,此環境變數優先於本地儲存的登入資訊。
  • SWANLAB_PROJECT (str, 可選, 預設為 None): 將此設定為自定義字串,以便將結果儲存在不同的專案中。如果未指定,則使用當前執行目錄的名稱。

  • SWANLAB_LOG_DIR (str, 可選, 預設為 swanlog): 此環境變數指定在本地模式下執行時的日誌檔案儲存路徑。預設情況下,日誌儲存在工作目錄下名為 swanlog 的資料夾中。

  • SWANLAB_MODE (Literal["local", "cloud", "disabled"], 可選, 預設為 cloud): SwanLab 的解析模式,涉及操作員註冊的回撥。目前有三種模式:本地、雲和停用。注意:區分大小寫。更多資訊請參閱此處

  • SWANLAB_LOG_MODEL (str, 可選, 預設為 None): SwanLab 目前不支援儲存模式功能。此功能將在未來版本中提供。

  • SWANLAB_WEB_HOST (str, 可選, 預設為 None): 私有版本 SwanLab 雲環境的 Web 地址(免費)

  • SWANLAB_API_HOST (str, 可選, 預設為 None): 私有版本 SwanLab 雲環境的 API 地址(免費)

TrainerCallback

class transformers.TrainerCallback

< >

( )

引數

  • args (TrainingArguments) — 用於例項化 Trainer 的訓練引數。
  • state (TrainerState) — Trainer 的當前狀態。
  • control (TrainerControl) — 返回給 Trainer 的物件,可用於做出某些決策。
  • model (PreTrainedModeltorch.nn.Module) — 正在訓練的模型。
  • tokenizer (PreTrainedTokenizer) — 用於資料編碼的分詞器。此引數已被棄用,建議使用 processing_class
  • processing_class ([PreTrainedTokenizerBaseImageProcessorProcessorMixinFeatureExtractionMixin]) — 用於資料編碼的處理類。可以是分詞器、處理器、影像處理器或特徵提取器。
  • optimizer (torch.optim.Optimizer) — 用於訓練步驟的最佳化器。
  • lr_scheduler (torch.optim.lr_scheduler.LambdaLR) — 用於設定學習率的排程器。
  • train_dataloader (torch.utils.data.DataLoader, 可選) — 當前用於訓練的資料載入器。
  • eval_dataloader (torch.utils.data.DataLoader, 可選) — 當前用於評估的資料載入器。
  • metrics (dict[str, float]) — 上一評估階段計算的指標。

    這些僅在 on_evaluate 事件中可訪問。

  • logs (dict[str, float]) — 要記錄的值。

    這些僅在 on_log 事件中可訪問。

一個類,用於在某些事件中檢查訓練迴圈狀態並做出決策的物件。在每個這些事件中,以下引數可用:

control 物件是唯一可以被回撥更改的物件,在這種情況下,更改它的事件應返回修改後的版本。

引數 argsstatecontrol 是所有事件的位置引數,所有其他引數都分組在 kwargs 中。您可以使用它們的簽名解包您需要的引數。例如,請參見簡單 PrinterCallback 的程式碼。

示例

class PrinterCallback(TrainerCallback):
    def on_log(self, args, state, control, logs=None, **kwargs):
        _ = logs.pop("total_flos", None)
        if state.is_local_process_zero:
            print(logs)

on_epoch_begin

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

一個 epoch 開始時呼叫的事件。

on_epoch_end

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

一個 epoch 結束時呼叫的事件。

on_evaluate

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

評估階段結束後呼叫的事件。

on_init_end

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

Trainer 初始化結束時呼叫的事件。

on_log

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

記錄最新日誌後呼叫的事件。

on_optimizer_step

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

最佳化器步驟之後但在梯度歸零之前呼叫的事件。用於監控梯度很有用。

on_pre_optimizer_step

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

最佳化器步驟之前但在梯度裁剪之後呼叫的事件。用於監控梯度很有用。

on_predict

< >

( args: TrainingArguments state: TrainerState control: TrainerControl metrics **kwargs )

成功預測後呼叫的事件。

on_prediction_step

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

預測步驟後呼叫的事件。

on_save

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

檢查點儲存後呼叫的事件。

on_step_begin

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

訓練步驟開始時呼叫的事件。如果使用梯度累積,一個訓練步驟可能需要多個輸入。

on_step_end

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

訓練步驟結束時呼叫的事件。如果使用梯度累積,一個訓練步驟可能需要多個輸入。

on_substep_end

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

梯度累積期間一個子步驟結束時呼叫的事件。

on_train_begin

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

訓練開始時呼叫的事件。

on_train_end

< >

( args: TrainingArguments state: TrainerState control: TrainerControl **kwargs )

訓練結束時呼叫的事件。

以下是如何向 PyTorch Trainer 註冊自定義回撥的示例

class MyCallback(TrainerCallback):
    "A callback that prints a message at the beginning of training"

    def on_train_begin(self, args, state, control, **kwargs):
        print("Starting training")


trainer = Trainer(
    model,
    args,
    train_dataset=train_dataset,
    eval_dataset=eval_dataset,
    callbacks=[MyCallback],  # We can either pass the callback class this way or an instance of it (MyCallback())
)

另一種註冊回撥的方法是呼叫 trainer.add_callback(),如下所示

trainer = Trainer(...)
trainer.add_callback(MyCallback)
# Alternatively, we can pass an instance of the callback class
trainer.add_callback(MyCallback())

TrainerState

class transformers.TrainerState

< >

( epoch: typing.Optional[float] = None global_step: int = 0 max_steps: int = 0 logging_steps: int = 500 eval_steps: int = 500 save_steps: int = 500 train_batch_size: typing.Optional[int] = None num_train_epochs: int = 0 num_input_tokens_seen: int = 0 total_flos: float = 0 log_history: list = None best_metric: typing.Optional[float] = None best_global_step: typing.Optional[int] = None best_model_checkpoint: typing.Optional[str] = None is_local_process_zero: bool = True is_world_process_zero: bool = True is_hyper_param_search: bool = False trial_name: typing.Optional[str] = None trial_params: dict = None stateful_callbacks: list = None )

引數

  • epoch (float, 可選) — 僅在訓練期間設定,表示訓練所在的 epoch(小數部分表示當前 epoch 完成的百分比)。
  • global_step (int, 可選, 預設為 0) — 訓練期間,表示已完成的更新步驟數。
  • max_steps (int, 可選, 預設為 0) — 當前訓練期間要執行的更新步驟數。
  • logging_steps (int, 可選, 預設為 500) — 每 X 更新步驟記錄一次日誌。
  • eval_steps (int, 可選) — 每 X 步驟執行一次評估。
  • save_steps (int, 可選, 預設為 500) — 每 X 更新步驟儲存一次檢查點。
  • train_batch_size (int, 可選) — 訓練資料載入器的批大小。僅在使用了 auto_find_batch_size 時需要。
  • num_input_tokens_seen (int, 可選, 預設為 0) — 當跟蹤輸入 token 時,訓練期間已看到的 token 數量(輸入 token 的數量,而非預測 token 的數量)。
  • total_flos (float, 可選, 預設為 0) — 模型自訓練開始以來完成的浮點運算總數(儲存為浮點數以避免溢位)。
  • log_history (list[dict[str, float]], 可選) — 自訓練開始以來的日誌列表。
  • best_metric (float, 可選) — 當跟蹤最佳模型時,迄今為止遇到的最佳指標值。
  • best_global_step (int, 可選) — 當跟蹤最佳模型時,遇到最佳指標時的步驟。用於設定 best_model_checkpoint
  • best_model_checkpoint (str, 可選) — 當跟蹤最佳模型時,迄今為止遇到的最佳模型的檢查點名稱。
  • is_local_process_zero (bool, 可選, 預設為 True) — 此程序是否為本地(例如,如果以分散式方式在多臺機器上訓練)主程序。
  • is_world_process_zero (bool, 可選, 預設為 True) — 此程序是否為全域性主程序(當以分散式方式在多臺機器上訓練時,此引數僅對一個程序為 True)。
  • is_hyper_param_search (bool, 可選, 預設為 False) — 是否正在使用 Trainer.hyperparameter_search 進行超引數搜尋。這將影響資料在 TensorBoard 中的記錄方式。
  • stateful_callbacks (list[StatefulTrainerCallback], 可選) — 附加到 Trainer 的回撥,其狀態應被儲存或恢復。相關回調應實現 statefrom_state 函式。

一個包含 Trainer 內部狀態的類,該狀態將在檢查點時與模型和最佳化器一起儲存,並傳遞給 TrainerCallback

在本類中,一步被理解為一次更新步。當使用梯度累積時,一次更新步可能需要多次正向和反向傳播:如果您使用 gradient_accumulation_steps=n,那麼一次更新步需要經過 *n* 個批次。

compute_steps

< >

( args max_steps )

根據是否為比例來計算並存儲用於日誌記錄、評估和儲存步驟的絕對值。

init_training_references

< >

( trainer max_steps num_train_epochs trial )

儲存 self 中所需的初始訓練引用

load_from_json

< >

( json_path: str )

json_path 的內容建立例項。

save_to_json

< >

( json_path: str )

以 JSON 格式將此例項的內容儲存在 json_path 中。

TrainerControl

transformers.TrainerControl

< >

( should_training_stop: bool = False should_epoch_stop: bool = False should_save: bool = False should_evaluate: bool = False should_log: bool = False )

引數

  • should_training_stop (bool, 可選, 預設為 False) — 訓練是否應該中斷。

    如果為 True,此變數將不會被重置為 False。訓練將直接停止。

  • should_epoch_stop (bool, 可選, 預設為 False) — 當前 epoch 是否應該中斷。

    如果為 True,此變數將在下一個 epoch 開始時被重置為 False

  • should_save (bool, 可選, 預設為 False) — 模型是否應該在此步儲存。

    如果為 True,此變數將在下一步開始時被重置為 False

  • should_evaluate (bool, 可選, 預設為 False) — 模型是否應該在此步評估。

    如果為 True,此變數將在下一步開始時被重置為 False

  • should_log (bool, 可選, 預設為 False) — 日誌是否應該在此步報告。

    如果為 True,此變數將在下一步開始時被重置為 False

一個處理 Trainer 控制流的類。此類由 TrainerCallback 使用,以啟用訓練迴圈中的某些開關。

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.