【发布时间】:2017-06-28 03:30:40
【问题描述】:
Spacy NLP 的所有算法和 API 都是线程安全的吗?
如果不是,那么哪些不是线程安全的?
如果是,我们可以指定线程池大小吗?
【问题讨论】:
-
你得到答案了吗?
nlp = spacy.load('en'); nlp(text)线程安全吗?
Spacy NLP 的所有算法和 API 都是线程安全的吗?
如果不是,那么哪些不是线程安全的?
如果是,我们可以指定线程池大小吗?
【问题讨论】:
nlp = spacy.load('en'); nlp(text) 线程安全吗?
我的理解是,使用 python 多处理创建的工作人员具有按值传递的属性,这意味着标记/解析模型是重复的。所以,多线程冲淡了提高效率的整个目的
请考虑调用 nlp.pipe,这是对 spaCy 管道的多线程调用,而不是对 nlp 的多线程调用。
for doc in nlp.pipe(texts, n_threads=16, batch_size=10000):
#do something to process the doc
【讨论】: