Transformers.js 文档

分词器

您正在查看的是需要从源码安装。如果你想使用常规的 npm 安装,请查看最新的稳定版本 (v3.0.0)。
Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

分词器

分词器用于为模型准备文本输入。

示例: 创建一个 AutoTokenizer 并用它来对一个句子进行分词。这将根据 tokenizer.json 中定义的分词器类型自动检测分词器类型。

import { AutoTokenizer } from '@huggingface/transformers';

const tokenizer = await AutoTokenizer.from_pretrained('Xenova/bert-base-uncased');
const { input_ids } = await tokenizer('I love transformers!');
// Tensor {
//   data: BigInt64Array(6) [101n, 1045n, 2293n, 19081n, 999n, 102n],
//   dims: [1, 6],
//   type: 'int64',
//   size: 6,
// }

tokenizers.TokenizerModel ⇐ <code> Callable </code>

分词器模型的抽象基类。

类型: tokenizers 的静态类
继承自: Callable


new TokenizerModel(config)

创建一个新的 TokenizerModel 实例。

参数量类型描述
configObject

TokenizerModel 的配置对象。


tokenizerModel.vocab : <code> Array. < string > </code>

类型: TokenizerModel 的实例属性


tokenizerModel.tokens_to_ids : <code> Map. < string, number > </code>

词元到 ID 的映射。

类型: TokenizerModel 的实例属性


tokenizerModel.fuse_unk : <code> boolean </code>

编码时是否合并未知词元。默认为 false。

类型: TokenizerModel 的实例属性


tokenizerModel._call(tokens) ⇒ <code> Array. < string > </code>

调用 TokenizerModel 实例的内部函数。

类型: TokenizerModel 的实例方法
重写: _call
返回: Array.<string> - 编码后的词元。

参数量类型描述
tokensArray.<string>

要编码的词元。


tokenizerModel.encode(tokens) ⇒ <code> Array. < string > </code>

将词元列表编码为词元 ID 列表。

类型: TokenizerModel 的实例方法
返回: Array.<string> - 编码后的词元。
抛出:

  • 如果在子类中未实现,则会抛出错误。
参数量类型描述
tokensArray.<string>

要编码的词元。


tokenizerModel.convert_tokens_to_ids(tokens) ⇒ <code> Array. < number > </code>

将词元列表转换为词元 ID 列表。

类型: TokenizerModel 的实例方法
返回: Array.<number> - 转换后的词元 ID。

参数量类型描述
tokensArray.<string>

要转换的词元。


tokenizerModel.convert_ids_to_tokens(ids) ⇒ <code> Array. < string > </code>

将词元 ID 列表转换为词元列表。

类型: TokenizerModel 的实例方法
返回: Array.<string> - 转换后的词元。

参数量类型描述
idsArray<number> | Array<bigint>

要转换的词元 ID。


TokenizerModel.fromConfig(config, ...args) ⇒ <code> TokenizerModel </code>

根据提供的配置对象实例化一个新的 TokenizerModel 实例。

类型: TokenizerModel 的静态方法
返回: TokenizerModel - 一个新的 TokenizerModel 实例。
抛出:

  • 如果配置中的 TokenizerModel 类型未被识别,将抛出错误。
参数量类型描述
configObject

TokenizerModel 的配置对象。

...args*

传递给特定 TokenizerModel 构造函数的可选参数。


tokenizers.PreTrainedTokenizer

类型: tokenizers 的静态类


new PreTrainedTokenizer(tokenizerJSON, tokenizerConfig)

创建一个新的 PreTrainedTokenizer 实例。

参数量类型描述
tokenizerJSONObject

分词器的 JSON。

tokenizerConfigObject

分词器的配置。


preTrainedTokenizer.added_tokens : <code> Array. < AddedToken > </code>

类型: PreTrainedTokenizer 的实例属性


preTrainedTokenizer.added_tokens_map : <code> Map. < string, AddedToken > </code>

类型: PreTrainedTokenizer 的实例属性


preTrainedTokenizer.remove_space : <code> boolean </code>

是否在分词时去除文本(移除字符串前后多余的空格)。

类型: PreTrainedTokenizer 的实例属性


preTrainedTokenizer._call(text, options) ⇒ <code> BatchEncoding </code>

编码/分词给定的文本。

类型: PreTrainedTokenizer 的实例方法
返回: BatchEncoding - 传递给模型的对象。

参数量类型默认描述
textstring | Array<string>

要分词的文本。

选项Object

一个可选对象,包含以下属性

[options.text_pair]string | Array<string>null

要编码的可选第二个序列。如果设置,必须与文本类型相同。

[options.padding]boolean | 'max_length'false

是否填充输入序列。

[options.add_special_tokens]booleantrue

是否添加与相应模型相关的特殊词元。

[options.truncation]boolean

是否截断输入序列。

[options.max_length]数字

返回列表的最大长度,以及可选的填充长度。

[options.return_tensor]booleantrue

是否以张量或数组形式返回结果。

[options.return_token_type_ids]boolean

是否返回词元类型 ID。


preTrainedTokenizer._encode_text(text) ⇒ <code> Array < string > </code> | <code> null </code>

使用分词器的预处理器流水线编码单个文本。

类型: PreTrainedTokenizer 的实例方法
返回: Array<string> | null - 编码后的词元。

参数量类型描述
textstring | null

要编码的文本。


preTrainedTokenizer._tokenize_helper(text, options) ⇒ <code> * </code>

用于分词一个文本以及可选的文本对的内部辅助函数。

类型: PreTrainedTokenizer 的实例方法
返回: * - 一个包含词元和可选的词元类型 ID 的对象。

参数量类型默认描述
text字符串

要分词的文本。

选项Object

一个可选对象,包含以下属性

[options.pair]字符串null

要分词的可选第二个文本。

[options.add_special_tokens]booleanfalse

是否添加与相应模型相关的特殊词元。


preTrainedTokenizer.tokenize(text, options) ⇒ <code> Array. < string > </code>

将字符串转换为词元序列。

类型: PreTrainedTokenizer 的实例方法
返回: Array.<string> - 词元列表。

参数量类型默认描述
text字符串

要编码的序列。

选项Object

一个可选对象,包含以下属性

[options.pair]字符串

与第一个序列一起编码的第二个序列。

[options.add_special_tokens]booleanfalse

是否添加与相应模型相关的特殊词元。


preTrainedTokenizer.encode(text, options) ⇒ <code> Array. < number > </code>

使用模型的tokenizer编码单个文本或文本对。

类型: PreTrainedTokenizer 的实例方法
返回: Array.<number> - 表示编码后文本的词元 ID 数组。

参数量类型默认描述
text字符串

要编码的文本。

选项Object

一个可选对象,包含以下属性

[options.text_pair]字符串null

要编码的可选第二个文本。

[options.add_special_tokens]booleantrue

是否添加与相应模型相关的特殊词元。

[options.return_token_type_ids]boolean

是否返回 token_type_ids。


preTrainedTokenizer.batch_decode(batch, decode_args) ⇒ <code> Array. < string > </code>

解码一批分词后的序列。

类型: PreTrainedTokenizer 的实例方法
返回: Array.<string> - 解码后的序列列表。

参数量类型描述
batchArray<Array<number>> | Tensor

分词后的输入序列的列表/张量。

