Tokenizers文档

模型

Hugging Face's logo
加入Hugging Face社区

并获得增强的文档体验

开始使用

模型

Python
Rust
Node

BPE

类名 tokenizers.models.BPE

( vocab = None merges = None cache_capacity = None dropout = None unk_token = None continuing_subword_prefix = None end_of_word_suffix = None fuse_unk = None byte_fallback = False )

参数

  • vocab (Dict[str, int], 可选) — 一组字符串键和其ID的字典 {"am": 0,...}
  • merges (List[Tuple[str, str]], 可选) — 一组标记配对列表(_tuple[str, str][("a", "b"),...]
  • cache_capacity (int, 可选) — BPE 缓存可以包含的单词数量。缓存通过保留合并操作的中间结果来加速处理过程。
  • dropout (float, 可选) — 表示要使用的 BPE dropout 的 float 值,介于 0 和 1 之间。
  • unk_token (str, 可选) — 模型将使用的未知标记。
  • continuing_subword_prefix (str, 可选) — 添加给不代表单词开头的子词单元的前缀。
  • end_of_word_suffix (str, 可选) — 添加给代表单词结尾的子词单元的后缀。
  • fuse_unk (bool, 可选) — 是否将任何后续的未知标记融合成单个标记。
  • byte_fallback (bool, 可选) — 是否使用 spm 字节回退技巧(默认为 False)

BPE (字节对编码)算法的一个实现

from_file

( vocab merge **kwargs ) BPE

参数

  • vocab (str) — vocab.json 文件的路径
  • merges (str) — merges.txt 文件的路径

返回

BPE

从这些文件加载的 BPE 实例

从给定的文件中实例化一个 BPE 模型。

此方法大致等同于这样做

vocab, merges = BPE.read_file(vocab_filename, merges_filename)
bpe = BPE(vocab, merges)

如果你不需要保留 vocab, merges 的值,这个方法比手动调用 read_file() 来初始化一个 BPE 更加优化

read_file

vocab merges 包含vocab和merges的 元组

参数

  • vocab (str) — vocab.json 文件的路径
  • merges (str) — merges.txt 文件的路径

返回

包含vocab和merges的 元组

加载到内存中的词汇表和merges

读取 vocab.jsonmerges.txt 文件

该方法提供了一种读取和解析这些文件内容的方法,返回相关数据结构。如果您想从内存中实例化一些BPE模型,该方法为您提供了标准文件的预期输入。

模型

tokenizers.models.Model

( )

所有模型的基础类

模型表示实际的分词算法。这是包含和管理已学习词汇的部分。

该类不能直接构造。请使用其中一种具体模型。

get_trainer

( ) Trainer

返回

Trainer

用于训练此模型的Trainer

获取相关联的Trainer

检索与此模型关联的Trainer

id_to_token

( id ) str

参数

  • id (int) — 将其转换为标记的ID

返回

str

ID关联的标记

获取与ID关联的标记

save

( folder prefix ) List[str]

参数

  • folder (str) — 保存各种文件的目标文件夹的路径
  • prefix (str, 可选) — 可选前缀,用于为每个文件名添加前缀

返回

List[str]

保存的文件列表

保存当前模型

将当前模型保存到指定的文件夹中,并为即将创建的文件使用指定的前缀。该文件夹中已存在的同名文件将被覆盖。

token_to_id

( tokens ) int

参数

  • token (str) — 将转换为ID的标记

返回

int

与标记关联的ID

获取与标记关联的ID

标记化

( sequence ) List of Token

参数

  • sequence (str) — 要进行标记化的序列

返回

List of Token

生成的标记

标记化序列

Unigram

class tokenizers.models.Unigram

( vocab unk_id byte_fallback )

参数

  • vocab (List[Tuple[str, float]], optional, optional) — 词汇项及其相对得分的列表 [(“am”,-0.2442),…]

Unigram算法的实现

WordLevel

tokenizers.models.WordLevel

( vocab unk_token )

参数

  • vocab (str, optional) — 字符串键及其ID的字典 {"am": 0,...}
  • unk_token (str, 可选) — 模型使用的未知标记。

WordLevel算法的实现

最简单的基于将标记映射到其相应id的标记器模型

from_file

(vocabunk_token)WordLevel

参数

  • vocab (str) — vocab.json文件的路径

返回

WordLevel

从文件加载的WordLevel实例

从给定的文件创建一个WordLevel模型实例

此方法大致等同于这样做

vocab = WordLevel.read_file(vocab_filename)
wordlevel = WordLevel(vocab)

如果你不需要保留vocab值,这个方法比手动调用read_file()来初始化WordLevel更优化

read_file

(vocab)Dict[str, int]

参数

  • vocab (str) — vocab.json文件的路径

返回

Dict[str, int]

词汇表作为dict

读取vocab.json

该方法提供了一种读取和解析词汇文件内容的方法,返回相关数据结构。如果您想从内存中实例化一些WordLevel模型,此方法提供了标准文件所需的预期输入。

WordPiece

tokenizers.models.WordPiece

( vocab unk_token max_input_chars_per_word )

参数

  • vocab (Dict[str, int], optional) — 字符串键及其id的字典 {"am": 0,...}
  • unk_token (str, optional) — 模型使用的未知标记。
  • max_input_chars_per_word (int, optional) — 单个单词中授权的字符数最大值。

WordPiece算法的实现

from_file

( vocab **kwargs ) WordPiece

参数

  • vocab (str) — 到 vocab.txt 文件的路径

返回

WordPiece

从文件加载的 WordPiece 实例

从给定文件实例化 WordPiece 模型

此方法大致等同于这样做

vocab = WordPiece.read_file(vocab_filename)
wordpiece = WordPiece(vocab)

如果您不需要保留周围的 vocab 值,此方法比手动调用 read_file() 来初始化一个 WordPiece 更优化。

read_file

(vocab)Dict[str, int]

参数

  • vocab (str) — 到 vocab.txt 文件的路径

返回

Dict[str, int]

词汇表作为dict

读取 vocab.txt 文件

此方法提供了一种读取和解析 WordPiece 模型所使用的标准 vocab.txt 文件内容的方式,返回相关数据结构。如果您想在内存中实例化某些 WordPiece 模型,此方法提供了从标准文件中获取预期输入。