Transformers.js 文档
分词器
并获得增强的文档体验
开始使用
分词器
分词器用于为模型准备文本输入。
示例: 创建一个 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,
// }
- 分词器
- 静态
- .TokenizerModel ⇐
Callable
new TokenizerModel(config)
- 实例
.vocab
:Array.<string>
.tokens_to_ids
:Map.<string, number>
.fuse_unk
:boolean
._call(tokens)
⇒Array.<string>
.encode(tokens)
⇒Array.<string>
.convert_tokens_to_ids(tokens)
⇒Array.<number>
.convert_ids_to_tokens(ids)
⇒Array.<string>
- 静态
.fromConfig(config, ...args)
⇒TokenizerModel
- .PreTrainedTokenizer
new PreTrainedTokenizer(tokenizerJSON, tokenizerConfig)
- 实例
.added_tokens
:Array.<AddedToken>
.added_tokens_map
:Map.<string, AddedToken>
.remove_space
:boolean
._call(text, options)
⇒BatchEncoding
._encode_text(text)
⇒Array<string>
|null
._tokenize_helper(text, options)
⇒*
.tokenize(text, options)
⇒Array.<string>
.encode(text, options)
⇒Array.<number>
.batch_decode(batch, decode_args)
⇒Array.<string>
.decode(token_ids, [decode_args])
⇒string
.decode_single(token_ids, decode_args)
⇒string
.get_chat_template(options)
⇒string
.apply_chat_template(conversation, options)
⇒string
|Tensor
|Array<number>
|Array<Array<number>>
|BatchEncoding
- 静态
.from_pretrained(pretrained_model_name_or_path, options)
⇒Promise.<PreTrainedTokenizer>
- .BertTokenizer ⇐
PreTrainedTokenizer
- .AlbertTokenizer ⇐
PreTrainedTokenizer
- .NllbTokenizer
- .M2M100Tokenizer
- .WhisperTokenizer ⇐
PreTrainedTokenizer
- .MarianTokenizer
- .AutoTokenizer
new AutoTokenizer()
.from_pretrained(pretrained_model_name_or_path, options)
⇒Promise.<PreTrainedTokenizer>
.is_chinese_char(cp)
⇒boolean
- .TokenizerModel ⇐
- 内部
- ~AddedToken
- ~WordPieceTokenizer ⇐
TokenizerModel
new WordPieceTokenizer(config)
.tokens_to_ids
:Map.<string, number>
.unk_token_id
:number
.unk_token
:string
.max_input_chars_per_word
:number
.vocab
:Array.<string>
.encode(tokens)
⇒Array.<string>
- ~Unigram ⇐
TokenizerModel
new Unigram(config, moreConfig)
.scores
:Array.<number>
.populateNodes(lattice)
.tokenize(normalized)
⇒Array.<string>
.encode(tokens)
⇒Array.<string>
- ~BPE ⇐
TokenizerModel
new BPE(config)
.tokens_to_ids
:Map.<string, number>
.merges
:*
.config.merges
:*
.max_length_to_cache
.cache_capacity
.clear_cache()
.bpe(token)
⇒Array.<string>
.encode(tokens)
⇒Array.<string>
- ~LegacyTokenizerModel
new LegacyTokenizerModel(config, moreConfig)
.tokens_to_ids
:Map.<string, number>
- ~Normalizer
new Normalizer(config)
- 实例
.normalize(text)
⇒string
._call(text)
⇒string
- 静态
.fromConfig(config)
⇒Normalizer
- ~Replace ⇐
Normalizer
.normalize(text)
⇒string
- ~UnicodeNormalizer ⇐
Normalizer
.form
:string
.normalize(text)
⇒string
- ~NFC ⇐
UnicodeNormalizer
- ~NFD ⇐
UnicodeNormalizer
- ~NFKC ⇐
UnicodeNormalizer
- ~NFKD ⇐
UnicodeNormalizer
- ~StripNormalizer
.normalize(text)
⇒string
- ~StripAccents ⇐
Normalizer
.normalize(text)
⇒string
- ~Lowercase ⇐
Normalizer
.normalize(text)
⇒string
- ~Prepend ⇐
Normalizer
.normalize(text)
⇒string
- ~NormalizerSequence ⇐
Normalizer
- ~BertNormalizer ⇐
Normalizer
._tokenize_chinese_chars(text)
⇒string
.stripAccents(text)
⇒string
.normalize(text)
⇒string
- ~PreTokenizer ⇐
Callable
- 实例
.pre_tokenize_text(text, [options])
⇒Array.<string>
.pre_tokenize(text, [options])
⇒Array.<string>
._call(text, [options])
⇒Array.<string>
- 静态
.fromConfig(config)
⇒PreTokenizer
- 实例
- ~BertPreTokenizer ⇐
PreTokenizer
new BertPreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~ByteLevelPreTokenizer ⇐
PreTokenizer
new ByteLevelPreTokenizer(config)
.add_prefix_space
:boolean
.trim_offsets
:boolean
.use_regex
:boolean
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~SplitPreTokenizer ⇐
PreTokenizer
new SplitPreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~PunctuationPreTokenizer ⇐
PreTokenizer
new PunctuationPreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~DigitsPreTokenizer ⇐
PreTokenizer
new DigitsPreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~PostProcessor ⇐
Callable
new PostProcessor(config)
- 实例
.post_process(tokens, ...args)
⇒PostProcessedOutput
._call(tokens, ...args)
⇒PostProcessedOutput
- 静态
.fromConfig(config)
⇒PostProcessor
- ~BertProcessing
new BertProcessing(config)
.post_process(tokens, [tokens_pair])
⇒PostProcessedOutput
- ~TemplateProcessing ⇐
PostProcessor
new TemplateProcessing(config)
.post_process(tokens, [tokens_pair])
⇒PostProcessedOutput
- ~ByteLevelPostProcessor ⇐
PostProcessor
.post_process(tokens, [tokens_pair])
⇒PostProcessedOutput
- ~PostProcessorSequence
new PostProcessorSequence(config)
.post_process(tokens, [tokens_pair])
⇒PostProcessedOutput
- ~Decoder ⇐
Callable
new Decoder(config)
- 实例
.added_tokens
:Array.<AddedToken>
._call(tokens)
⇒string
.decode(tokens)
⇒string
.decode_chain(tokens)
⇒Array.<string>
- 静态
.fromConfig(config)
⇒Decoder
- ~FuseDecoder
.decode_chain()
:*
- ~WordPieceDecoder ⇐
Decoder
- ~ByteLevelDecoder ⇐
Decoder
- ~CTCDecoder
.convert_tokens_to_string(tokens)
⇒string
.decode_chain()
:*
- ~DecoderSequence ⇐
Decoder
- ~MetaspacePreTokenizer ⇐
PreTokenizer
new MetaspacePreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~MetaspaceDecoder ⇐
Decoder
- ~Precompiled ⇐
Normalizer
new Precompiled(config)
.normalize(text)
⇒string
- ~PreTokenizerSequence ⇐
PreTokenizer
new PreTokenizerSequence(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~WhitespacePreTokenizer
new WhitespacePreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~WhitespaceSplit ⇐
PreTokenizer
new WhitespaceSplit(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
- ~ReplacePreTokenizer
new ReplacePreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
~BYTES_TO_UNICODE
⇒Object
~loadTokenizer(pretrained_model_name_or_path, options)
⇒Promise.<Array<any>>
~regexSplit(text, regex)
⇒Array.<string>
~createPattern(pattern, invert)
⇒RegExp
|null
~objectToMap(obj)
⇒Map.<string, any>
~prepareTensorForDecode(tensor)
⇒Array.<number>
~clean_up_tokenization(text)
⇒string
~remove_accents(text)
⇒string
~lowercase_and_remove_accent(text)
⇒string
~whitespace_split(text)
⇒Array.<string>
~PretrainedTokenizerOptions
:Object
~BPENode
:Object
~SplitDelimiterBehavior
:’removed’
|’isolated’
|’mergedWithPrevious’
|’mergedWithNext’
|’contiguous’
~PostProcessedOutput
:Object
~EncodingSingle
:Object
~Message
:Object
~BatchEncoding
:Array<number>
|Array<Array<number>>
|Tensor
- 静态
tokenizers.TokenizerModel ⇐ <code> Callable </code>
分词器模型的抽象基类。
类型: tokenizers
的静态类
继承自: Callable
- .TokenizerModel ⇐
Callable
new TokenizerModel(config)
- 实例
.vocab
:Array.<string>
.tokens_to_ids
:Map.<string, number>
.fuse_unk
:boolean
._call(tokens)
⇒Array.<string>
.encode(tokens)
⇒Array.<string>
.convert_tokens_to_ids(tokens)
⇒Array.<number>
.convert_ids_to_tokens(ids)
⇒Array.<string>
- 静态
.fromConfig(config, ...args)
⇒TokenizerModel
new TokenizerModel(config)
创建一个新的 TokenizerModel 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 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>
- 编码后的词元。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 要编码的词元。 |
tokenizerModel.encode(tokens) ⇒ <code> Array. < string > </code>
将词元列表编码为词元 ID 列表。
类型: TokenizerModel
的实例方法
返回: Array.<string>
- 编码后的词元。
抛出:
- 如果在子类中未实现,则会抛出错误。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 要编码的词元。 |
tokenizerModel.convert_tokens_to_ids(tokens) ⇒ <code> Array. < number > </code>
将词元列表转换为词元 ID 列表。
类型: TokenizerModel
的实例方法
返回: Array.<number>
- 转换后的词元 ID。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 要转换的词元。 |
tokenizerModel.convert_ids_to_tokens(ids) ⇒ <code> Array. < string > </code>
将词元 ID 列表转换为词元列表。
类型: TokenizerModel
的实例方法
返回: Array.<string>
- 转换后的词元。
参数量 | 类型 | 描述 |
---|---|---|
ids | Array<number> | Array<bigint> | 要转换的词元 ID。 |
TokenizerModel.fromConfig(config, ...args) ⇒ <code> TokenizerModel </code>
根据提供的配置对象实例化一个新的 TokenizerModel 实例。
类型: TokenizerModel
的静态方法
返回: TokenizerModel
- 一个新的 TokenizerModel 实例。
抛出:
- 如果配置中的 TokenizerModel 类型未被识别,将抛出错误。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | TokenizerModel 的配置对象。 |
...args | * | 传递给特定 TokenizerModel 构造函数的可选参数。 |
tokenizers.PreTrainedTokenizer
类型: tokenizers
的静态类
- .PreTrainedTokenizer
new PreTrainedTokenizer(tokenizerJSON, tokenizerConfig)
- 实例
.added_tokens
:Array.<AddedToken>
.added_tokens_map
:Map.<string, AddedToken>
.remove_space
:boolean
._call(text, options)
⇒BatchEncoding
._encode_text(text)
⇒Array<string>
|null
._tokenize_helper(text, options)
⇒*
.tokenize(text, options)
⇒Array.<string>
.encode(text, options)
⇒Array.<number>
.batch_decode(batch, decode_args)
⇒Array.<string>
.decode(token_ids, [decode_args])
⇒string
.decode_single(token_ids, decode_args)
⇒string
.get_chat_template(options)
⇒string
.apply_chat_template(conversation, options)
⇒string
|Tensor
|Array<number>
|Array<Array<number>>
|BatchEncoding
- 静态
.from_pretrained(pretrained_model_name_or_path, options)
⇒Promise.<PreTrainedTokenizer>
new PreTrainedTokenizer(tokenizerJSON, tokenizerConfig)
创建一个新的 PreTrainedTokenizer 实例。
参数量 | 类型 | 描述 |
---|---|---|
tokenizerJSON | Object | 分词器的 JSON。 |
tokenizerConfig | Object | 分词器的配置。 |
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
- 传递给模型的对象。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
text | string | Array<string> | 要分词的文本。 | |
选项 | Object | 一个可选对象,包含以下属性 | |
[options.text_pair] | string | Array<string> | null | 要编码的可选第二个序列。如果设置,必须与文本类型相同。 |
[options.padding] | boolean | 'max_length' | false | 是否填充输入序列。 |
[options.add_special_tokens] | boolean | true | 是否添加与相应模型相关的特殊词元。 |
[options.truncation] | boolean |
| 是否截断输入序列。 |
[options.max_length] | 数字 |
| 返回列表的最大长度,以及可选的填充长度。 |
[options.return_tensor] | boolean | true | 是否以张量或数组形式返回结果。 |
[options.return_token_type_ids] | boolean |
| 是否返回词元类型 ID。 |
preTrainedTokenizer._encode_text(text) ⇒ <code> Array < string > </code> | <code> null </code>
使用分词器的预处理器流水线编码单个文本。
类型: PreTrainedTokenizer
的实例方法
返回: Array<string>
| null
- 编码后的词元。
参数量 | 类型 | 描述 |
---|---|---|
text | string | null | 要编码的文本。 |
preTrainedTokenizer._tokenize_helper(text, options) ⇒ <code> * </code>
用于分词一个文本以及可选的文本对的内部辅助函数。
类型: PreTrainedTokenizer
的实例方法
返回: *
- 一个包含词元和可选的词元类型 ID 的对象。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
text | 字符串 | 要分词的文本。 | |
选项 | Object | 一个可选对象,包含以下属性 | |
[options.pair] | 字符串 | null | 要分词的可选第二个文本。 |
[options.add_special_tokens] | boolean | false | 是否添加与相应模型相关的特殊词元。 |
preTrainedTokenizer.tokenize(text, options) ⇒ <code> Array. < string > </code>
将字符串转换为词元序列。
类型: PreTrainedTokenizer
的实例方法
返回: Array.<string>
- 词元列表。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
text | 字符串 | 要编码的序列。 | |
选项 | Object | 一个可选对象,包含以下属性 | |
[options.pair] | 字符串 | 与第一个序列一起编码的第二个序列。 | |
[options.add_special_tokens] | boolean | false | 是否添加与相应模型相关的特殊词元。 |
preTrainedTokenizer.encode(text, options) ⇒ <code> Array. < number > </code>
使用模型的tokenizer编码单个文本或文本对。
类型: PreTrainedTokenizer
的实例方法
返回: Array.<number>
- 表示编码后文本的词元 ID 数组。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
text | 字符串 | 要编码的文本。 | |
选项 | Object | 一个可选对象,包含以下属性 | |
[options.text_pair] | 字符串 | null | 要编码的可选第二个文本。 |
[options.add_special_tokens] | boolean | true | 是否添加与相应模型相关的特殊词元。 |
[options.return_token_type_ids] | boolean |
| 是否返回 token_type_ids。 |
preTrainedTokenizer.batch_decode(batch, decode_args) ⇒ <code> Array. < string > </code>
解码一批分词后的序列。
类型: PreTrainedTokenizer
的实例方法
返回: Array.<string>
- 解码后的序列列表。
参数量 | 类型 | 描述 |
---|---|---|
batch | Array<Array<number>> | Tensor | 分词后的输入序列的列表/张量。 |
decode_args | Object | (可选) 包含解码参数的对象。 |
preTrainedTokenizer.decode(token_ids, [decode_args]) ⇒ <code> string </code>
将词元 ID 序列解码回字符串。
类型: PreTrainedTokenizer
的实例方法
返回: string
- 解码后的字符串。
抛出:
Error
如果 `token_ids` 不是一个非空的整数数组。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
token_ids | Array<number> | Array<bigint> | Tensor | 要解码的词元 ID 列表/张量。 | |
[decode_args] | Object | {} | |
[decode_args.skip_special_tokens] | boolean | false | 如果为 true,则从输出字符串中移除特殊词元。 |
[decode_args.clean_up_tokenization_spaces] | boolean | true | 如果为 true,则移除标点符号前和缩写形式前的空格。 |
preTrainedTokenizer.decode_single(token_ids, decode_args) ⇒ <code> string </code>
将单个词元 ID 列表解码为字符串。
类型: PreTrainedTokenizer
的实例方法
返回: string
- 解码后的字符串
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
token_ids | Array<number> | Array<bigint> | 要解码的词元 ID 列表 | |
decode_args | Object | 解码的可选参数 | |
[decode_args.skip_special_tokens] | boolean | false | 解码时是否跳过特殊词元 |
[decode_args.clean_up_tokenization_spaces] | boolean |
| 解码时是否清理分词空格。如果为 null,该值将设置为 |
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
- 分词后的输出。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
conversation | Array.<Message> | 一个包含 | |
选项 | Object | 一个可选对象,包含以下属性 | |
[options.chat_template] | 字符串 | null | 用于此转换的 Jinja 模板。如果未传递此参数,则将使用模型的聊天模板。 |
[options.tools] | Array.<Object> |
| 模型可访问的工具(可调用函数)列表。如果模板不支持函数调用,此参数将无效。每个工具应以 JSON Schema 形式传递,提供工具的名称、描述和参数类型。更多信息请参阅我们的聊天模板指南。 |
[options.documents] | * |
| 表示文档的字典列表,如果模型正在执行 RAG(检索增强生成),这些文档将对模型可用。如果模板不支持 RAG,此参数将无效。我们建议每个文档都是一个包含 "title" 和 "text" 键的字典。有关使用聊天模板传递文档的示例,请参阅聊天模板指南的 RAG 部分。 |
[options.add_generation_prompt] | boolean | false | 是否用表示助手消息开始的词元结束提示。当您想从模型生成响应时,这很有用。请注意,此参数将传递给聊天模板,因此模板必须支持此参数才能生效。 |
[options.tokenize] | boolean | true | 是否对输出进行分词。如果为 false,输出将是字符串。 |
[options.padding] | boolean | false | 是否将序列填充到最大长度。如果 tokenize 为 false,则无效。 |
[options.truncation] | boolean | false | 是否将序列截断到最大长度。如果 tokenize 为 false,则无效。 |
[options.max_length] | 数字 |
| 用于填充或截断的最大长度(以词元为单位)。如果 tokenize 为 false,则无效。如果未指定,将使用分词器的 |
[options.return_tensor] | boolean | true | 是否以 Tensor 或 Array 的形式返回输出。如果 tokenize 为 false,则无效。 |
[options.return_dict] | boolean | true | 是否返回带有命名输出的字典。如果 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_inputs | string | Array<string> | 要分词的文本。 |
tokenizer_options | Object | 发送给分词器的选项 |
generate_kwargs | Object | 生成选项。 |
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_inputs | string | Array<string> | 要分词的文本。 |
tokenizer_options | Object | 发送给分词器的选项 |
generate_kwargs | Object | 生成选项。 |
tokenizers.WhisperTokenizer ⇐ <code> PreTrainedTokenizer </code>
WhisperTokenizer 分词器
类型: tokenizers
的静态类
继承自: PreTrainedTokenizer
- .WhisperTokenizer ⇐
PreTrainedTokenizer
whisperTokenizer._decode_asr(sequences, options) ⇒ <code> * </code>
解码自动语音识别(ASR)序列。
类型: WhisperTokenizer
的实例方法
返回: *
- 解码后的序列。
参数量 | 类型 | 描述 |
---|---|---|
sequences | * | 要解码的序列。 |
选项 | Object | 用于解码的选项。 |
whisperTokenizer.decode() : <code> * </code>
类型: WhisperTokenizer
的实例方法
tokenizers.MarianTokenizer
类型: tokenizers
的静态类
待办
- 此模型尚不受 Hugging Face 的“fast”分词器库(https://github.com/huggingface/tokenizers)支持。因此,此实现(基于 fast tokenizers)可能会产生轻微不准确的结果。
new MarianTokenizer(tokenizerJSON, tokenizerConfig)
创建一个新的 MarianTokenizer 实例。
参数量 | 类型 | 描述 |
---|---|---|
tokenizerJSON | Object | 分词器的 JSON。 |
tokenizerConfig | Object | 分词器的配置。 |
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
参数量 | 类型 | 描述 |
---|---|---|
text | string | null | 要编码的文本。 |
tokenizers.AutoTokenizer
这是一个辅助类,用于通过 from_pretrained
函数实例化预训练的分词器。所选择的分词器类由分词器配置中指定的类型决定。
类型: tokenizers
的静态类
- .AutoTokenizer
new AutoTokenizer()
.from_pretrained(pretrained_model_name_or_path, options)
⇒Promise.<PreTrainedTokenizer>
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 | 字符串 | 预训练模型的名称或路径。可以是
|
选项 | 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。
参数量 | 类型 | 描述 |
---|---|---|
cp | number | bigint | 要检查的 Unicode 码点。 |
tokenizers~AddedToken
表示用户在现有模型词汇表之上添加的词元。可以配置 AddedToken 以指定它们在各种情况下的行为,例如
- 它们是否应仅匹配单个单词
- 是否包含其左侧或右侧的任何空白
类型: tokenizers
的内部类
new AddedToken(config)
创建一个新的 AddedToken 实例。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
config | Object | 添加的词元的配置对象。 | |
config.content | 字符串 | 添加的词元的内容。 | |
config.id | 数字 | 添加的词元的 ID。 | |
[config.single_word] | boolean | false | 此词元是否必须是单个单词,或者可以拆分单词。 |
[config.lstrip] | boolean | false | 此词元是否应去除其左侧的空白。 |
[config.rstrip] | boolean | false | 此词元是否应去除其右侧的空白。 |
[config.normalized] | boolean | false | 此词元是否应被归一化。 |
[config.special] | boolean | false | 此词元是否是特殊词元。 |
tokenizers~WordPieceTokenizer ⇐ <code> TokenizerModel </code>
TokenizerModel 的一个子类,它使用 WordPiece 编码来编码词元。
类型: tokenizers
的内部类
继承自: TokenizerModel
- ~WordPieceTokenizer ⇐
TokenizerModel
new WordPieceTokenizer(config)
.tokens_to_ids
:Map.<string, number>
.unk_token_id
:number
.unk_token
:string
.max_input_chars_per_word
:number
.vocab
:Array.<string>
.encode(tokens)
⇒Array.<string>
new WordPieceTokenizer(config)
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
config | Object | 配置对象。 | |
config.vocab | Object | 词元到 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>
- 一个编码后的词元数组。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 要编码的词元。 |
tokenizers~Unigram ⇐ <code> TokenizerModel </code>
代表 Unigram 分词器模型的类。
类型: tokenizers
的内部类
继承自: TokenizerModel
- ~Unigram ⇐
TokenizerModel
new Unigram(config, moreConfig)
.scores
:Array.<number>
.populateNodes(lattice)
.tokenize(normalized)
⇒Array.<string>
.encode(tokens)
⇒Array.<string>
new Unigram(config, moreConfig)
创建一个新的 Unigram 分词器模型。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | Unigram 模型的配置对象。 |
config.unk_id | 数字 | 未知词元的 ID |
config.vocab | * | 一个表示词元到分数映射的二维数组。 |
moreConfig | Object | Unigram 模型的附加配置对象。 |
unigram.scores : <code> Array. < number > </code>
类型: Unigram
的实例属性
unigram.populateNodes(lattice)
填充晶格节点。
类型: Unigram
的实例方法
参数量 | 类型 | 描述 |
---|---|---|
lattice | TokenLattice | 要用节点填充的词元晶格。 |
unigram.tokenize(normalized) ⇒ <code> Array. < string > </code>
使用 unigram 模型将词元数组编码为子词元数组。
类型: Unigram
的实例方法
返回: Array.<string>
- 使用 unigram 模型对输入词元进行编码后得到的子词元数组。
参数量 | 类型 | 描述 |
---|---|---|
normalized | 字符串 | 归一化后的字符串。 |
unigram.encode(tokens) ⇒ <code> Array. < string > </code>
使用 Unigram 编码对一个词元数组进行编码。
类型: Unigram
的实例方法
返回: Array.<string>
- 一个编码后的词元数组。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 要编码的词元。 |
tokenizers~BPE ⇐ <code> TokenizerModel </code>
用于将文本编码为字节对编码(BPE)词元的 BPE 类。
类型: tokenizers
的内部类
继承自: TokenizerModel
- ~BPE ⇐
TokenizerModel
new BPE(config)
.tokens_to_ids
:Map.<string, number>
.merges
:*
.config.merges
:*
.max_length_to_cache
.cache_capacity
.clear_cache()
.bpe(token)
⇒Array.<string>
.encode(tokens)
⇒Array.<string>
new BPE(config)
创建一个 BPE 实例。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
config | Object | BPE 的配置对象。 | |
config.vocab | Object | 词元到 ID 的映射。 | |
config.merges | * | 一个由字符串表示的 BPE 合并规则数组。 | |
config.unk_token | 字符串 | 用于词汇表外单词的未知词元。 | |
config.end_of_word_suffix | 字符串 | 在每个单词末尾放置的后缀。 | |
[config.continuing_subword_suffix] | 字符串 | 在单词之间插入的后缀。 | |
[config.byte_fallback] | boolean | false | 是否使用 spm 的字节回退技巧(默认为 False) |
[config.ignore_merges] | boolean | false | 在使用合并规则之前,是否先将词元与词汇表进行匹配。 |
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 算法后得到的子词词元。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 要编码的输入词元序列。 |
tokenizers~LegacyTokenizerModel
用于仅有词汇表的分词器的传统分词器类。
类型: tokenizers
的内部类
- ~LegacyTokenizerModel
new LegacyTokenizerModel(config, moreConfig)
.tokens_to_ids
:Map.<string, number>
new LegacyTokenizerModel(config, moreConfig)
创建一个 LegacyTokenizerModel 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | LegacyTokenizerModel 的配置对象。 |
config.vocab | Object | 一个(可能是嵌套的)词元到 ID 的映射。 |
moreConfig | Object | LegacyTokenizerModel 模型的附加配置对象。 |
legacyTokenizerModel.tokens_to_ids : <code> Map. < string, number > </code>
类型: LegacyTokenizerModel
的实例属性
tokenizers~Normalizer
文本归一化的基类。
类型: tokenizers
的内部抽象类
- ~Normalizer
new Normalizer(config)
- 实例
.normalize(text)
⇒string
._call(text)
⇒string
- 静态
.fromConfig(config)
⇒Normalizer
new Normalizer(config)
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 归一化器的配置对象。 |
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
如果在配置中指定了未知的归一化器类型。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 归一化器的配置对象。 |
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 ⇐
Normalizer
.form
:string
.normalize(text)
⇒string
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
- ~NormalizerSequence ⇐
Normalizer
new NormalizerSequence(config)
创建一个新的 NormalizerSequence 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
config.normalizers | Array.<Object> | 一个包含规范器配置对象的数组。 |
normalizerSequence.normalize(text) ⇒ <code> string </code>
将一系列规范器应用于输入文本。
类别: NormalizerSequence
的实例方法
返回: string
- 归一化后的文本。
参数量 | 类型 | 描述 |
---|---|---|
text | 字符串 | 要归一化的文本。 |
tokenizers~BertNormalizer ⇐ <code> Normalizer </code>
表示 BERT 分词中使用的规范器的类。
类型: tokenizers
的内部类
继承自: Normalizer
- ~BertNormalizer ⇐
Normalizer
._tokenize_chinese_chars(text)
⇒string
.stripAccents(text)
⇒string
.normalize(text)
⇒string
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 ⇐
Callable
- 实例
.pre_tokenize_text(text, [options])
⇒Array.<string>
.pre_tokenize(text, [options])
⇒Array.<string>
._call(text, [options])
⇒Array.<string>
- 静态
.fromConfig(config)
⇒PreTokenizer
- 实例
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>
- 一个包含预分词单元的数组。
参数量 | 类型 | 描述 |
---|---|---|
text | string | Array<string> | 要进行预分词的文本或文本数组。 |
[options] | Object | 预分词逻辑的附加选项。 |
preTokenizer._call(text, [options]) ⇒ <code> Array. < string > </code>
PreTokenizer#pre_tokenize 的别名。
类别: PreTokenizer
的实例方法
重写: _call
返回: Array.<string>
- 一个包含预分词单元的数组。
参数量 | 类型 | 描述 |
---|---|---|
text | string | Array<string> | 要进行预分词的文本或文本数组。 |
[options] | Object | 预分词逻辑的附加选项。 |
PreTokenizer.fromConfig(config) ⇒ <code> PreTokenizer </code>
工厂方法,根据提供的配置返回 PreTokenizer
子类的实例。
类别: PreTokenizer
的静态方法
返回: PreTokenizer
- PreTokenizer
子类的实例。
抛出:
Error
如果提供的配置对象不对应任何已知的预分词器。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 预分词器的配置对象。 |
tokenizers~BertPreTokenizer ⇐ <code> PreTokenizer </code>
类型: tokenizers
的内部类
扩展: PreTokenizer
- ~BertPreTokenizer ⇐
PreTokenizer
new BertPreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new BertPreTokenizer(config)
一个预分词器,使用类似于 BERT 原始实现中使用的基本分词方案将文本分割成词片段。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
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
- ~ByteLevelPreTokenizer ⇐
PreTokenizer
new ByteLevelPreTokenizer(config)
.add_prefix_space
:boolean
.trim_offsets
:boolean
.use_regex
:boolean
.pre_tokenize_text(text, [options])
⇒Array.<string>
new ByteLevelPreTokenizer(config)
创建 ByteLevelPreTokenizer
类的新实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
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
- ~SplitPreTokenizer ⇐
PreTokenizer
new SplitPreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new SplitPreTokenizer(config)
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 预分词器的配置选项。 |
config.pattern | Object | 用于分割文本的模式。可以是一个字符串或一个正则表达式对象。 |
config.pattern.String | string | undefined | 用于分割的字符串。仅当模式是字符串时定义。 |
config.pattern.Regex | string | undefined | 用于分割的正则表达式。仅当模式是正则表达式时定义。 |
config.behavior | SplitDelimiterBehavior | 分割时使用的行为。 |
config.invert | boolean | 是分割(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
- ~PunctuationPreTokenizer ⇐
PreTokenizer
new PunctuationPreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new PunctuationPreTokenizer(config)
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 预分词器的配置选项。 |
config.behavior | SplitDelimiterBehavior | 分割时使用的行为。 |
punctuationPreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>
通过使用给定的模式分割文本来进行分词。
类别: PunctuationPreTokenizer
的实例方法
返回: Array.<string>
- 一个包含词元的数组。
参数量 | 类型 | 描述 |
---|---|---|
text | 字符串 | 要分词的文本。 |
[options] | Object | 预分词逻辑的附加选项。 |
tokenizers~DigitsPreTokenizer ⇐ <code> PreTokenizer </code>
根据数字分割文本。
类型: tokenizers
的内部类
扩展: PreTokenizer
- ~DigitsPreTokenizer ⇐
PreTokenizer
new DigitsPreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new DigitsPreTokenizer(config)
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 预分词器的配置选项。 |
config.individual_digits | boolean | 是否按单个数字进行分割。 |
digitsPreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>
通过使用给定的模式分割文本来进行分词。
类别: DigitsPreTokenizer
的实例方法
返回: Array.<string>
- 一个包含词元的数组。
参数量 | 类型 | 描述 |
---|---|---|
text | 字符串 | 要分词的文本。 |
[options] | Object | 预分词逻辑的附加选项。 |
tokenizers~PostProcessor ⇐ <code> Callable </code>
类型: tokenizers
的内部类
继承自: Callable
- ~PostProcessor ⇐
Callable
new PostProcessor(config)
- 实例
.post_process(tokens, ...args)
⇒PostProcessedOutput
._call(tokens, ...args)
⇒PostProcessedOutput
- 静态
.fromConfig(config)
⇒PostProcessor
new PostProcessor(config)
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 后处理器的配置。 |
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 类型。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 表示 PostProcessor 的配置对象。 |
tokenizers~BertProcessing
一个在输入内容的开头和结尾添加特殊词元的后处理器。
类型: tokenizers
的内部类
- ~BertProcessing
new BertProcessing(config)
.post_process(tokens, [tokens_pair])
⇒PostProcessedOutput
new BertProcessing(config)
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 后处理器的配置。 |
config.cls | Array.<string> | 要添加到输入内容开头的特殊词元。 |
config.sep | Array.<string> | 要添加到输入内容结尾的特殊词元。 |
bertProcessing.post_process(tokens, [tokens_pair]) ⇒ <code> PostProcessedOutput </code>
将特殊词元添加到输入内容的开头和结尾。
类别: BertProcessing
的实例方法
返回: PostProcessedOutput
- 在开头和结尾添加了特殊词元的后处理后词元。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
tokens | Array.<string> | 输入词元。 | |
[tokens_pair] | Array.<string> |
| 可选的第二组输入词元。 |
tokenizers~TemplateProcessing ⇐ <code> PostProcessor </code>
用实际词元替换模板中特殊词元的后处理器。
类型: tokenizers
的内部类
扩展: PostProcessor
- ~TemplateProcessing ⇐
PostProcessor
new TemplateProcessing(config)
.post_process(tokens, [tokens_pair])
⇒PostProcessedOutput
new TemplateProcessing(config)
创建一个新的 TemplateProcessing
实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 后处理器的配置选项。 |
config.single | 数组 | 单个词元序列的模板。 |
config.pair | 数组 | 一对词元序列的模板。 |
templateProcessing.post_process(tokens, [tokens_pair]) ⇒ <code> PostProcessedOutput </code>
用实际词元替换模板中的特殊词元。
类别: TemplateProcessing
的实例方法
返回: PostProcessedOutput
- 一个对象,包含用实际词元替换了特殊词元的词元列表。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
tokens | Array.<string> | 第一个序列的词元列表。 | |
[tokens_pair] | Array.<string> |
| 第二个序列的词元列表(可选)。 |
tokenizers~ByteLevelPostProcessor ⇐ <code> PostProcessor </code>
一个按原样返回给定词元的后处理器。
类型: tokenizers
的内部类
扩展: PostProcessor
byteLevelPostProcessor.post_process(tokens, [tokens_pair]) ⇒ <code> PostProcessedOutput </code>
对给定的词元进行后处理。
类别: ByteLevelPostProcessor
的实例方法
返回: PostProcessedOutput
- 包含后处理后词元的对象。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
tokens | Array.<string> | 第一个序列的词元列表。 | |
[tokens_pair] | Array.<string> |
| 第二个序列的词元列表(可选)。 |
tokenizers~PostProcessorSequence
一个按顺序应用多个后处理器的后处理器。
类型: tokenizers
的内部类
- ~PostProcessorSequence
new PostProcessorSequence(config)
.post_process(tokens, [tokens_pair])
⇒PostProcessedOutput
new PostProcessorSequence(config)
创建一个新的 PostProcessorSequence 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
config.processors | Array.<Object> | 要应用的后处理器列表。 |
postProcessorSequence.post_process(tokens, [tokens_pair]) ⇒ <code> PostProcessedOutput </code>
对给定的词元进行后处理。
类别: PostProcessorSequence
的实例方法
返回: PostProcessedOutput
- 包含后处理后词元的对象。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
tokens | Array.<string> | 第一个序列的词元列表。 | |
[tokens_pair] | Array.<string> |
| 第二个序列的词元列表(可选)。 |
tokenizers~Decoder ⇐ <code> Callable </code>
词元解码器的基类。
类型: tokenizers
的内部类
继承自: Callable
- ~Decoder ⇐
Callable
new Decoder(config)
- 实例
.added_tokens
:Array.<AddedToken>
._call(tokens)
⇒string
.decode(tokens)
⇒string
.decode_chain(tokens)
⇒Array.<string>
- 静态
.fromConfig(config)
⇒Decoder
new Decoder(config)
创建 Decoder
的实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
decoder.added_tokens : <code> Array. < AddedToken > </code>
类别: Decoder
的实例属性
decoder._call(tokens) ⇒ <code> string </code>
调用 decode
方法。
类别: Decoder
的实例方法
重写: _call
返回: string
- 解码后的字符串。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 令牌列表。 |
decoder.decode(tokens) ⇒ <code> string </code>
解码一个词元列表。
类别: Decoder
的实例方法
返回: string
- 解码后的字符串。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 令牌列表。 |
decoder.decode_chain(tokens) ⇒ <code> Array. < string > </code>
将解码器应用于一个词元列表。
类别: Decoder
的实例方法
返回: Array.<string>
- 解码后的词元列表。
抛出:
Error
如果 `decode_chain` 方法未在子类中实现。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 令牌列表。 |
Decoder.fromConfig(config) ⇒ <code> Decoder </code>
根据提供的配置创建一个解码器实例。
类别: Decoder
的静态方法
返回: Decoder
- 一个解码器实例。
抛出:
- 如果提供了未知的解码器类型,则返回
Error
。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
tokenizers~FuseDecoder
Fuse 仅将所有分词(token)融合成一个大字符串。这通常是解码的最后一步,但这个解码器的存在是为了以防某些解码器需要在此步骤之后进行操作。
类型: tokenizers
的内部类
fuseDecoder.decode_chain() : <code> * </code>
类别: FuseDecoder
的实例方法
tokenizers~WordPieceDecoder ⇐ <code> Decoder </code>
一个将 WordPiece 分词列表解码为单个字符串的解码器。
类型: tokenizers
的内部类
继承自: Decoder
- ~WordPieceDecoder ⇐
Decoder
new WordPieceDecoder(config)
创建一个新的 WordPieceDecoder 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
config.prefix | 字符串 | 用于 WordPiece 编码的前缀。 |
config.cleanup | boolean | 是否清理解码后的字符串。 |
wordPieceDecoder.decode_chain() : <code> * </code>
类别: WordPieceDecoder
的实例方法
tokenizers~ByteLevelDecoder ⇐ <code> Decoder </code>
用于分词输出的字节级解码器。继承自 Decoder
类。
类型: tokenizers
的内部类
继承自: Decoder
- ~ByteLevelDecoder ⇐
Decoder
new ByteLevelDecoder(config)
创建一个 ByteLevelDecoder
对象。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
byteLevelDecoder.convert_tokens_to_string(tokens) ⇒ <code> string </code>
通过解码每个字节将分词数组转换为字符串。
类别: ByteLevelDecoder
的实例方法
返回: string
- 解码后的字符串。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<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
- 解码后的字符串。
参数量 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 需要解码的分词数组。 |
ctcDecoder.decode_chain() : <code> * </code>
类别: CTCDecoder
的实例方法
tokenizers~DecoderSequence ⇐ <code> Decoder </code>
应用一系列解码器。
类型: tokenizers
的内部类
继承自: Decoder
- ~DecoderSequence ⇐
Decoder
new DecoderSequence(config)
创建一个新的 DecoderSequence 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 配置对象。 |
config.decoders | Array.<Object> | 要应用的解码器列表。 |
decoderSequence.decode_chain() : <code> * </code>
类别: DecoderSequence
的实例方法
tokenizers~MetaspacePreTokenizer ⇐ <code> PreTokenizer </code>
此预处理器(PreTokenizer)用给定的替换字符替换空格,如果需要则添加前缀空格,并返回一个分词列表。
类型: tokenizers
的内部类
扩展: PreTokenizer
- ~MetaspacePreTokenizer ⇐
PreTokenizer
new MetaspacePreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new MetaspacePreTokenizer(config)
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
config | Object | MetaspacePreTokenizer 的配置对象。 | |
config.add_prefix_space | boolean | 是否在第一个分词前添加前缀空格。 | |
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
- ~MetaspaceDecoder ⇐
Decoder
new MetaspaceDecoder(config)
构造一个新的 MetaspaceDecoder 对象。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | MetaspaceDecoder 的配置对象。 |
config.add_prefix_space | boolean | 是否在解码后的字符串前添加前缀空格。 |
config.replacement | 字符串 | 用于替换空格的字符串。 |
metaspaceDecoder.decode_chain() : <code> * </code>
类别: MetaspaceDecoder
的实例方法
tokenizers~Precompiled ⇐ <code> Normalizer </code>
一个应用预编译字符映射(charsmap)的规范化器。这对于在 C++ 中应用复杂的规范化并将其暴露给 JavaScript 非常有用。
类型: tokenizers
的内部类
继承自: Normalizer
- ~Precompiled ⇐
Normalizer
new Precompiled(config)
.normalize(text)
⇒string
new Precompiled(config)
创建一个新的 Precompiled 规范化器实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | Precompiled 规范化器的配置对象。 |
config.precompiled_charsmap | Object | 预编译的字符映射对象。 |
precompiled.normalize(text) ⇒ <code> string </code>
通过应用预编译的字符映射来规范化给定的文本。
类别: Precompiled
的实例方法
返回: string
- 归一化后的文本。
参数量 | 类型 | 描述 |
---|---|---|
text | 字符串 | 要归一化的文本。 |
tokenizers~PreTokenizerSequence ⇐ <code> PreTokenizer </code>
一个对输入文本应用一系列预处理器(pre-tokenizer)的预处理器。
类型: tokenizers
的内部类
扩展: PreTokenizer
- ~PreTokenizerSequence ⇐
PreTokenizer
new PreTokenizerSequence(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new PreTokenizerSequence(config)
创建一个 PreTokenizerSequence 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 预处理器序列的配置对象。 |
config.pretokenizers | Array.<Object> | 一个预处理器配置的数组。 |
preTokenizerSequence.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>
依次将序列中的每个预处理器应用于输入文本。
类别: PreTokenizerSequence
的实例方法
返回: Array.<string>
- 预分词后的文本。
参数量 | 类型 | 描述 |
---|---|---|
text | 字符串 | 要进行预分词的文本。 |
[options] | Object | 预分词逻辑的附加选项。 |
tokenizers~WhitespacePreTokenizer
按词边界进行分割(使用以下正则表达式:\w+|[^\w\s]+
)。
类型: tokenizers
的内部类
- ~WhitespacePreTokenizer
new WhitespacePreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new WhitespacePreTokenizer(config)
创建一个 WhitespacePreTokenizer 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 预处理器的配置对象。 |
whitespacePreTokenizer.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>
通过按词边界分割输入文本来进行预分词。
类别: WhitespacePreTokenizer
的实例方法
返回: Array.<string>
- 通过按空白字符分割输入文本而产生的分词数组。
参数量 | 类型 | 描述 |
---|---|---|
text | 字符串 | 要进行预分词的文本。 |
[options] | Object | 预分词逻辑的附加选项。 |
tokenizers~WhitespaceSplit ⇐ <code> PreTokenizer </code>
通过空白字符将一段文本分割成单个分词。
类型: tokenizers
的内部类
扩展: PreTokenizer
- ~WhitespaceSplit ⇐
PreTokenizer
new WhitespaceSplit(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new WhitespaceSplit(config)
创建一个 WhitespaceSplit 实例。
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 预处理器的配置对象。 |
whitespaceSplit.pre_tokenize_text(text, [options]) ⇒ <code> Array. < string > </code>
通过按空白字符分割输入文本来进行预分词。
类别: WhitespaceSplit
的实例方法
返回: Array.<string>
- 通过按空白字符分割输入文本而产生的分词数组。
参数量 | 类型 | 描述 |
---|---|---|
text | 字符串 | 要进行预分词的文本。 |
[options] | Object | 预分词逻辑的附加选项。 |
tokenizers~ReplacePreTokenizer
类型: tokenizers
的内部类
- ~ReplacePreTokenizer
new ReplacePreTokenizer(config)
.pre_tokenize_text(text, [options])
⇒Array.<string>
new ReplacePreTokenizer(config)
参数量 | 类型 | 描述 |
---|---|---|
config | Object | 预分词器的配置选项。 |
config.pattern | Object | 用于分割文本的模式。可以是一个字符串或一个正则表达式对象。 |
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 | 字符串 | 要分割的文本。 |
regex | RegExp | 用于分割的正则表达式。 |
tokenizers~createPattern(pattern, invert) ⇒ <code> RegExp </code> | <code> null </code>
从配置对象构造模式的辅助方法。
类别: tokenizers
的内部方法
返回: RegExp
| null
- 编译后的模式。
参数量 | 类型 | 默认 | 描述 |
---|---|---|---|
pattern | Object | 模式对象。 | |
反转 | boolean | true | 是否反转模式。 |
tokenizers~objectToMap(obj) ⇒ <code> Map. < string, any > </code>
将对象转换为 Map 的辅助函数。
类别: tokenizers
的内部方法
返回: Map.<string, any>
- map。
参数量 | 类型 | 描述 |
---|---|---|
obj | Object | 要转换的对象。 |
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] | boolean | false | 是否应使用分词器的 |
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
属性
名称 | 类型 | 描述 |
---|---|---|
tokens | Array.<string> | 后处理器(post-processor)生成的分词列表。 |
[token_type_ids] | Array.<number> | 后处理器生成的分词类型 ID 列表。 |
tokenizers~EncodingSingle : <code> Object </code>
类别: tokenizers
的内部 typedef
属性
名称 | 类型 | 描述 |
---|---|---|
input_ids | Array.<number> | 要输入到模型中的分词 ID 列表。 |
attention_mask | Array.<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_ids | BatchEncodingItem | 要输入到模型中的分词 ID 列表。 |
attention_mask | BatchEncodingItem | 指定模型应关注哪些分词的索引列表。 |
[token_type_ids] | BatchEncodingItem | 要输入到模型中的分词类型 ID 列表。 |
< > 在 GitHub 上更新