decode_argsObject

(可选) 包含解码参数的对象。


preTrainedTokenizer.decode(token_ids, [decode_args]) ⇒ <code> string </code>

将词元 ID 序列解码回字符串。

类型: PreTrainedTokenizer 的实例方法
返回: string - 解码后的字符串。
抛出:

  • Error 如果 `token_ids` 不是一个非空的整数数组。
参数量类型默认描述
token_idsArray<number> | Array<bigint> | Tensor

要解码的词元 ID 列表/张量。

[decode_args]Object{}
[decode_args.skip_special_tokens]booleanfalse

如果为 true,则从输出字符串中移除特殊词元。

[decode_args.clean_up_tokenization_spaces]booleantrue

如果为 true,则移除标点符号前和缩写形式前的空格。


preTrainedTokenizer.decode_single(token_ids, decode_args) ⇒ <code> string </code>

将单个词元 ID 列表解码为字符串。

类型: PreTrainedTokenizer 的实例方法
返回: string - 解码后的字符串

参数量类型默认描述
token_idsArray<number> | Array<bigint>

要解码的词元 ID 列表

decode_argsObject

解码的可选参数

[decode_args.skip_special_tokens]booleanfalse

解码时是否跳过特殊词元

[decode_args.clean_up_tokenization_spaces]boolean

解码时是否清理分词空格。如果为 null,该值将设置为 this.decoder.cleanup(如果存在),否则回退到 this.clean_up_tokenization_spaces(如果存在),再回退到 true


preTrainedTokenizer.get_chat_template(options) ⇒ <code> string </code>

检索用于分词聊天消息的聊天模板字符串。此模板由 apply_chat_template 方法在内部使用,也可用于外部检索模型的聊天模板,以更好地跟踪生成过程。

类型: PreTrainedTokenizer 的实例方法
返回: string - 聊天模板字符串。

参数量类型默认描述
选项Object

一个可选对象,包含以下属性

[options.chat_template]字符串null

用于此转换的 Jinja 模板或模板名称。通常不需要传递任何内容给此参数,因为默认会使用模型的模板。

[options.tools]Array.<Object>

模型可访问的工具(可调用函数)列表。如果模板不支持函数调用,此参数将无效。每个工具应以 JSON Schema 形式传递,提供工具的名称、描述和参数类型。更多信息请参阅我们的聊天模板指南


preTrainedTokenizer.apply_chat_template(conversation, options) ⇒ <code> string </code> | <code> Tensor </code> | <code> Array < number > </code> | <code> Array < Array < number > > </code> | <code> BatchEncoding </code>

将包含 "role""content" 键的消息对象列表转换为词元 ID 列表。此方法旨在与聊天模型一起使用,并将读取分词器的 chat_template 属性以确定转换时使用的格式和控制词元。

有关更多信息,请参阅此处

示例: 将聊天模板应用于对话。

import { AutoTokenizer } from "@huggingface/transformers";

const tokenizer = await AutoTokenizer.from_pretrained("Xenova/mistral-tokenizer-v1");

const chat = [
  { "role": "user", "content": "Hello, how are you?" },
  { "role": "assistant", "content": "I'm doing great. How can I help you today?" },
  { "role": "user", "content": "I'd like to show off how chat templating works!" },
]

const text = tokenizer.apply_chat_template(chat, { tokenize: false });
// "<s>[INST] Hello, how are you? [/INST]I'm doing great. How can I help you today?</s> [INST] I'd like to show off how chat templating works! [/INST]"

const input_ids = tokenizer.apply_chat_template(chat, { tokenize: true, return_tensor: false });
// [1, 733, 16289, 28793, 22557, 28725, 910, 460, 368, 28804, 733, 28748, 16289, 28793, 28737, 28742, 28719, 2548, 1598, 28723, 1602, 541, 315, 1316, 368, 3154, 28804, 2, 28705, 733, 16289, 28793, 315, 28742, 28715, 737, 298, 1347, 805, 910, 10706, 5752, 1077, 3791, 28808, 733, 28748, 16289, 28793]

类型: PreTrainedTokenizer 的实例方法
返回: string | Tensor | Array<number> | Array<Array<number>> | BatchEncoding - 分词后的输出。

参数量类型默认描述
conversationArray.<Message>

一个包含 "role""content" 键的消息对象列表,代表到目前为止的聊天记录。

选项Object

一个可选对象,包含以下属性

[options.chat_template]字符串null

用于此转换的 Jinja 模板。如果未传递此参数,则将使用模型的聊天模板。

[options.tools]Array.<Object>

模型可访问的工具(可调用函数)列表。如果模板不支持函数调用,此参数将无效。每个工具应以 JSON Schema 形式传递,提供工具的名称、描述和参数类型。更多信息请参阅我们的聊天模板指南

[options.documents]*

表示文档的字典列表,如果模型正在执行 RAG(检索增强生成),这些文档将对模型可用。如果模板不支持 RAG,此参数将无效。我们建议每个文档都是一个包含 "title" 和 "text" 键的字典。有关使用聊天模板传递文档的示例,请参阅聊天模板指南的 RAG 部分。

[options.add_generation_prompt]booleanfalse

是否用表示助手消息开始的词元结束提示。当您想从模型生成响应时,这很有用。请注意,此参数将传递给聊天模板,因此模板必须支持此参数才能生效。

[options.tokenize]booleantrue

是否对输出进行分词。如果为 false,输出将是字符串。

[options.padding]booleanfalse

是否将序列填充到最大长度。如果 tokenize 为 false,则无效。

[options.truncation]booleanfalse

是否将序列截断到最大长度。如果 tokenize 为 false,则无效。

[options.max_length]数字

用于填充或截断的最大长度(以词元为单位)。如果 tokenize 为 false,则无效。如果未指定,将使用分词器的 max_length 属性作为默认值。

[options.return_tensor]booleantrue

是否以 Tensor 或 Array 的形式返回输出。如果 tokenize 为 false,则无效。

[options.return_dict]booleantrue

是否返回带有命名输出的字典。如果 tokenize 为 false,则无效。

[options.tokenizer_kwargs]Object{}

传递给分词器的其他选项。


PreTrainedTokenizer.from_pretrained(pretrained_model_name_or_path, options) ⇒ <code> Promise. < PreTrainedTokenizer > </code>

从给定的 pretrained_model_name_or_path 加载预训练的分词器。

类型: PreTrainedTokenizer 的静态方法
返回: Promise.<PreTrainedTokenizer> - PreTrainedTokenizer 类的新实例。
抛出:

  • Error 如果在 `pretrained_model_name_or_path` 中找不到 tokenizer.json 或 tokenizer_config.json 文件,则抛出错误。
参数量类型描述
pretrained_model_name_or_path字符串

预训练分词器的路径。

选项PretrainedTokenizerOptions

加载分词器的其他选项。


tokenizers.BertTokenizer ⇐ <code> PreTrainedTokenizer </code>

BertTokenizer 是一个用于为 BERT 模型分词文本的类。

类型: tokenizers 的静态类
继承自: PreTrainedTokenizer


tokenizers.AlbertTokenizer ⇐ <code> PreTrainedTokenizer </code>

Albert 分词器

类型: tokenizers 的静态类
继承自: PreTrainedTokenizer


tokenizers.NllbTokenizer

