Transformers.js文档

tokenizer

Hugging Face's logo
加入Hugging Face社区

并获得增强型文档体验

开始使用

分词器

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

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

import { AutoTokenizer } from '@xenova/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>

Tokenizer模型的基础抽象类。

类型: tokenizers 的静态类
扩展: Callable


new TokenizerModel(config)

创建一个新的TokenizerModel实例。

参数类型描述
config对象

TokenizerModel的配置对象。


tokenizerModel.vocab : <code> 数组. < 字符串 > </code>

类型: TokenizerModel的实例属性


tokenizerModel.tokens_to_ids : <code> 对象. < 字符串, 数字 > </code>

将标记映射到ID的映射。

类型: TokenizerModel的实例属性


tokenizerModel.fuse_unk : <code> 布尔值 </code>

在编码时是否融合未知标记。默认为false。

类型: TokenizerModel的实例属性


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

调用 TokenizerModel 实例的内部函数。

类型: TokenizerModel 的实例方法
返回值: Array.<string> - 编码后的标记 IDs。

参数类型描述
tokensArray.<string>

要编码的标记。


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

将标记列表编码为标记 IDs 列表。

类型: TokenizerModel 的实例方法
返回值: Array.<string> - 编码后的标记。
抛出异常:

  • 如果不实现子类将抛出错误。
参数类型描述
tokensArray.<string>

要编码的标记。


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

将标记列表转换为标记 IDs 列表。

类型: TokenizerModel 的实例方法
返回值: Array.<number> - 转换后的标记 IDs。

参数类型描述
tokensArray.<string>

要转换的标记。


tokenizerModel.convert_ids_to_tokens(ids) ⇒ <code> 数组. 字符串 </code>

将令牌ID列表转换为令牌列表。

类型: TokenizerModel 的实例方法
返回值: 数组.字符串 - 转换后的令牌。

参数类型描述
ids数组.数字

要转换的令牌ID。


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

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

类型: TokenizerModel 的静态方法
返回值: TokenizerModel - TokenizerModel 的新实例。
抛出异常:

  • 如果配置中的TokenizerModel类型不被识别,将抛出错误。
参数类型描述
config对象

TokenizerModel的配置对象。

...args*

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


tokenizers.PreTrainedTokenizer

类型: tokenizers 的静态类


new PreTrainedTokenizer(tokenizerJSON, tokenizerConfig)

创建一个新的 PreTrainedTokenizer 实例。

参数类型描述
tokenizerJSON对象

分词器的 JSON 数据。

tokenizerConfig对象

分词器的配置。


preTrainedTokenizer.added_tokens : <code> 数组. < AddedToken > </code>

类型:PreTrainedTokenizer 的实例属性


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

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

类型:PreTrainedTokenizer 的实例属性


preTrainedTokenizer.padding_side : <code> ’ right ’ </code> | <code> ’ left ’ </code>

类型:PreTrainedTokenizer 的实例属性


preTrainedTokenizer.getToken(...keys) ⇒ <code> string </code> | <code> null </code>

返回分词器配置对象中第一个匹配键的值。

Kind: PreTrainedTokenizer 的实例方法
返回值: string | null - 第一个匹配键的关联值,如果没有找到匹配项则返回 null。
抛出异常:

  • 如果找到匹配的键且其 __type 属性不是 "AddedToken" 时将报错。
参数类型描述
...keysstring

在分词器配置对象中搜索的一个或多个键。


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

对给定的文本进行编码/分词。

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

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

要分词的文本。

options对象

包含以下属性的可选对象

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

可选的第二序列进行编码。如果设置,其类型必须与 text 相同。

[options.padding]boolean | 'max_length'false

是否填充输入序列。

[options.add_special_tokens]布尔值

是否添加与对应模型关联的特殊标记。

[options.truncation]布尔值

是否截断输入序列。

[options.max_length]数字

返回列表的最大长度和可选的填充长度。

[options.return_tensor]布尔值

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

[options.return_token_type_ids]布尔值

是否返回标记类型标识。


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

使用分词器的预处理管道编码单个文本。

Kind: PreTrainedTokenizer 的实例方法
返回Array | null - 编码的标记。

参数类型描述
textstring | null

要编码的文本。


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

使用模型的分词器编码单个文本或文本对。

Kind: PreTrainedTokenizer 的实例方法
返回: Array.<number> - 代表编码文本的标记ID数组。

参数类型默认描述
textstring

要编码的文本。

text_pairstring | nullnull

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

options对象

包含以下属性的可选对象

[options.add_special_tokens]布尔值

是否添加与对应模型关联的特殊标记。

[options.return_token_type_ids]布尔值

是否返回token_type_ids。


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

解码一批分词序列。

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

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

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

decode_args对象

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


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

将一系列标记ID解码回字符串。

Kind: PreTrainedTokenizer 的实例方法
返回值: string - 解码的字符串。
抛出异常:

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

