TypeError: Can't convert re.compile('[A-Z]+') (re.Pattern) to Union[str, tokenizers.Regex]
TypeError: Can't convert re.compile('[A-Z]+') (re.Pattern) to Union[str, tokenizers.Regex]
我在将正则表达式应用于 HuggingFace 库中的 Split()
操作时遇到问题。 library 请求 Split()
的以下输入。
pattern (str or Regex) – A pattern used to split the string. Usually a
string
or a Regex
在我的代码中,我正在应用 Split()
操作,如下所示:
tokenizer.pre_tokenizer = Split(pattern="[A-Z]+", behavior='isolated')
但它不起作用,因为 [A-Z]+
被解释为字符串而不是 Regex 表达式。我使用以下方法无济于事:
pattern = re.compile("[A-Z]+")
tokenizer.pre_tokenizer = Split(pattern=pattern, behavior='isolated')
出现以下错误:
TypeError: Can't convert re.compile('[A-Z]+') (re.Pattern) to Union[str, tokenizers.Regex]
以下解决方案通过从 tokenizers 库中导入 Regex
来实现:
from tokenizers import Regex
tokenizer.pre_tokenizer = Split(pattern=Regex("[A-Z]+"),
behavior='isolated')
我在将正则表达式应用于 HuggingFace 库中的 Split()
操作时遇到问题。 library 请求 Split()
的以下输入。
pattern (str or Regex) – A pattern used to split the string. Usually a
string
or aRegex
在我的代码中,我正在应用 Split()
操作,如下所示:
tokenizer.pre_tokenizer = Split(pattern="[A-Z]+", behavior='isolated')
但它不起作用,因为 [A-Z]+
被解释为字符串而不是 Regex 表达式。我使用以下方法无济于事:
pattern = re.compile("[A-Z]+")
tokenizer.pre_tokenizer = Split(pattern=pattern, behavior='isolated')
出现以下错误:
TypeError: Can't convert re.compile('[A-Z]+') (re.Pattern) to Union[str, tokenizers.Regex]
以下解决方案通过从 tokenizers 库中导入 Regex
来实现:
from tokenizers import Regex
tokenizer.pre_tokenizer = Split(pattern=Regex("[A-Z]+"),
behavior='isolated')