NllbTokenizer 类用于为 NLLB(“不让任何语言掉队”)模型进行文本分词。

“不让任何语言掉队”(NLLB)是一个首创的、AI 突破性项目,它开源了能够直接在 200 多种语言对之间提供高质量翻译的模型——包括阿斯图里亚斯语、卢干达语、乌尔都语等低资源语言。它旨在帮助人们与任何人、在任何地方进行交流,无论他们的语言偏好如何。更多信息,请查看他们的论文

有关支持的语言列表(及其语言代码),

类型: tokenizers 的静态类
请参阅: https://github.com/facebookresearch/flores/blob/main/flores200/README.md#languages-in-flores-200


nllbTokenizer._build_translation_inputs(raw_inputs, tokenizer_options, generate_kwargs) ⇒ <code> Object </code>

NllbTokenizer 构建翻译输入的辅助函数。

类型: NllbTokenizer 的实例方法
返回: Object - 传递给模型的对象。

参数量类型描述
raw_inputsstring | Array<string>

要分词的文本。

tokenizer_optionsObject

发送给分词器的选项

generate_kwargsObject

生成选项。


tokenizers.M2M100Tokenizer

M2M100Tokenizer 类用于为 M2M100(“多对多”)模型进行文本分词。

M2M100 是一个多语言编码器-解码器(seq-to-seq)模型,为多对多(Many-to-Many)多语言翻译任务而训练。它在这篇论文中被提出,并首次在这个代码库中发布。

有关支持的语言列表(及其语言代码),

类型: tokenizers 的静态类
另见: https://huggingface.co/facebook/m2m100_418M#languages-covered


m2M100Tokenizer._build_translation_inputs(raw_inputs, tokenizer_options, generate_kwargs) ⇒ <code> Object </code>

用于为 M2M100Tokenizer 构建翻译输入的辅助函数。

类型: M2M100Tokenizer 的实例方法
返回: Object - 传递给模型的对象。

参数量类型描述
raw_inputsstring | Array<string>

要分词的文本。

tokenizer_optionsObject

发送给分词器的选项

generate_kwargsObject

生成选项。


tokenizers.WhisperTokenizer ⇐ <code> PreTrainedTokenizer </code>

WhisperTokenizer 分词器

类型: tokenizers 的静态类
继承自: PreTrainedTokenizer


whisperTokenizer._decode_asr(sequences, options) ⇒ <code> * </code>

解码自动语音识别(ASR)序列。

类型: WhisperTokenizer 的实例方法
返回: * - 解码后的序列。

参数量类型描述
sequences*

要解码的序列。

选项Object

用于解码的选项。


whisperTokenizer.decode() : <code> * </code>

类型: WhisperTokenizer 的实例方法


tokenizers.MarianTokenizer

类型: tokenizers 的静态类
待办


new MarianTokenizer(tokenizerJSON, tokenizerConfig)

创建一个新的 MarianTokenizer 实例。

参数量类型描述
tokenizerJSONObject

分词器的 JSON。

tokenizerConfigObject

分词器的配置。


marianTokenizer._encode_text(text) ⇒ <code> Array </code>

编码单个文本。必须重写此方法,因为在使用 sentencepiece 模型编码之前,必须移除语言代码。

类型: MarianTokenizer 的实例方法
返回: Array - 编码后的词元。
另见: https://github.com/huggingface/transformers/blob/12d51db243a00726a548a43cc333390ebae731e3/src/transformers/models/marian/tokenization_marian.py#L204-L213

参数量类型描述
textstring | null

要编码的文本。


tokenizers.AutoTokenizer

这是一个辅助类,用于通过 from_pretrained 函数实例化预训练的分词器。所选择的分词器类由分词器配置中指定的类型决定。

类型: tokenizers 的静态类


new AutoTokenizer()

示例

const tokenizer = await AutoTokenizer.from_pretrained('Xenova/bert-base-uncased');

AutoTokenizer.from_pretrained(pretrained_model_name_or_path, options) ⇒ <code> Promise. < PreTrainedTokenizer > </code>

从一个预训练模型实例化库中的一个分词器类。

要实例化的分词器类是根据配置对象(作为参数传入或从 pretrained_model_name_or_path 加载)的 tokenizer_class 属性来选择的。

类型: AutoTokenizer 的静态方法
返回: Promise.<PreTrainedTokenizer> - PreTrainedTokenizer 类的一个新实例。

参数量类型描述
pretrained_model_name_or_path字符串

预训练模型的名称或路径。可以是

  • 一个字符串,表示托管在 huggingface.co 上模型仓库中的预训练分词器的 模型 ID。有效的模型 ID 可以位于根级别,如 bert-base-uncased,或在用户或组织名称空间下,如 dbmdz/bert-base-german-cased
  • 一个指向包含分词器文件的 目录 的路径,例如 ./my_model_directory/
选项PretrainedTokenizerOptions

加载分词器的其他选项。


tokenizers.is_chinese_char(cp) ⇒ <code> boolean </code>

检查给定的 Unicode 码点是否表示一个 CJK(中文、日文或韩文)字符。

“中文字符”被定义为 CJK Unicode 区块中的任何字符:https://en.wikipedia.org/wiki/CJK_Unified_Ideographs_(Unicode_block)

请注意,尽管其名称如此,CJK Unicode 区块并不包含所有的日文和韩文字符。现代韩文的谚文字母位于一个不同的区块,日文的平假名和片假名也是如此。这些字母表用于书写以空格分隔的单词,因此它们不被特殊处理,而是像所有其他语言一样处理。

类型: tokenizers 的静态方法
返回: boolean - 如果码点表示一个 CJK 字符,则为 True,否则为 false。

参数量类型描述
cpnumber | bigint

要检查的 Unicode 码点。


tokenizers~AddedToken

表示用户在现有模型词汇表之上添加的词元。可以配置 AddedToken 以指定它们在各种情况下的行为,例如

  • 它们是否应仅匹配单个单词
  • 是否包含其左侧或右侧的任何空白

类型: tokenizers 的内部类


new AddedToken(config)

创建一个新的 AddedToken 实例。

参数量类型默认描述
configObject

添加的词元的配置对象。

config.content字符串

添加的词元的内容。

config.id数字

添加的词元的 ID。

[config.single_word]booleanfalse

此词元是否必须是单个单词,或者可以拆分单词。

[config.lstrip]booleanfalse

此词元是否应去除其左侧的空白。

[config.rstrip]booleanfalse

此词元是否应去除其右侧的空白。

[config.normalized]booleanfalse

此词元是否应被归一化。

[config.special]booleanfalse

此词元是否是特殊词元。


tokenizers~WordPieceTokenizer ⇐ <code> TokenizerModel </code>

TokenizerModel 的一个子类,它使用 WordPiece 编码来编码词元。

类型: tokenizers 的内部类
继承自: TokenizerModel


new WordPieceTokenizer(config)

参数量类型默认描述
configObject

配置对象。

config.vocabObject

词元到 ID 的映射。

config.unk_token字符串

未知词元字符串。

config.continuing_subword_prefix字符串

用于连续子词的前缀。

[config.max_input_chars_per_word]数字100

每个单词的最大字符数。


wordPieceTokenizer.tokens_to_ids : <code> Map. < string, number > </code>

词元到 ID 的映射。