要解码的标记ID列表/张量。

[decode_args]对象{}
[decode_args.skip_special_tokens]布尔值false

如果为真,将从输出字符串中移除特殊标记。

[decode_args.clean_up_tokenization_spaces]布尔值

如果为真,将在解码期间清除分词空格。如果为null,如果存在,则设置为 this.decoder.cleanup,如果存在,则设置为 this.clean_up_tokenization_spaces,如果不存在,则回退到 true


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

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

Kind: PreTrainedTokenizer 的实例方法
返回值: string - 解码的字符串。

参数类型默认描述
token_ids数组.数字

要解码的标记ID列表。

decode_args对象

解码时可选的参数。

[decode_args.skip_special_tokens]布尔值false

解码期间是否跳过特殊标记。

[decode_args.clean_up_tokenization_spaces]布尔值

解码期间是否清除分词空格。如果为null,如果存在,则设置为 this.decoder.cleanup,如果存在,则设置为 this.clean_up_tokenization_spaces,如果不存在,则回退到 true


preTrainedTokenizer.apply_chat_template(conversation, options) ⇒ 字符串 | 张量 | 数组<数字> | 数组<数组<数字>

将带有 "role" 和 "content" 键的消息对象列表转换为 token id 列表。此方法旨在与对话模型一起使用,并读取标记器的 chat_template 属性以确定格式和控制转换时使用的标记。当 chat_template 为空时,将回退到类级别指定的 default_chat_template。

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

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

import { AutoTokenizer } from "@xenova/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]

Kind: PreTrainedTokenizer 的实例方法
返回值: 字符串 | 张量 | 数组<数字> | 数组<数组<数字> - 标记后的输出。

参数类型默认描述
conversationArray.

包含具有 "role" 和 "content" 键的消息对象列表。

options对象

包含以下属性的可选对象

[options.chat_template]stringnull

使用此转换的 Jinja 模板。如果未提供,将使用模型的默认聊天模板。

[options.add_generation_prompt]布尔值false

是否以表示助手消息开始的标记(s)结束提示。当您希望从模型生成响应时,这将很有用。请注意,此参数将传递给聊天模板,因此模板必须支持此参数才能产生任何效果。

[options.tokenize]布尔值

是否标记输出。如果为 false,则输出将是一个字符串。

[options.padding]布尔值false

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

[options.truncation]布尔值false

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

[options.max_length]数字

用于填充或截断的最大长度(以-token计数)。如果 tokenize 为 false,则没有效果。如果未指定,将使用标记器的 max_length 属性作为默认值。

[options.return_tensor]布尔值

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

[options.tokenizer_kwargs]对象{}

传递给标记器的其他选项。


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

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

类型PreTrainedTokenizer 的静态方法。
返回值Promise. - PreTrainedTokenizer 类的一个新实例。
抛出异常:

  • Error:如果在 `pretrained_model_name_or_path` 中找不到 tokenizer.json 或 tokenizer_config.json 文件,将抛出错误。
参数类型描述
pretrained_model_name_or_pathstring

预训练分词器的路径。

optionsPretrainedTokenizerOptions

加载分词器时的额外选项。


tokenizers.BertTokenizer⇐ <> PreTrainedTokenizer <>

BertTokenizer 是用于为 BERT 模型标记文本的类。

类型: tokenizers 的静态类
扩展:<> PreTrainedTokenizer <>


tokenizers.AlbertTokenizer⇐ <> PreTrainedTokenizer <>

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_options对象

要发送到标记器的选项

generate_kwargs对象

生成选项。


tokenizers.M2M100Tokenizer

M2M100Tokenizer类用于对M2M100(“多对多”)模型的文本进行标记。

M2M100是一种多语言编码器-解码器(seq-to-seq)模型,针对多对多多语言翻译进行了训练。它的介绍可以在这篇论文中找到,并在这个存储库中首次发布。

支持的语言列表(包括其语言代码)

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


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

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

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

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

要分词的文本。

tokenizer_options对象

要发送到标记器的选项

generate_kwargs对象

生成选项。


tokenizers.WhisperTokenizer ⇐ <code> 预训练分词器 </code>

WhisperTokenizer 分词器

类型: tokenizers 的静态类
扩展:<> PreTrainedTokenizer <>


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

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

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

参数类型描述
sequences*

待解码的序列。

options对象

解码时使用的选项。


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

类型: WhisperTokenizer 的实例方法


whisperTokenizer.get_decoder_prompt_ids(options) ⇒ <code> Array. < Array < number > > </code>

辅助函数用于构建翻译输入,适用于WhisperTokenizer,取决于语言、任务以及是否预测时间戳标记。

用于覆盖附加到标签序列开头的预置标记。

示例:获取语言的ID

