mindformers.models.glm2.ChatGLM4Tokenizer

查看源文件
class mindformers.models.glm2.ChatGLM4Tokenizer(vocab_file, clean_up_tokenization_spaces=False, encode_special_tokens=False, eos_token='<|endoftext|>', pad_token='<|endoftext|>', **kwargs)[源代码]

构造一个基于Byte-Pair-Encoding的ChatGLM4模型分词器。

参数:
  • vocab_file (str) - 对应词表的路径。

  • clean_up_tokenization_spaces (bool) - 是否清理掉多余的空格。默认值: False

  • encode_special_tokens (bool) - 是否清理特殊token。默认值: False

  • eos_token (str, tokenizers.AddedToken) - 序列结束标记。默认值: "<|endoftext|>"

  • pad_token (str, tokenizers.AddedToken) - 用于使tokens数组大小相同以便进行批处理的特殊标记,然后将被注意力机制或损失计算忽略。默认值: "<|endoftext|>"

  • kwargs - 其它传递到Tokenizer基类的参数。

返回:

ChatGLM4Tokenizer 实例。

样例:

>>> from mindformers import ChatGLM4Tokenizer
>>> tokenizer = ChatGLM4Tokenizer('tokenizer.model')
>>> prompts = ["晚上睡不着应该怎么办"]
>>> token_id = tokenizer(prompts)
>>> input_ids = token_id['input_ids']
>>> print(input_ids)
[[151331, 151333, 101160, 120410, 99379, 103298]]
>>> response = tokenizer.decode(input_ids)
>>> print(response)
['晚上睡不着应该怎么办']