类型: WordPieceTokenizer 的实例属性


wordPieceTokenizer.unk_token_id : <code> number </code>

未知词元的 ID。

类型: WordPieceTokenizer 的实例属性


wordPieceTokenizer.unk_token : <code> string </code>

未知词元字符串。

类型: WordPieceTokenizer 的实例属性


wordPieceTokenizer.max_input_chars_per_word : <code> number </code>

每个单词允许的最大字符数。

类型: WordPieceTokenizer 的实例属性


wordPieceTokenizer.vocab : <code> Array. < string > </code>

一个词元数组。

类型: WordPieceTokenizer 的实例属性


wordPieceTokenizer.encode(tokens) ⇒ <code> Array. < string > </code>

使用 WordPiece 编码对一个词元数组进行编码。

类型: WordPieceTokenizer 的实例方法
返回: Array.<string> - 一个编码后的词元数组。

参数量类型描述
tokensArray.<string>

要编码的词元。


tokenizers~Unigram ⇐ <code> TokenizerModel </code>

代表 Unigram 分词器模型的类。

类型: tokenizers 的内部类
继承自: TokenizerModel


new Unigram(config, moreConfig)

创建一个新的 Unigram 分词器模型。

参数量类型描述
configObject

Unigram 模型的配置对象。

config.unk_id数字

未知词元的 ID

config.vocab*

一个表示词元到分数映射的二维数组。

moreConfigObject

Unigram 模型的附加配置对象。


unigram.scores : <code> Array. < number > </code>

类型: Unigram 的实例属性


unigram.populateNodes(lattice)

填充晶格节点。

类型: Unigram 的实例方法

参数量类型描述
latticeTokenLattice

要用节点填充的词元晶格。


unigram.tokenize(normalized) ⇒ <code> Array. < string > </code>

使用 unigram 模型将词元数组编码为子词元数组。

类型: Unigram 的实例方法
返回: Array.<string> - 使用 unigram 模型对输入词元进行编码后得到的子词元数组。

参数量类型描述
normalized字符串

归一化后的字符串。


unigram.encode(tokens) ⇒ <code> Array. < string > </code>

使用 Unigram 编码对一个词元数组进行编码。

类型: Unigram 的实例方法
返回: Array.<string> - 一个编码后的词元数组。

参数量类型描述
tokensArray.<string>

要编码的词元。


tokenizers~BPE ⇐ <code> TokenizerModel </code>

用于将文本编码为字节对编码(BPE)词元的 BPE 类。

类型: tokenizers 的内部类
继承自: TokenizerModel


new BPE(config)

创建一个 BPE 实例。

参数量类型默认描述
configObject

BPE 的配置对象。

config.vocabObject

词元到 ID 的映射。

config.merges*

一个由字符串表示的 BPE 合并规则数组。

config.unk_token字符串

用于词汇表外单词的未知词元。

config.end_of_word_suffix字符串

在每个单词末尾放置的后缀。

[config.continuing_subword_suffix]字符串

在单词之间插入的后缀。

[config.byte_fallback]booleanfalse

是否使用 spm 的字节回退技巧(默认为 False)

[config.ignore_merges]booleanfalse

在使用合并规则之前,是否先将词元与词汇表进行匹配。


bpE.tokens_to_ids : <code> Map. < string, number > </code>

类型: BPE 的实例属性


bpE.merges : <code> * </code>

类型: BPE 的实例属性


merges.config.merges : <code> * </code>

类型: merges 的静态属性


bpE.max_length_to_cache

模型中应缓存的最大长度。太长的字符串缓存命中的机会很小。

类型: BPE 的实例属性


bpE.cache_capacity

BPE 内部缓存的默认容量。

类型: BPE 的实例属性


bpE.clear_cache()

清除缓存。

类型: BPE 的实例方法


bpE.bpe(token) ⇒ <code> Array. < string > </code>

对给定的词元应用字节对编码(BPE)。高效的基于堆的优先队列实现改编自 https://github.com/belladoreai/llama-tokenizer-js

类型: BPE 的实例方法
返回: Array.<string> - BPE 编码后的词元。

参数量类型描述
token字符串

要编码的词元。


bpE.encode(tokens) ⇒ <code> Array. < string > </code>

使用 BPE 算法对输入的词元序列进行编码,并返回生成的子词词元。

类型: BPE 的实例方法
返回: Array.<string> - 对输入词元序列应用 BPE 算法后得到的子词词元。

参数量类型描述
tokensArray.<string>

要编码的输入词元序列。


tokenizers~LegacyTokenizerModel

用于仅有词汇表的分词器的传统分词器类。

类型: tokenizers 的内部类


new LegacyTokenizerModel(config, moreConfig)

创建一个 LegacyTokenizerModel 实例。

参数量类型描述
configObject

LegacyTokenizerModel 的配置对象。

config.vocabObject

一个(可能是嵌套的)词元到 ID 的映射。

moreConfigObject

LegacyTokenizerModel 模型的附加配置对象。


legacyTokenizerModel.tokens_to_ids : <code> Map. < string, number > </code>

类型: LegacyTokenizerModel 的实例属性


tokenizers~Normalizer

文本归一化的基类。

类型: tokenizers 的内部抽象类


new Normalizer(config)

参数量类型描述
configObject

归一化器的配置对象。


normalizer.normalize(text) ⇒ <code> string </code>

归一化输入文本。

类型: Normalizer 的实例抽象方法
返回: string - 归一化后的文本。
抛出:

  • Error 如果此方法未在子类中实现。
参数量类型描述
text字符串

要归一化的文本。


normalizer._call(text) ⇒ <code> string </code>

Normalizer#normalize 的别名。

类型: Normalizer 的实例方法
返回: string - 归一化后的文本。

参数量类型描述
text字符串

要归一化的文本。


Normalizer.fromConfig(config) ⇒ <code> Normalizer </code>

用于从配置对象创建归一化器的工厂方法。

类型: Normalizer 的静态方法
返回: Normalizer - 一个归一化器对象。
抛出:

  • Error 如果在配置中指定了未知的归一化器类型。
参数量类型描述
configObject

归一化器的配置对象。


tokenizers~Replace ⇐ <code> Normalizer </code>

将模式的出现替换为给定字符串或正则表达式的替换归一化器。

类型: tokenizers 的内部类
继承自: Normalizer


replace.normalize(text) ⇒ <code> string </code>

通过将模式替换为内容来归一化输入文本。

类型: Replace 的实例方法
返回: string - 将模式替换为内容后归一化后的文本。

参数量类型描述
text字符串

要归一化的输入文本。


tokenizers~UnicodeNormalizer ⇐ <code> Normalizer </code>

对输入文本应用 Unicode 归一化的归一化器。

类型: tokenizers 的内部抽象类
继承自: Normalizer


unicodeNormalizer.form : <code> string </code>

要应用的 Unicode 归一化形式。应为以下之一:'NFC'、'NFD'、'NFKC' 或 'NFKD'。

类型: UnicodeNormalizer 的实例属性


unicodeNormalizer.normalize(text) ⇒ <code> string </code>

通过应用 Unicode 归一化来归一化输入文本。

类型: UnicodeNormalizer 的实例方法
返回: string - 归一化后的文本。

参数量类型描述
text字符串

要归一化的输入文本。


tokenizers~NFC ⇐ <code> UnicodeNormalizer </code>