// instantiate the tokenizer and set the prefix token to Spanish
const tokenizer = await WhisperTokenizer.from_pretrained('Xenova/whisper-tiny');
const forced_decoder_ids = tokenizer.get_decoder_prompt_ids({ language: 'spanish' });
// [(1, 50262), (2, 50363)]

类型: WhisperTokenizer 的实例方法
返回值: Array.<Array<number>> - 解码提示ID。

参数类型描述
options对象

解码提示生成选项。

[options.language]string

转录文本的语言。对于多语言语音识别和多语言语音翻译任务,将对应的语言ID标记附加到序列开头,例如,“西班牙语”的话,将“<|es>”标记附加到序列开头。

[options.task]string

任务标识符,用于附加到序列开头(如果有)。这应该用于多语言微调,使用“transcribe”进行语音识别和“translate”进行语音翻译。

[options.no_timestamps]布尔值

是否将“<|notimestamps|>”标记添加到序列开头。


tokenizers.MarianTokenizer

类型: tokenizers 的静态类
待办事项


new MarianTokenizer(tokenizerJSON, tokenizerConfig)

创建一个新的MarianTokenizer实例。

参数类型描述
tokenizerJSON对象

分词器的 JSON 数据。

tokenizerConfig对象

分词器的配置。


marianTokenizer._encode_text(text) ⇒ <code> 数组 </code>

编码单个文本。必须覆盖此方法,因为在编码之前必须删除语言代码。

