gpt4 book ai didi

spacy - 如何限制 Spacy 使用的 CPU 数量?

转载 作者:行者123 更新时间:2023-12-04 08:31:36 32 4
gpt4 key购买 nike

如何限制 Spacy 使用的 CPU 数量?

我想从大量句子中提取词性和命名实体。由于 RAM 的限制,我首先使用 Python NLTK 将我的文档解析为句子。然后我遍历我的句子并使用 nlp.pipe() 进行提取。但是,当我这样做时,Spacy 消耗了我的整个计算机; Spacy 使用所有可用的 CPU。这不好,因为我的电脑是共享的。如何限制 Spacy 使用的 CPU 数量?这是我迄今为止的代码:

# require
from nltk import *
import spacy

# initialize
file = './walden.txt'
nlp = spacy.load( 'en' )

# slurp up the given file
handle = open( file, 'r' )
text = handle.read()

# parse the text into sentences, and process each one
sentences = sent_tokenize( text )
for sentence in nlp.pipe( sentences, n_threads=1 ) :

# process each token
for token in sentence : print( "\t".join( [ token.text, token.lemma_, token.tag_ ] ) )

# done
quit()

最佳答案

我对自己问题的回答是,“调用操作系统并使用名为 taskset 的 Linux 实用程序。”

# limit ourselves is a few processors only
os.system( "taskset -pc 0-1 %d > /dev/null" % os.getpid() )

这个特定的解决方案将运行过程限制在核心 #1 和 #2。这个解决方案对我来说已经足够了。

关于spacy - 如何限制 Spacy 使用的 CPU 数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50537146/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com