将 Unicode 范式 C (NFC) 应用于输入文本的规范器。先进行规范分解,然后进行规范组合。

类型: tokenizers 的内部类
扩展: UnicodeNormalizer


tokenizers~NFD ⇐ <code> UnicodeNormalizer </code>

将 Unicode 范式 D (NFD) 应用于输入文本的规范器。规范分解。

类型: tokenizers 的内部类
扩展: UnicodeNormalizer


tokenizers~NFKC ⇐ <code> UnicodeNormalizer </code>

将 Unicode 范式 KC (NFKC) 应用于输入文本的规范器。先进行兼容分解,然后进行规范组合。

类型: tokenizers 的内部类
扩展: UnicodeNormalizer


tokenizers~NFKD ⇐ <code> UnicodeNormalizer </code>

将 Unicode 范式 KD (NFKD) 应用于输入文本的规范器。兼容分解。

类型: tokenizers 的内部类
扩展: UnicodeNormalizer


tokenizers~StripNormalizer

一个从输入文本中去除前导和/或尾随空白字符的规范器。

类型: tokenizers 的内部类


stripNormalizer.normalize(text) ⇒ <code> string </code>

从输入文本中去除前导和/或尾随空白字符。

类别: StripNormalizer 的实例方法
返回: string - 归一化后的文本。

参数量类型描述
text字符串

输入文本。


tokenizers~StripAccents ⇐ <code> Normalizer </code>

StripAccents 规范器会移除文本中的所有重音符号。

类型: tokenizers 的内部类
继承自: Normalizer


stripAccents.normalize(text) ⇒ <code> string </code>

移除文本中的所有重音符号。

类别: StripAccents 的实例方法
返回: string - 没有重音符号的规范化文本。

参数量类型描述
text字符串

输入文本。


tokenizers~Lowercase ⇐ <code> Normalizer </code>

将输入字符串转换为小写的规范器。

类型: tokenizers 的内部类
继承自: Normalizer


lowercase.normalize(text) ⇒ <code> string </code>

将输入字符串转换为小写。

类别: Lowercase 的实例方法
返回: string - 归一化后的文本。

参数量类型描述
text字符串

要归一化的文本。


tokenizers~Prepend ⇐ <code> Normalizer </code>

在输入字符串前添加一个字符串的规范器。

类型: tokenizers 的内部类
继承自: Normalizer


prepend.normalize(text) ⇒ <code> string </code>

在输入字符串前添加指定内容。

类别: Prepend 的实例方法
返回: string - 归一化后的文本。

参数量类型描述
text字符串

要归一化的文本。


tokenizers~NormalizerSequence ⇐ <code> Normalizer </code>

一个按顺序应用一系列规范器的规范器。

类型: tokenizers 的内部类
继承自: Normalizer


new NormalizerSequence(config)

创建一个新的 NormalizerSequence 实例。

参数量类型描述
configObject

配置对象。

config.normalizersArray.<Object>

一个包含规范器配置对象的数组。


normalizerSequence.normalize(text) ⇒ <code> string </code>

将一系列规范器应用于输入文本。

类别: NormalizerSequence 的实例方法
返回: string - 归一化后的文本。

参数量类型描述
text字符串

要归一化的文本。


tokenizers~BertNormalizer ⇐ <code> Normalizer </code>

表示 BERT 分词中使用的规范器的类。

类型: tokenizers 的内部类
继承自: Normalizer


bertNormalizer._tokenize_chinese_chars(text) ⇒ <code> string </code>

在输入文本中的任何 CJK(中文、日文或韩文)字符周围添加空格。

类别: BertNormalizer 的实例方法
返回: string - 在 CJK 字符周围添加了空格的分词后文本。

参数量类型描述
text字符串

要进行分词的输入文本。


bertNormalizer.stripAccents(text) ⇒ <code> string </code>

从给定文本中去除重音符号。

类别: BertNormalizer 的实例方法
返回: string - 移除了重音符号的文本。

参数量类型描述
text字符串

要去除重音符号的文本。


bertNormalizer.normalize(text) ⇒ <code> string </code>

根据配置对给定文本进行规范化。

类别: BertNormalizer 的实例方法
返回: string - 归一化后的文本。

参数量类型描述
text字符串

要归一化的文本。


tokenizers~PreTokenizer ⇐ <code> Callable </code>

一个可调用的类,表示分词中使用的预分词器。子类应实现 pre_tokenize_text 方法来定义特定的预分词逻辑。

类型: tokenizers 的内部类
继承自: Callable


preTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

子类应实现此方法来定义特定的预分词逻辑。

类别: PreTokenizer 的实例抽象方法
返回: Array.<string> - 预分词后的文本。
抛出:

  • Error 如果方法未在子类中实现。
参数量类型描述
text字符串

要进行预分词的文本。

[options]Object

预分词逻辑的附加选项。


preTokenizer.pre_tokenize(text, [options]) ⇒ <code> Array. < string > </code>

将给定文本分词为预分词单元。

类别: PreTokenizer 的实例方法
返回: Array.<string> - 一个包含预分词单元的数组。

参数量类型描述
textstring | Array<string>

要进行预分词的文本或文本数组。

[options]Object

预分词逻辑的附加选项。


preTokenizer._call(text, [options]) ⇒ <code> Array. < string > </code>

PreTokenizer#pre_tokenize 的别名。

类别: PreTokenizer 的实例方法
重写: _call
返回: Array.<string> - 一个包含预分词单元的数组。

参数量类型描述
textstring | Array<string>

要进行预分词的文本或文本数组。

[options]Object

预分词逻辑的附加选项。


PreTokenizer.fromConfig(config) ⇒ <code> PreTokenizer </code>

工厂方法,根据提供的配置返回 PreTokenizer 子类的实例。

类别: PreTokenizer 的静态方法
返回: PreTokenizer - PreTokenizer 子类的实例。
抛出:

  • Error 如果提供的配置对象不对应任何已知的预分词器。
参数量类型描述
configObject

预分词器的配置对象。


tokenizers~BertPreTokenizer ⇐ <code> PreTokenizer </code>

类型: tokenizers 的内部类
扩展: PreTokenizer


new BertPreTokenizer(config)

一个预分词器,使用类似于 BERT 原始实现中使用的基本分词方案将文本分割成词片段。

参数量类型描述
configObject

配置对象。


bertPreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

使用 BERT 预分词方案对单个文本进行分词。

类别: BertPreTokenizer 的实例方法
返回: Array.<string> - 一个包含词元的数组。

参数量类型描述
text字符串

要分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~ByteLevelPreTokenizer ⇐ <code> PreTokenizer </code>

一个将文本分割成字节对编码 (BPE) 子词的预分词器。

类型: tokenizers 的内部类
扩展: PreTokenizer


new ByteLevelPreTokenizer(config)

创建 ByteLevelPreTokenizer 类的新实例。

参数量类型描述
configObject

配置对象。


byteLevelPreTokenizer.add_prefix_space : <code> boolean </code>

是否在第一个单词前添加一个前导空格。这使得可以像处理其他单词一样处理第一个单词。

类别: ByteLevelPreTokenizer 的实例属性


byteLevelPreTokenizer.trim_offsets : <code> boolean </code>

后处理步骤是否应该修剪偏移量以避免包含空白字符。

