TRL 文件

指令碼工具

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

指令碼工具

ScriptArguments

class trl.ScriptArguments

< >

( dataset_name: typing.Optional[str] = None dataset_config: typing.Optional[str] = None dataset_train_split: str = 'train' dataset_test_split: str = 'test' dataset_streaming: bool = False gradient_checkpointing_use_reentrant: bool = False ignore_bias_buffers: bool = False )

引數

  • dataset_name (str) — 資料集名稱。
  • dataset_config (strNone, 可選, 預設為 None) — 資料集配置名稱。對應於 load_dataset 函式的 `name` 引數。
  • dataset_train_split (str, 可選, 預設為 "train") — 用於訓練的資料集分割。
  • dataset_test_split (str, 可選, 預設為 "test") — 用於評估的資料集分割。
  • dataset_streaming (bool, 可選, 預設為 False) — 是否以流式方式載入資料集。如果為 True,將以流式模式載入資料集。
  • gradient_checkpointing_use_reentrant (bool, 可選, 預設為 False) — 是否為梯度檢查點應用 `use_reentrant`。
  • ignore_bias_buffers (bool, 可選, 預設為 False) — 用於分散式訓練的除錯引數。修復 DDP 中 LM 偏置/掩碼緩衝區的問題 - 無效的標量型別、原地操作。請參閱 https://github.com/huggingface/transformers/issues/22482#issuecomment-1595790992

所有指令碼通用的引數。

TrlParser

class trl.TrlParser

< >

( dataclass_types: typing.Union[transformers.hf_argparser.DataClassType, collections.abc.Iterable[transformers.hf_argparser.DataClassType], NoneType] = None **kwargs )

引數

  • dataclass_types (Union[DataClassType, Iterable[DataClassType]]None, 可選, 預設為 None) — 用於引數解析的資料類型別。
  • **kwargs — 傳遞給 `transformers.HfArgumentParser` 建構函式的額外關鍵字引數。

`transformers.HfArgumentParser` 的一個子類,旨在用資料類支援的配置解析命令列引數,同時還支援載入配置檔案和管理環境變數。

示例

# config.yaml
env:
    VAR1: value1
arg1: 23
# main.py
import os
from dataclasses import dataclass
from trl import TrlParser


@dataclass
class MyArguments:
    arg1: int
    arg2: str = "alpha"


parser = TrlParser(dataclass_types=[MyArguments])
training_args = parser.parse_args_and_config()

print(training_args, os.environ.get("VAR1"))
$ python main.py --config config.yaml
(MyArguments(arg1=23, arg2='alpha'),) value1

$ python main.py --arg1 5 --arg2 beta
(MyArguments(arg1=5, arg2='beta'),) None

parse_args_and_config

< >

( args: typing.Optional[collections.abc.Iterable[str]] = None return_remaining_strings: bool = False fail_with_unknown_args: bool = True )

將命令列引數和配置檔案解析為指定資料類型別的例項。

此方法包裝了 `transformers.HfArgumentParser.parse_args_into_dataclasses`,並且還解析由 `--config` 標誌指定的配置檔案。配置檔案(YAML 格式)提供替換資料類中預設值的引數值。命令列引數可以覆蓋配置檔案設定的值。此方法還會設定配置檔案 `env` 欄位中指定的任何環境變數。

parse_args_into_dataclasses

< >

( args = None return_remaining_strings = False look_for_args_file = True args_filename = None args_file_flag = None ) 由以下組成的元組

引數

  • args — 要解析的字串列表。預設值取自 sys.argv。(與 argparse.ArgumentParser 相同)
  • return_remaining_strings — 如果為 true,也返回剩餘引數字串的列表。
  • look_for_args_file — 如果為 true,將查詢與此程序的入口點指令碼具有相同基本名稱的“.args”檔案,並將其潛在內容附加到命令列引數中。
  • args_filename — 如果不為 None,將使用此檔案,而不是前一個引數中指定的“.args”檔案。
  • args_file_flag — 如果不為 None,將查詢命令列引數中用此標誌指定的檔案。該標誌可以多次指定,優先順序由順序決定(最後一個獲勝)。

返回

由以下組成的元組

  • 資料類例項的順序與傳遞給初始化器的順序相同。
  • 如果適用,一個額外的名稱空間用於初始化後新增到解析器的更多(非資料類支援的)引數。
  • 潛在的剩餘引數字串列表。(與 argparse.ArgumentParser.parse_known_args 相同)

將命令列引數解析為指定資料類型別的例項。

這依賴於 argparse 的 `ArgumentParser.parse_known_args`。請參閱文件:docs.python.org/3/library/argparse.html#argparse.ArgumentParser.parse_args

set_defaults_with_config

< >

( **kwargs )

使用透過關鍵字引數提供的值覆蓋解析器的預設值,包括子解析器。

任何具有更新預設值的引數,如果之前是必需的,也將被標記為非必需。

返回解析器未使用的字串列表。

< > 在 GitHub 上更新

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