类型:MarianTokenizer的实例方法
返回:代码 <code> 数组 </code> - 编码后的标记。
参考:[https://github.com/huggingface/transformers/blob/12d51db243a00726a548a43cc333390ebae731e3/src/transformers/models/marian/tokenization_marian.py#L204-L213](https://github.com/huggingface/transformers/blob/12d51db243a00726a548a43cc333390ebae731e3/src/transformers/models/marian/tokenization_marian.py#L204-L213)

参数类型描述
textstring | null

要编码的文本。


用于通过from_pretrained函数实例化预训练标记器的辅助类。选定的标记器类由标记器配置中指定的类型确定。

类型: tokenizers 的静态类


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

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

要实例化的分词器类基于配置对象(config)的tokenizer_class属性选择(要么作为参数传递,要么在可能的情况下从pretrained_model_name_or_path加载)

类型AutoTokenizer的静态方法
返回值Promise<PreTrainedTokenizer> - PreTrainedTokenizer类的新实例。

参数类型描述
pretrained_model_name_or_pathstring

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

  • 一个字符串,表示保存在huggingface.co模型库中预训练分词器的模型ID。有效的模型ID可以在根级找到,如bert-base-uncased,也可以在用户或组织名下命名空间中找到,如dbmdz/bert-base-german-cased
  • 包含分词器文件的目录的路径,例如./my_model_directory/
optionsPretrainedTokenizerOptions

加载分词器时的额外选项。


tokenizers~AddedToken

表示用户在现有模型词汇上添加的标记。AddedToken可以根据不同情况配置其行为,例如:

  • 是否仅匹配单个单词
  • 是否在其左侧或右侧包含任何空白字符

类型tokenizers的内部类


new AddedToken(config)

创建一个AddedToken的新实例。

参数类型默认描述
config对象

添加标记配置对象。

config.contentstring

添加标记的内容。

config.id数字

添加标记的ID。

[config.single_word]布尔值false

此令牌是否必须为单个单词或可分割单词。

[config.lstrip]布尔值false

此令牌是否应该去除其左侧的空白。

[config.rstrip]布尔值false

此令牌是否应该去除其右侧的空白。

[config.normalized]布尔值false

此令牌是否应该进行规范化。

[config.special]布尔值false

此令牌是否是特殊的。


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

TokenizerModel的子类,使用WordPiece编码来编码令牌。

类型tokenizers的内部类
扩展: TokenizerModel


new WordPieceTokenizer(config)

参数类型默认描述
config对象

配置对象。

config.vocab对象

将标记映射到ID的映射。

config.unk_tokenstring

未知名令牌字符串。

config.continuing_subword_prefixstring

用于继续子词的词前缀。

[config.max_input_chars_per_word]数字100

每个单词的最大字符数。


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

将标记映射到ID的映射。

类型: WordPieceTokenizer实例属性


wordPieceTokenizer.unk_token_id : <code> 数字 </code>

未知标记的ID。

类型: WordPieceTokenizer实例属性


wordPieceTokenizer.unk_token : <code> 字符串 </code>

未知名令牌字符串。

类型: WordPieceTokenizer实例属性


wordPieceTokenizer.max_input_chars_per_word : <code> 数字 </code>

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

类型: WordPieceTokenizer实例属性


wordPieceTokenizer.vocab : <code> 数组. < 字符串 > </code>

标记数组。

类型: WordPieceTokenizer实例属性


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

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

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

参数类型描述
tokensArray.<string>

要编码的标记。


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

代表单语元标记器模型的类。

类型tokenizers的内部类
扩展: TokenizerModel


new Unigram(config, moreConfig)

创建一个新的单语元标记器模型。

参数类型描述
config对象

单语元模型配置对象。

config.unk_id数字

未知词的ID

config.vocabArray.<Array<any>>

表示词到分数映射的2D数组。

moreConfig对象

单语元模型的额外配置对象。


unigram.populateNodes(lattice)

填充格网点。

类型: 是 Unigram 的实例方法

参数类型描述
latticeTokenLattice

要填充网点的令牌格点。


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

使用 unigram 模型将令牌数组编码为由子令牌组成的数组。

类型: 是 Unigram 的实例方法
返回值: Array.<string> - 使用 unigram 模型编码输入令牌获得的子令牌数组。

参数类型描述
normalizedstring

标准化字符串。


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

使用 Unigram 编码对令牌数组进行编码。

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

参数类型描述
tokensArray.<string>

要编码的标记。


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

BPE 类,用于将文本编码为字节对编码(BPE)标记。

类型tokenizers的内部类
扩展: TokenizerModel


新的BPE(config)

创建一个BPE实例。

参数类型默认描述
config对象

BPE的配置对象。

config.vocab对象

将标记映射到ID的映射。

config.mergesArray.<string>

作为字符串的BPE合并数组。

config.unk_tokenstring

用于词汇表之外词语的未知标记。

config.end_of_word_suffixstring

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

[config.continuing_subword_suffix]string

用于单词间的后缀。

[config.byte_fallback]布尔值false

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

[config.ignore_merges]布尔值false

是否在合并之前与词汇匹配标记。


bpE.tokens_to_ids : <code>地 映射。< string, number > </code>

类型: BPE 的实例属性


bpE.cache : <code>地 映射。< string, Array < string > > </code>

类型: BPE 的实例属性


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

将给定令牌应用Byte-Pair-Encoding (BPE)。高效的基于堆的优先队列实现改编自 https://github.com/belladoreai/llama-tokenizer-js

类型: BPE 的实例方法
返回值: Array.<string> - BPE 编码的令牌数组。

参数类型描述
tokenstring

要编码的令牌。


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

使用 BPE 算法对输入的令牌序列进行编码,并返回结果子词令牌。

类型: BPE 的实例方法
返回值: Array.<string> - 应用 BPE 算法于输入令牌序列后的结果子词令牌。

参数类型描述
tokensArray.<string>

要编码的输入令牌序列。


只有词汇的旧标记器类。

类型tokenizers的内部类


new LegacyTokenizerModel(config, moreConfig)

创建 LegacyTokenizerModel 实例。

参数类型描述
config对象

LegacyTokenizerModel 的配置对象。

config.vocab对象

标记到id的(可能嵌套的)映射。

moreConfig对象

LegacyTokenizerModel 模型额外的配置对象。


legacyTokenizerModel.tokens_to_ids : <代码> Map. <字符串, 数字 > </代码>

类型: LegacyTokenizerModel 的实例属性


tokenizers~Normalizer

文本归一化的基类。

类型: tokenizers 的内部抽象类


new Normalizer(config)

参数类型描述
config对象

正常化对象的配置。


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

正常化输入文本。

类型:Tokenizers.Normalizer抽象方法实例
返回: string - 正常化后的文本。
抛出异常:

  • 如果此方法在子类中没有实现,则抛出错误。
参数类型描述
textstring

要正常化的文本。


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

等于Normalizer#normalize

类型:Tokenizers.Normalizer实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要正常化的文本。


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

从配置对象创建normalizer的工厂方法。

类型:Tokenizers.Normalizer静态方法
返回: Normalizer - 一个Normalizer对象。
抛出异常:

  • 如果配置中指定了未知的Normalizer类型,则抛出错误。
参数类型描述
config对象

正常化对象的配置。


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

替换发生匹配的模式与给定字符串或正则表达式的正常化器。

类型tokenizers的内部类
扩展: Normalizer


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

通过替换模式内容来规范化输入文本。

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

参数类型描述
textstring

要规范化的输入文本。


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

将 Unicode 规范化形式 C (NFC) 应用于输入文本的正常化器。

类型tokenizers的内部类
扩展: Normalizer


通过应用Unicode规范化形式C (NFC) 来规范化输入文本。

类型:NFC的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要规范化的输入文本。


NFKC 规范化器。

类型tokenizers的内部类
扩展: Normalizer


使用NFKC规范化来规范化文本。

类型:NFKC的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要规范化的文本。


NFKD 规范化器。

类型tokenizers的内部类
扩展: Normalizer


nfkD.normalize(text) ⇒ <code>字符串</code>

使用NFKD归一化规范文本。

类型: NFKD的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要规范化的文本。


tokenizers~StripNormalizer

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

类型tokenizers的内部类


stripNormalizer.normalize(text) ⇒ <code>字符串</code>

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

类型: StripNormalizer的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

输入文本。


tokenizers~StripAccents ⇐ <code>规范器</code>

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

类型tokenizers的内部类
扩展: Normalizer


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

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

类型: StripAccents 的实例方法
返回值: string - 无重音的正常化文本。

参数类型描述
textstring

输入文本。


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

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

类型tokenizers的内部类
扩展: Normalizer


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

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

类型: Lowercase 的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要正常化的文本。


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

一个将字符串前缀添加到输入字符串的规范化器。

类型tokenizers的内部类
扩展: Normalizer


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

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

类型: Prepend 的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要正常化的文本。


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

应用一系列标准化器的标准化器。

类型tokenizers的内部类
扩展: Normalizer


new NormalizerSequence(config)

创建 NormalizerSequence 的新实例。

参数类型描述
config对象

配置对象。

config.normalizersArray.<Object>

标准化器配置对象数组。


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

将一系列标准化器应用于输入文本。

类型: NormalizerSequence 的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要正常化的文本。


tokenizers~BertNormalizer ⇐ <code> 标准化器 </code>

表示在 BERT 分词中使用的标准化器的一个类。

类型tokenizers的内部类
扩展: Normalizer


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

为输入文本中的任何 CJK(中文、日文或韩文)字符添加空白。

类型: BertNormalizer 的实例方法
返回值: string - 添加了 CJK 字符周围的空白的分词文本。

参数类型描述
textstring

待分词的输入文本。


bertNormalizer._is_chinese_char(cp) ⇒ <code> boolean </code>

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

“汉字”被定义为 CJK Unicode 区块中的任何内容:[点击查看](https://en.wikipedia.org/wiki/CJK_Unified_Ideographs_(Unicode_block))

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

类型: BertNormalizer 的实例方法
返回值: boolean - 如果码点表示一个 CJK 字符则为真,否则为假。

参数类型描述
cp数字

要检查的 Unicode 码点。


bertNormalizer.stripAccents(text) ⇒ <code>字符串</code>

从指定的文本中去除重音。

类型: BertNormalizer 的实例方法
返回: 字符串 - 移除重音后的文本。

参数类型描述
textstring

要去除重音的文本。


bertNormalizer.normalize(text) ⇒ <code>字符串</code>

根据配置对指定的文本进行标准化。

类型: BertNormalizer 的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要正常化的文本。


tokenizers~PreTokenizer ⇐ <code>可调用类</code>

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

类型tokenizers的内部类
扩展: Callable


preTokenizer.pre_tokenize_text(text, [options]) ⇒ <code>字符串数组</code>

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

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

  • 如果子类中没有实现该方法,将引发Error
参数类型描述
textstring

待预分词的文本。

[选项]对象

预分词逻辑的附加选项。


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

将指定文本分词成预标记。

类型: PreTokenizer的实例方法
返回: Array.<string> - 预标记数组。

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

待预分词的文本或文本数组。

[选项]对象

预分词逻辑的附加选项。


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

PreTokenizer#pre_tokenize的别名。

类型: PreTokenizer的实例方法
返回: Array.<string> - 预标记数组。

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

待预分词的文本或文本数组。

[选项]对象

预分词逻辑的附加选项。


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

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

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

  • 如果提供的配置对象不对应任何已知的预分词器,将引发Error
参数类型描述
config对象

预分词器的配置对象。


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

类型tokenizers的内部类
扩展: PreTokenizer


new BertPreTokenizer(config)

使用类似于BERT原始实现的基本分词方案的预分词器,将文本拆分为单词子词。

参数类型描述
config对象

配置对象。


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

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

类型: BertPreTokenizer 的实例方法
返回值: Array.<string> - token的数组。

参数类型描述
textstring

要分词的文本。

[选项]对象

预分词逻辑的附加选项。


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

将文本拆分成交字编码(BPE)子词的预分词器。

类型tokenizers的内部类
扩展: PreTokenizer


new ByteLevelPreTokenizer(config)

创建一个ByteLevelPreTokenizer类的新实例。

参数类型描述
config对象

配置对象。


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>数组. <字符串 > </code>

使用字节级别的标记化方式对单个文本片段进行标记化。

类型:类ByteLevelPreTokenizer的实例方法
返回值: Array.<string> - token的数组。

参数类型描述
textstring

要分词的文本。

[选项]对象

预分词逻辑的附加选项。


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

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

类型tokenizers的内部类
扩展: PreTokenizer


new SplitPreTokenizer(config)

参数类型描述
config对象

预标记器的配置选项。

config.pattern对象

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

config.pattern.Stringstring | undefined

用于拆分的字符串。只有在模式是字符串时才定义。

config.pattern.Regexstring | undefined

用于拆分的正则表达式。只有在模式是正则表达式时才定义。

config.behaviorSplitDelimiterBehavior

拆分时的行为。

config.invert布尔值

是否拆分(invert=false)或匹配(invert=true)模式。


splitPreTokenizer.pre_tokenize_text(text, [options]) 返回 <code> 数组. 字符串 </code>

使用给定模式分割文本。

类型:是SplitPreTokenizer的实例方法
返回值: Array.<string> - token的数组。

参数类型描述
textstring

要分词的文本。

[选项]对象

预分词逻辑的附加选项。


tokenizers~PunctuationPreTokenizer 返回 <code> PreTokenizer </code>

基于标点符号分割文本。

类型tokenizers的内部类
扩展: PreTokenizer


new PunctuationPreTokenizer(config)

参数类型描述
config对象

预标记器的配置选项。

config.behaviorSplitDelimiterBehavior

拆分时的行为。


punctuationPreTokenizer.pre_tokenize_text(text, [options]) 返回 <code> 数组. 字符串 </code>

使用给定模式分割文本。

类型:是PunctuationPreTokenizer的实例方法
返回值: Array.<string> - token的数组。

参数类型描述
textstring

要分词的文本。

[选项]对象

预分词逻辑的附加选项。


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

基于数字分割文本。

类型tokenizers的内部类
扩展: PreTokenizer


new DigitsPreTokenizer(config)

参数类型描述
config对象

预标记器的配置选项。

config.individual_digits布尔值

是否基于单个数字分割。


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

使用给定模式分割文本。

类型: DigitsPreTokenizer 的实例方法
返回值: Array.<string> - token的数组。

参数类型描述
textstring

要分词的文本。

[选项]对象

预分词逻辑的附加选项。


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

类型tokenizers的内部类
扩展: Callable


new PostProcessor(config)

参数类型描述
config对象

后处理程序的配置。


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

子类中实现的方法,用于对新给定的标记进行后处理。

类型: PostProcessor 的实例方法
返回值: PostProcessedOutput - 后处理的标记
抛出异常:

  • 如果未在子类中实现此方法,则抛出错误。
参数类型描述
tokens数组

要后处理的输入标记。

...args*

后处理逻辑所需的其他参数。


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

PostProcessor#post_process 的别名。

类型: PostProcessor 的实例方法
返回值: PostProcessedOutput - 后处理的标记

参数类型描述
tokens数组

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

...args*

后处理逻辑所需的其他参数。


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

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

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

  • 错误 如果遇到未知的PostProcessor类型。
参数类型描述
config对象

代表PostProcessor的配置对象。


tokenizers~BertProcessing

在输入的开始和结束处添加特殊标记的后处理程序。

类型tokenizers的内部类


new BertProcessing(config)

参数类型描述
config对象

后处理程序的配置。

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 的新实例。

参数类型描述
config对象

后处理器的配置选项。

config.single数组

单个标记序列的模板。

config.pair数组

标记序列对的模板。


templateProcessing.post_process(tokens, [tokens_pair]) ⇒ <code> 后处理输出 </code>

将模板中的特殊令牌替换为实际的令牌。

类型: TemplateProcessing的实例方法
返回: 后处理输出 - 一个对象,包含替换了特殊令牌的实际令牌列表。

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

第一个序列的令牌列表。

[tokens_pair]Array.<string>

第二个序列的令牌列表(可选)。


tokenizers~ByteLevelPostProcessor ⇐ <code> 后处理器 </code>

返回给定令牌的后处理器。

类型tokenizers的内部类
扩展: PostProcessor


byteLevelPostProcessor.post_process(tokens, [tokens_pair]) ⇒ <code> 后处理输出 </code>

后处理给定的令牌。

类型: ByteLevelPostProcessor的实例方法
返回: 后处理输出 - 包含后处理令牌的对象。

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

第一个序列的令牌列表。

[tokens_pair]Array.<string>

第二个序列的令牌列表(可选)。


tokenizers~PostProcessorSequence

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

类型tokenizers的内部类


new PostProcessorSequence(config)

创建一个新的PostProcessorSequence实例。

参数类型描述
config对象

配置对象。

config.processorsArray.<Object>

要应用的后处理器列表。


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

后处理给定的令牌。

类型: PostProcessorSequence 的实例方法
返回: 后处理输出 - 包含后处理令牌的对象。

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

第一个序列的令牌列表。

[tokens_pair]Array.<string>

第二个序列的令牌列表(可选)。


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

标记解码器的基础类。

类型tokenizers的内部类
扩展: Callable


new Decoder(config)

创建一个Decoder实例。

参数类型描述
config对象

配置对象。


decoder.added_tokens : <code>数组. < AddedToken > </code>

类型: Decoder的实例属性


decoder._call(tokens) ⇒ <code>字符串 </code>

调用decode方法。

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

参数类型描述
tokensArray.<string>

令牌列表。


decoder.decode(tokens) ⇒ <code>字符串 </code>

解码token列表。

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

参数类型描述
tokensArray.<string>

令牌列表。


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

将解码器应用于一个令牌列表。

类型: Decoder的实例方法
返回: Array. - 解码后的令牌列表。
抛出异常:

  • 错误 如果 `decode_chain` 方法在子类中没有实现。
参数类型描述
tokensArray.<string>

令牌列表。


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

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

类型: Decoder 的静态方法
返回: Decoder - 解码器实例。
抛出异常:

  • 错误 如果提供了未知的解码器类型。
参数类型描述
config对象

配置对象。


tokenizers~FuseDecoder

融合简单地将所有令牌融合成一个大的字符串。这通常是解码的最后一步,但也存在这种解码器,以防某些解码器需要在该步骤之后进行。

类型tokenizers的内部类


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

类型FuseDecoder 的实例方法


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

将一组 WordPiece 标记解码成一个字符串的解码器。

类型tokenizers的内部类
继承Decoder


new WordPieceDecoder(config)

创建新的 WordPieceDecoder 实例。

参数类型描述
config对象

配置对象。

config.prefixstring

WordPiece 编码使用的前缀。

config.cleanup布尔值

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


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

类型WordPieceDecoder 的实例方法


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

字节级解码器,用于标记化输出。继承自 Decoder 类。

类型tokenizers的内部类
继承Decoder


new ByteLevelDecoder(config)

创建一个 ByteLevelDecoder 对象。

参数类型描述
config对象

配置对象。


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

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

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

参数类型描述
tokensArray.<string>

待解码的标记数组。


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

类型: ByteLevelDecoder 的实例方法


tokenizers~CTCDecoder

CTC(连接时序分类)解码器。参见 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实例。

参数类型描述
config对象

配置对象。

config.decodersArray.<Object>

要应用解码器的列表。


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

类型: DecoderSequence的实例方法


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

此PreTokenizer将空格替换为指定的替换字符,如果请求则添加前缀空格,并返回一个标记列表。

类型tokenizers的内部类
扩展: PreTokenizer


new MetaspacePreTokenizer(config)

参数类型默认描述
config对象

MetaspacePreTokenizer的配置对象。

config.add_prefix_space布尔值

是否向第一个标记添加前缀空格。

config.replacementstring

替换空格的字符。

[config.str_rep]string"config.replacement"

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

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

元空间预制方案。


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

此方法接受一个字符串,用替换字符替换空格,如果请求则添加前缀空格,并返回一个新的令牌列表。

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

参数类型描述
textstring

待预分词的文本。

[选项]对象

预分词的选项。

[options.section_index]数字

要预分词的节区索引。


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

MetaspaceDecoder 类扩展了 Decoder 类并解码 Metaspace 分词。

类型tokenizers的内部类
继承Decoder


new MetaspaceDecoder(config)

构建一个新的 MetaspaceDecoder 对象。

参数类型描述
config对象

MetaspaceDecoder 的配置对象。

config.add_prefix_space布尔值

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

config.replacementstring

替换空格的字符串。


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

类型: MetaspaceDecoder 的实例方法


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

应用预编译的字符映射的标准化器。这在 C++ 中应用复杂的标准化并将它们暴露给 JavaScript 时很有用。

类型tokenizers的内部类
扩展: Normalizer


new Precompiled(config)

创建 Precompiled 标准化器的新实例。

参数类型描述
config对象

Precompiled 标准化器的配置对象。

config.precompiled_charsmap对象

预编译的字符映射对象。


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

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

类型: Precompiled 的实例方法
返回: string - 正常化后的文本。

参数类型描述
textstring

要正常化的文本。


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

对输入文本应用一系列前标记化器的预标记化器。

类型tokenizers的内部类
扩展: PreTokenizer


new PreTokenizerSequence(config)

创建 PreTokenizerSequence 的实例。

参数类型描述
config对象

预标记化器序列的配置对象。

config.pretokenizersArray.<Object>

一组预标记化器配置。


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

按顺序将序列中的每个前标记化器应用于输入文本。

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

参数类型描述
textstring

待预分词的文本。

[选项]对象

预分词逻辑的附加选项。


tokenizers~WhitespacePreTokenizer

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

类型tokenizers的内部类


new WhitespacePreTokenizer(config)

创建WhitespacePreTokenizer的一个实例。

参数类型描述
config对象

预分词器的配置对象。


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

通过在单词边界处分割输入文本进行预分词。

类型:WhitespacePreTokenizer的实例方法
返回值Array.<string> - 通过在空白处分割输入文本产生的标记数组。

参数类型描述
textstring

要预分词的文本。

[选项]对象

预分词逻辑的附加选项。


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

通过空白字符分割文本字符串为单独的标记。

类型tokenizers的内部类
扩展: PreTokenizer


new WhitespaceSplit(config)

创建一个 BlankSplit 的实例。

参数类型描述
config对象

预分词器的配置对象。


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

通过在空白字符上拆分输入文本来预标记化输入文本。

类型WhitespaceSplit 的实例方法
返回值Array.<string> - 通过在空白处分割输入文本产生的标记数组。

参数类型描述
textstring

要预分词的文本。

[选项]对象

预分词逻辑的附加选项。


tokenizers~ReplacePreTokenizer

类型tokenizers的内部类


new ReplacePreTokenizer(config)

参数类型描述
config对象

预标记器的配置选项。

config.pattern对象

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

config.contentstring

要替换的模式的替代内容。


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

通过替换某些字符来预标记化输入文本。

类型ReplacePreTokenizer 的实例方法
返回值:Array.<string> - 由替换某些字符产生的令牌数组。

参数类型描述
textstring

要预分词的文本。

[选项]对象

预分词逻辑的附加选项。


tokenizers~BYTES_TO_UNICODE ⇒ <code> 对象 </code>

返回utf-8字节和与Unicode字符串的映射列表。具体避免映射到BPE代码无法处理的空白和控制字符。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部常量
返回值Object - 包含utf-8字节键和Unicode字符串值的对象。


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

从指定路径加载分词器。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回值Promise.<Array<any>> - 一个解析为加载的分词器信息的promise。

参数类型描述
pretrained_model_name_or_pathstring

分词器目录的路径。

optionsPretrainedTokenizerOptions

加载分词器时的额外选项。


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

辅助函数,根据正则表达式分割字符串,但保留分隔符。这在JavaScript的.split()方法不保留分隔符,并且用捕获组包裹会导致现有捕获组(由于嵌套)问题的情况下是必需的。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回值Array.<string> - 分割后的字符串。

参数类型描述
textstring

要分割的文本。

regexRegExp

用于分割的正则表达式。


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

从配置对象构建模式的有用方法。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回值: RegExp | null - 编译后的模式。

参数类型默认描述
pattern对象

模式对象。

invert布尔值

是否反转模式。


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

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

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回值: Map.<string, any> - Map。

参数类型描述
obj对象

要转换的对象。


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

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

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回值: Array.<number> - 列表形式的张量。

参数类型描述
tensor张量。

要转换的张量。


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

清理简单英语分词后的简单标记,如分隔符前的空格和缩写形式。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回值: string - 清理后的文本。

参数类型描述
textstring

要清理的文本。


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

辅助函数,用于从字符串中移除重音。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回: 字符串 - 移除重音后的文本。

参数类型描述
textstring

要移除重音的文本。


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

辅助函数,用于将字符串转换为小写并移除重音。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回值: string - 已转换成小写且移除重音的文本。

参数类型描述
textstring

要转换成小写并移除重音的文本。


tokenizers~fuse(arr, value, mapping)

将数组中连续的指定值合并的辅助函数。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法

参数类型描述
arrArray.<string>

输入数组

value任何类型

要合并的值。

mappingMap

从输入域到值的映射。


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

按空格分割字符串。

类型:<a href="#module_tokenizers">tokenizers</a> 的内部方法
返回值Array.<string> - 分割后的字符串。

参数类型描述
textstring

要分割的文本。


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

附加的特定于分词器的属性。

Kind: tokenizers 的内部typedef
属性

Name类型默认描述
[遗产]布尔值false

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


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

Kind: tokenizers 的内部typedef
属性

Name类型描述
tokenstring

与节点关联的标记

bias数字

为节点提供位置偏差。

[score]数字

节点的分数。

[prev]BPENode

链表中的上一个节点。

[next]BPENode

链表中的下一个节点。


tokenizers~SplitDelimiterBehavior : <code> ‘已删除’ </code> | <code> ‘独立’ </code> | <code> ‘与前一个合并’ </code> | <code> ‘与下一个合并’ </code> | <code> ‘连续’ </code>

Kind: tokenizers 的内部typedef


tokenizers~PostProcessedOutput : <code> 对象 </code>

Kind: tokenizers 的内部typedef
属性

Name类型描述
tokensArray.<string>

后处理器生成的标记列表。

[token_type_ids]数组.数字

后处理器生成的标记类型ID列表。


tokenizers~EncodingSingle : <code> 对象 </code>

Kind: tokenizers 的内部typedef
属性

Name类型描述
input_ids数组.数字

要将模型输入的标记ID列表。

attention_mask数组.数字

要将模型输入的标记类型ID列表。

[token_type_ids]数组.数字

指定模型应关注的标记索引列表。


tokenizers~Message : <code> 对象 </code>

Kind: tokenizers 的内部typedef
属性

Name类型描述
角色string

消息的作用(例如,“用户”、“助手”或“系统”)。

内容string

消息的内容。


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

包含标记化器调用函数的输出。

Kind: tokenizers 的内部typedef
属性

Name类型描述
input_idsBatchEncodingItem

要将模型输入的标记ID列表。

attention_maskBatchEncodingItem

指定模型应关注哪些标记的索引列表。

[token_type_ids]BatchEncodingItem

要提供给模型标记类型ID的列表。


< > 在GitHub上更新