类别: ByteLevelPreTokenizer 的实例属性
待办

  • 在预分词步骤中使用此选项。

byteLevelPreTokenizer.use_regex : <code> boolean </code>

是否使用标准的 GPT2 正则表达式进行空白字符分割。如果你想使用自己的分割方式,请将其设置为 False。默认为 true。

类别: ByteLevelPreTokenizer 的实例属性


byteLevelPreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

使用字节级分词法对单段文本进行分词。

类别: ByteLevelPreTokenizer 的实例方法
返回: Array.<string> - 一个包含词元的数组。

参数量类型描述
text字符串

要分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~SplitPreTokenizer ⇐ <code> PreTokenizer </code>

使用给定的模式分割文本。

类型: tokenizers 的内部类
扩展: PreTokenizer


new SplitPreTokenizer(config)

参数量类型描述
configObject

预分词器的配置选项。

config.patternObject

用于分割文本的模式。可以是一个字符串或一个正则表达式对象。

config.pattern.Stringstring | undefined

用于分割的字符串。仅当模式是字符串时定义。

config.pattern.Regexstring | undefined

用于分割的正则表达式。仅当模式是正则表达式时定义。

config.behaviorSplitDelimiterBehavior

分割时使用的行为。

config.invertboolean

是分割(invert=false)还是匹配(invert=true)模式。


splitPreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

通过使用给定的模式分割文本来进行分词。

类别: SplitPreTokenizer 的实例方法
返回: Array.<string> - 一个包含词元的数组。

参数量类型描述
text字符串

要分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~PunctuationPreTokenizer ⇐ <code> PreTokenizer </code>

根据标点符号分割文本。

类型: tokenizers 的内部类
扩展: PreTokenizer


new PunctuationPreTokenizer(config)

参数量类型描述
configObject

预分词器的配置选项。

config.behaviorSplitDelimiterBehavior

分割时使用的行为。


punctuationPreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

通过使用给定的模式分割文本来进行分词。

类别: PunctuationPreTokenizer 的实例方法
返回: Array.<string> - 一个包含词元的数组。

参数量类型描述
text字符串

要分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~DigitsPreTokenizer ⇐ <code> PreTokenizer </code>

根据数字分割文本。

类型: tokenizers 的内部类
扩展: PreTokenizer


new DigitsPreTokenizer(config)

参数量类型描述
configObject

预分词器的配置选项。

config.individual_digitsboolean

是否按单个数字进行分割。


digitsPreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

通过使用给定的模式分割文本来进行分词。

类别: DigitsPreTokenizer 的实例方法
返回: Array.<string> - 一个包含词元的数组。

参数量类型描述
text字符串

要分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~PostProcessor ⇐ <code> Callable </code>

类型: tokenizers 的内部类
继承自: Callable


new PostProcessor(config)

参数量类型描述
configObject

后处理器的配置。


postProcessor.post_process(tokens, ...args) ⇒ <code> PostProcessedOutput </code>

需要在子类中实现的方法,用于对给定的词元应用后处理。

类别: PostProcessor 的实例方法
返回: PostProcessedOutput - 后处理后的词元。
抛出:

  • Error 如果方法未在子类中实现。
参数量类型描述
tokens数组

要进行后处理的输入词元。

...args*

后处理逻辑所需的附加参数。


postProcessor._call(tokens, ...args) ⇒ <code> PostProcessedOutput </code>

PostProcessor#post_process 的别名。

类别: PostProcessor 的实例方法
重写: _call
返回: PostProcessedOutput - 后处理后的词元。

参数量类型描述
tokens数组

要进行后处理的文本或文本数组。

...args*

后处理逻辑所需的附加参数。


PostProcessor.fromConfig(config) ⇒ <code> PostProcessor </code>

用于从配置对象创建 PostProcessor 对象的工厂方法。

类别: PostProcessor 的静态方法
返回: PostProcessor - 从给定配置创建的 PostProcessor 对象。
抛出:

  • Error 如果遇到未知的 PostProcessor 类型。
参数量类型描述
configObject

表示 PostProcessor 的配置对象。


tokenizers~BertProcessing

一个在输入内容的开头和结尾添加特殊词元的后处理器。

类型: tokenizers 的内部类


new BertProcessing(config)

参数量类型描述
configObject

后处理器的配置。

config.clsArray.<string>

要添加到输入内容开头的特殊词元。

config.sepArray.<string>

要添加到输入内容结尾的特殊词元。


bertProcessing.post_process(tokens, [tokens_pair]) ⇒ <code> PostProcessedOutput </code>

将特殊词元添加到输入内容的开头和结尾。

类别: BertProcessing 的实例方法
返回: PostProcessedOutput - 在开头和结尾添加了特殊词元的后处理后词元。

参数量类型默认描述
tokensArray.<string>

输入词元。

[tokens_pair]Array.<string>

可选的第二组输入词元。


tokenizers~TemplateProcessing ⇐ <code> PostProcessor </code>

用实际词元替换模板中特殊词元的后处理器。

类型: tokenizers 的内部类
扩展: PostProcessor


new TemplateProcessing(config)

创建一个新的 TemplateProcessing 实例。

参数量类型描述
configObject

后处理器的配置选项。

config.single数组

单个词元序列的模板。

config.pair数组

一对词元序列的模板。


templateProcessing.post_process(tokens, [tokens_pair]) ⇒ <code> PostProcessedOutput </code>

用实际词元替换模板中的特殊词元。

类别: TemplateProcessing 的实例方法
返回: PostProcessedOutput - 一个对象,包含用实际词元替换了特殊词元的词元列表。

参数量类型默认描述
tokensArray.<string>

第一个序列的词元列表。

[tokens_pair]Array.<string>

第二个序列的词元列表(可选)。


tokenizers~ByteLevelPostProcessor ⇐ <code> PostProcessor </code>

一个按原样返回给定词元的后处理器。

类型: tokenizers 的内部类
扩展: PostProcessor


byteLevelPostProcessor.post_process(tokens, [tokens_pair]) ⇒ <code> PostProcessedOutput </code>

对给定的词元进行后处理。

类别: ByteLevelPostProcessor 的实例方法
返回: PostProcessedOutput - 包含后处理后词元的对象。

参数量类型默认描述
tokensArray.<string>

第一个序列的词元列表。

[tokens_pair]Array.<string>

第二个序列的词元列表(可选)。


tokenizers~PostProcessorSequence

一个按顺序应用多个后处理器的后处理器。

类型: tokenizers 的内部类


new PostProcessorSequence(config)

创建一个新的 PostProcessorSequence 实例。

参数量类型描述
configObject

配置对象。

config.processorsArray.<Object>

要应用的后处理器列表。


postProcessorSequence.post_process(tokens, [tokens_pair]) ⇒ <code> PostProcessedOutput </code>

对给定的词元进行后处理。

类别: PostProcessorSequence 的实例方法
返回: PostProcessedOutput - 包含后处理后词元的对象。

参数量类型默认描述
tokensArray.<string>

第一个序列的词元列表。

[tokens_pair]Array.<string>

第二个序列的词元列表(可选)。


tokenizers~Decoder ⇐ <code> Callable </code>

词元解码器的基类。

类型: tokenizers 的内部类
继承自: Callable


new Decoder(config)

创建 Decoder 的实例。

