分词器¶
- class torchrl.envs.transforms.Tokenizer(in_keys: Sequence[NestedKey], out_keys: Sequence[NestedKey], in_keys_inv: Sequence[NestedKey] | None = None, out_keys_inv: Sequence[NestedKey] | None = None, *, tokenizer: transformers.PretrainedTokenizerBase = None, use_raw_nontensor: bool = False, additional_tokens: List[str] | None = None, skip_special_tokens: bool = True, add_special_tokens: bool = False, padding: bool = True, max_length: int | None = None)[源]¶
对指定的输入应用分词操作。
- 参数:
in_keys (sequence of NestedKey) – 分词操作输入的键。
out_keys (sequence of NestedKey) – 分词操作输出的键。
in_keys_inv (sequence of NestedKey, 可选) – 在逆向调用期间分词操作输入的键。
out_keys_inv (sequence of NestedKey, 可选) – 在逆向调用期间分词操作输出的键。
- 关键字参数:
tokenizer (transformers.PretrainedTokenizerBase 或 str, 可选) – 要使用的分词器。如果为
None
,则默认为“bert-base-uncased”。如果提供字符串,应为预训练分词器的名称。use_raw_nontensor (bool, 可选) – 如果为
False
,则在调用分词函数之前,从NonTensorData
/NonTensorStack
输入中提取数据。如果为True
,则直接将原始NonTensorData
/NonTensorStack
输入提供给分词函数,该函数必须支持这些输入。默认为False
。additional_tokens (List[str], 可选) – 要添加到分词器词汇表中的附加词元列表。
注意
此 transform 可用于将输出字符串转换为词元,也可用于将词元化的动作或状态转换回字符串。如果环境具有字符串状态规范 (state-spec),则转换后的版本将具有词元化状态规范。如果它是字符串动作规范 (action spec),则会生成词元化动作规范。
- transform_input_spec(input_spec: Composite) Composite [源]¶
转换输入规范,使结果规范与 transform 映射匹配。
- 参数:
input_spec (TensorSpec) – transform 前的规范
- 返回:
transform 后的预期规范