文本长度超过最大值 - 如何增加?
Text length exeeds maximum - How to increase it?
import nltk
from urllib import request
from redditscore.tokenizer import CrazyTokenizer
tokenizer = CrazyTokenizer()
url = "http://www.site.uottawa.ca/~diana/csi5386/A1_2020/microblog2011.txt"
response = request.urlopen(url)
raw = response.read().decode('utf-8-sig')
tokenizer.tokenize(raw)
我正在尝试标记 url 中的数据,而 运行 我收到以下错误
ValueError:[E088] 长度为 5190319 的文本超过最大值 1000000。v2.x 解析器和 NER 模型在输入中每 100,000 个字符需要大约 1GB 的临时内存。这意味着长文本可能会导致内存分配错误。如果您不使用解析器或 NER,增加 nlp.max_length
限制可能是安全的。限制是字符数,因此您可以通过检查 len(text)
.
来检查您的输入是否太长
如何增加长度?
CrazyTokenizer 专为推文和在线评论而设计,因此不应出现很长的文本。我猜你的数据是每行一条推文,所以最好的方法是一次将一行提供给你的分词器:
from urllib import request
from redditscore.tokenizer import CrazyTokenizer
tokenizer = CrazyTokenizer()
url = "http://www.site.uottawa.ca/~diana/csi5386/A1_2020/microblog2011.txt"
for line in request.urlopen(url):
tokens = tokenizer.tokenize(line.decode('utf-8'))
print(tokens)
import nltk
from urllib import request
from redditscore.tokenizer import CrazyTokenizer
tokenizer = CrazyTokenizer()
url = "http://www.site.uottawa.ca/~diana/csi5386/A1_2020/microblog2011.txt"
response = request.urlopen(url)
raw = response.read().decode('utf-8-sig')
tokenizer.tokenize(raw)
我正在尝试标记 url 中的数据,而 运行 我收到以下错误
ValueError:[E088] 长度为 5190319 的文本超过最大值 1000000。v2.x 解析器和 NER 模型在输入中每 100,000 个字符需要大约 1GB 的临时内存。这意味着长文本可能会导致内存分配错误。如果您不使用解析器或 NER,增加 nlp.max_length
限制可能是安全的。限制是字符数,因此您可以通过检查 len(text)
.
如何增加长度?
CrazyTokenizer 专为推文和在线评论而设计,因此不应出现很长的文本。我猜你的数据是每行一条推文,所以最好的方法是一次将一行提供给你的分词器:
from urllib import request
from redditscore.tokenizer import CrazyTokenizer
tokenizer = CrazyTokenizer()
url = "http://www.site.uottawa.ca/~diana/csi5386/A1_2020/microblog2011.txt"
for line in request.urlopen(url):
tokens = tokenizer.tokenize(line.decode('utf-8'))
print(tokens)