参数量类型描述
configObject

配置对象。


decoder.added_tokens : <code> Array. < AddedToken > </code>

类别: Decoder 的实例属性


decoder._call(tokens) ⇒ <code> string </code>

调用 decode 方法。

类别: Decoder 的实例方法
重写: _call
返回: string - 解码后的字符串。

参数量类型描述
tokensArray.<string>

令牌列表。


decoder.decode(tokens) ⇒ <code> string </code>

解码一个词元列表。

类别: Decoder 的实例方法
返回: string - 解码后的字符串。

参数量类型描述
tokensArray.<string>

令牌列表。


decoder.decode_chain(tokens) ⇒ <code> Array. < string > </code>

将解码器应用于一个词元列表。

类别: Decoder 的实例方法
返回: Array.<string> - 解码后的词元列表。
抛出:

  • Error 如果 `decode_chain` 方法未在子类中实现。
参数量类型描述
tokensArray.<string>

令牌列表。


Decoder.fromConfig(config) ⇒ <code> Decoder </code>

根据提供的配置创建一个解码器实例。

类别: Decoder 的静态方法
返回: Decoder - 一个解码器实例。
抛出:

  • 如果提供了未知的解码器类型,则返回 Error
参数量类型描述
configObject

配置对象。


tokenizers~FuseDecoder

Fuse 仅将所有分词(token)融合成一个大字符串。这通常是解码的最后一步,但这个解码器的存在是为了以防某些解码器需要在此步骤之后进行操作。

类型: tokenizers 的内部类


fuseDecoder.decode_chain() : <code> * </code>

类别: FuseDecoder 的实例方法


tokenizers~WordPieceDecoder ⇐ <code> Decoder </code>

一个将 WordPiece 分词列表解码为单个字符串的解码器。

类型: tokenizers 的内部类
继承自: Decoder


new WordPieceDecoder(config)

创建一个新的 WordPieceDecoder 实例。

参数量类型描述
configObject

配置对象。

config.prefix字符串

用于 WordPiece 编码的前缀。

config.cleanupboolean

是否清理解码后的字符串。


wordPieceDecoder.decode_chain() : <code> * </code>

类别: WordPieceDecoder 的实例方法


tokenizers~ByteLevelDecoder ⇐ <code> Decoder </code>

用于分词输出的字节级解码器。继承自 Decoder 类。

类型: tokenizers 的内部类
继承自: Decoder


new ByteLevelDecoder(config)

创建一个 ByteLevelDecoder 对象。

参数量类型描述
configObject

配置对象。


byteLevelDecoder.convert_tokens_to_string(tokens) ⇒ <code> string </code>

通过解码每个字节将分词数组转换为字符串。

类别: ByteLevelDecoder 的实例方法
返回: string - 解码后的字符串。

参数量类型描述
tokensArray.<string>

需要解码的分词数组。


byteLevelDecoder.decode_chain() : <code> * </code>

类别: ByteLevelDecoder 的实例方法


tokenizers~CTCDecoder

CTC (Connectionist Temporal Classification) 解码器。请参阅 https://github.com/huggingface/tokenizers/blob/bb38f390a61883fc2f29d659af696f428d1cda6b/tokenizers/src/decoders/ctc.rs

类型: tokenizers 的内部类


ctcDecoder.convert_tokens_to_string(tokens) ⇒ <code> string </code>

将连接主义时间分类 (CTC) 输出的分词转换为单个字符串。

类别: CTCDecoder 的实例方法
返回: string - 解码后的字符串。

参数量类型描述
tokensArray.<string>

需要解码的分词数组。


ctcDecoder.decode_chain() : <code> * </code>

类别: CTCDecoder 的实例方法


tokenizers~DecoderSequence ⇐ <code> Decoder </code>

应用一系列解码器。

类型: tokenizers 的内部类
继承自: Decoder


new DecoderSequence(config)

创建一个新的 DecoderSequence 实例。

参数量类型描述
configObject

配置对象。

config.decodersArray.<Object>

要应用的解码器列表。


decoderSequence.decode_chain() : <code> * </code>

类别: DecoderSequence 的实例方法


tokenizers~MetaspacePreTokenizer ⇐ <code> PreTokenizer </code>

此预处理器(PreTokenizer)用给定的替换字符替换空格,如果需要则添加前缀空格,并返回一个分词列表。

类型: tokenizers 的内部类
扩展: PreTokenizer


new MetaspacePreTokenizer(config)

参数量类型默认描述
configObject

MetaspacePreTokenizer 的配置对象。

config.add_prefix_spaceboolean

是否在第一个分词前添加前缀空格。

config.replacement字符串

用于替换空格的字符。

[config.str_rep]字符串“config.replacement”

替换字符的可选字符串表示。

[config.prepend_scheme]'first' | 'never' | 'always''always'

metaspace 前置方案。


metaspacePreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

此方法接收一个字符串,用替换字符替换空格,如果需要则添加前缀空格,并返回一个新的分词列表。

类别: MetaspacePreTokenizer 的实例方法
返回: Array.<string> - 一个新的预分词列表。

参数量类型描述
text字符串

要进行预分词的文本。

[options]Object

预分词的选项。

[options.section_index]数字

要进行预分词的部分的索引。


tokenizers~MetaspaceDecoder ⇐ <code> Decoder </code>

MetaspaceDecoder 类继承自 Decoder 类,用于解码 Metaspace 分词结果。

类型: tokenizers 的内部类
继承自: Decoder


new MetaspaceDecoder(config)

构造一个新的 MetaspaceDecoder 对象。

参数量类型描述
configObject

MetaspaceDecoder 的配置对象。

config.add_prefix_spaceboolean

是否在解码后的字符串前添加前缀空格。

config.replacement字符串

用于替换空格的字符串。


metaspaceDecoder.decode_chain() : <code> * </code>

类别: MetaspaceDecoder 的实例方法


tokenizers~Precompiled ⇐ <code> Normalizer </code>

一个应用预编译字符映射(charsmap)的规范化器。这对于在 C++ 中应用复杂的规范化并将其暴露给 JavaScript 非常有用。

类型: tokenizers 的内部类
继承自: Normalizer


new Precompiled(config)

创建一个新的 Precompiled 规范化器实例。

参数量类型描述
configObject

Precompiled 规范化器的配置对象。

config.precompiled_charsmapObject

预编译的字符映射对象。


precompiled.normalize(text) ⇒ <code> string </code>

通过应用预编译的字符映射来规范化给定的文本。

类别: Precompiled 的实例方法
返回: string - 归一化后的文本。

参数量类型描述
text字符串

要归一化的文本。


tokenizers~PreTokenizerSequence ⇐ <code> PreTokenizer </code>

一个对输入文本应用一系列预处理器(pre-tokenizer)的预处理器。

类型: tokenizers 的内部类
扩展: PreTokenizer


new PreTokenizerSequence(config)

创建一个 PreTokenizerSequence 实例。

参数量类型描述
configObject

预处理器序列的配置对象。

config.pretokenizersArray.<Object>

一个预处理器配置的数组。


preTokenizerSequence.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

依次将序列中的每个预处理器应用于输入文本。

类别: PreTokenizerSequence 的实例方法
返回: Array.<string> - 预分词后的文本。

参数量类型描述
text字符串

