快捷方式

TikTokenBaseTokenizer

class torchtune.modules.tokenizers.TikTokenBaseTokenizer(path: str, name: str, pattern: str, bos_id: int, eos_id: int, special_tokens: Dict[str, int])[source]

tiktoken 编码的轻量级包装器。此类还处理将输入文本分解为最大长度的子字符串,并拆分长时间重复,以提高编码速度。

参数:
  • path (str) – 预训练分词器检查点文件的路径。

  • name (str) – 分词器的名称(由 tiktoken 用于识别)。

  • pattern (str) – 用于将输入文本拆分为块的正则表达式模式,然后再传递给字节对编码。

  • bos_id (int) – 序列开始标记 ID。这可能存在于 special_tokens 中,也可能不存在。

  • eos_id (int) – 序列结束标记 ID。这可能存在于 special_tokens 中,也可能不存在。

  • special_tokens (Dict[str, int]) – 特殊标记到其 ID 的映射。

示例

>>> tokenizer = TikTokenBaseTokenizer("/path/to/tt_model")
>>> tokenized_text = tokenizer.encode("Hello world!", add_bos=True, add_eos=True)
>>> print(tokenized_text)
[1, 31587, 29644, 102, 2]
decode(token_ids: List[int], truncate_at_eos: bool = True, skip_special_tokens: bool = True) str[source]

将标记 ID 列表解码为字符串。

参数:
  • token_ids (List[int]) – 标记 ID 列表。

  • truncate_at_eos (bool) – 是否在序列结束标记处截断字符串。默认为 True。

  • skip_special_tokens (bool) – 是否在解码字符串中显示或跳过特殊标记。默认为 True。

返回:

解码后的字符串。

返回类型:

str

encode(text: str, add_bos: bool = True, add_eos: bool = True) List[int][source]

将字符串编码为令牌 ID 列表。假设字符串不包含特殊令牌。

参数:
  • text (str) – 要编码的字符串。

  • add_bos (bool) – 是否将 tokenizer 的 bos_id 添加到编码的字符串中。默认值为 True。

  • add_eos (bool) – 是否将 tokenizer 的 eos_id 添加到编码的字符串中。默认值为 True。

返回:

令牌 ID 列表。

返回类型:

List[int]

文档

访问 PyTorch 的完整开发人员文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源