要进行预分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~WhitespacePreTokenizer

按词边界进行分割(使用以下正则表达式:\w+|[^\w\s]+)。

类型: tokenizers 的内部类


new WhitespacePreTokenizer(config)

创建一个 WhitespacePreTokenizer 实例。

参数量类型描述
configObject

预处理器的配置对象。


whitespacePreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

通过按词边界分割输入文本来进行预分词。

类别: WhitespacePreTokenizer 的实例方法
返回: Array.<string> - 通过按空白字符分割输入文本而产生的分词数组。

参数量类型描述
text字符串

要进行预分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~WhitespaceSplit ⇐ <code> PreTokenizer </code>

通过空白字符将一段文本分割成单个分词。

类型: tokenizers 的内部类
扩展: PreTokenizer


new WhitespaceSplit(config)

创建一个 WhitespaceSplit 实例。

参数量类型描述
configObject

预处理器的配置对象。


whitespaceSplit.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

通过按空白字符分割输入文本来进行预分词。

类别: WhitespaceSplit 的实例方法
返回: Array.<string> - 通过按空白字符分割输入文本而产生的分词数组。

参数量类型描述
text字符串

要进行预分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~ReplacePreTokenizer

类型: tokenizers 的内部类


new ReplacePreTokenizer(config)

参数量类型描述
configObject

预分词器的配置选项。

config.patternObject

用于分割文本的模式。可以是一个字符串或一个正则表达式对象。

config.content字符串

用来替换模式的内容。


replacePreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>

通过替换某些字符来对输入文本进行预分词。

类别: ReplacePreTokenizer 的实例方法
返回: Array.<string> - 通过替换某些字符而产生的分词数组。

参数量类型描述
text字符串

要进行预分词的文本。

[options]Object

预分词逻辑的附加选项。


tokenizers~BYTES_TO_UNICODE ⇒ <code> Object </code>

返回 utf-8 字节列表以及到 unicode 字符串的映射。特别避免映射到 BPE 代码会出错的空白/控制字符。

类别: tokenizers 的内部常量
返回: Object - 以 utf-8 字节为键,unicode 字符串为值的对象。


tokenizers~loadTokenizer(pretrained_model_name_or_path, options) ⇒ <code> Promise. < Array < any > > </code>

从指定路径加载分词器。

类别: tokenizers 的内部方法
返回: Promise.<Array<any>> - 一个解析后包含已加载分词器信息的 Promise。

参数量类型描述
pretrained_model_name_or_path字符串

分词器目录的路径。

选项PretrainedTokenizerOptions

加载分词器的其他选项。


tokenizers~regexSplit(text, regex) ⇒ <code> Array. < string > </code>

一个辅助函数,用于根据正则表达式分割字符串,但保留分隔符。这是必需的,因为 JavaScript 的 .split() 方法不保留分隔符,而将其包装在捕获组中会导致现有捕获组出现问题(由于嵌套)。

类别: tokenizers 的内部方法
返回: Array.<string> - 分割后的字符串。

参数量类型描述
text字符串

要分割的文本。

regexRegExp

用于分割的正则表达式。


tokenizers~createPattern(pattern, invert) ⇒ <code> RegExp </code> | <code> null </code>

从配置对象构造模式的辅助方法。

类别: tokenizers 的内部方法
返回: RegExp | null - 编译后的模式。

参数量类型默认描述
patternObject

模式对象。

反转booleantrue

是否反转模式。


tokenizers~objectToMap(obj) ⇒ <code> Map. < string, any > </code>

将对象转换为 Map 的辅助函数。

类别: tokenizers 的内部方法
返回: Map.<string, any> - map。

参数量类型描述
objObject

要转换的对象。


tokenizers~prepareTensorForDecode(tensor) ⇒ <code> Array. < number > </code>

在解码前将张量转换为列表的辅助函数。

类别: tokenizers 的内部方法
返回: Array.<number> - 列表形式的张量。

参数量类型描述
张量张量

要转换的张量。


tokenizers~clean_up_tokenization(text) ⇒ <code> string </code>

清理简单的英文分词产物,如标点前的空格和缩写形式。

类别: tokenizers 的内部方法
返回: string - 清理后的文本。

参数量类型描述
text字符串

要清理的文本。


tokenizers~remove_accents(text) ⇒ <code> string </code>

从字符串中移除重音符号的辅助函数。

类别: tokenizers 的内部方法
返回: string - 移除了重音符号的文本。

参数量类型描述
text字符串

要移除重音符号的文本。


tokenizers~lowercase_and_remove_accent(text) ⇒ <code> string </code>

将字符串转为小写并移除重音符号的辅助函数。

类别: tokenizers 的内部方法
返回: string - 已转为小写并移除重音符号的文本。

参数量类型描述
text字符串

要转为小写并移除重音符号的文本。


tokenizers~whitespace_split(text) ⇒ <code> Array. < string > </code>

按空白字符分割字符串。

类别: tokenizers 的内部方法
返回: Array.<string> - 分割后的字符串。

参数量类型描述
text字符串

要分割的文本。


tokenizers~PretrainedTokenizerOptions : <code> Object </code>

特定于分词器的额外属性。

类别: tokenizers 的内部 typedef
属性

名称类型默认描述
[legacy]booleanfalse

是否应使用分词器的 legacy 行为。


tokenizers~BPENode : <code> Object </code>

类别: tokenizers 的内部 typedef
属性

名称类型描述
token字符串

与节点关联的分词。

bias数字

节点的位置偏差。

[score]数字

节点的分数。

[prev]BPENode

链表中的前一个节点。

[next]BPENode

链表中的下一个节点。


tokenizers~SplitDelimiterBehavior : <code> ’ removed ’ </code> | <code> ’ isolated ’ </code> | <code> ’ mergedWithPrevious ’ </code> | <code> ’ mergedWithNext ’ </code> | <code> ’ contiguous ’ </code>

类别: tokenizers 的内部 typedef


tokenizers~PostProcessedOutput : <code> Object </code>

类别: tokenizers 的内部 typedef
属性

名称类型描述
tokensArray.<string>

后处理器(post-processor)生成的分词列表。

[token_type_ids]Array.<number>

后处理器生成的分词类型 ID 列表。


tokenizers~EncodingSingle : <code> Object </code>

类别: tokenizers 的内部 typedef
属性

名称类型描述
input_idsArray.<number>

要输入到模型中的分词 ID 列表。

attention_maskArray.<number>

要输入到模型中的分词类型 ID 列表

[token_type_ids]Array.<number>

指定模型应关注哪些分词的索引列表


tokenizers~Message : <code> Object </code>

类别: tokenizers 的内部 typedef
属性

名称类型描述
角色字符串

消息的角色(例如,“user” 或 “assistant” 或 “system”)。

内容字符串

消息的内容。


tokenizers~BatchEncoding : <code> Array < number > </code> | <code> Array < Array < number > > </code> | <code> Tensor </code>

保存分词器调用函数的输出。

类别: tokenizers 的内部 typedef
属性

名称类型描述
input_idsBatchEncodingItem

要输入到模型中的分词 ID 列表。

attention_maskBatchEncodingItem

指定模型应关注哪些分词的索引列表。

[token_type_ids]BatchEncodingItem

要输入到模型中的分词类型 ID 列表。


< > 在 GitHub 上更新