Как запустить обученную модель на GPU на CPU в spaCy - PullRequest
0 голосов
/ 01 марта 2019

Я использую spaCy 2.0.18.Я обучил модель с использованием графического процессора, но теперь я хочу загрузить эту модель для прогнозов и работать только на процессоре.Я могу загрузить модель в память, но как только я пытаюсь использовать ее, я получаю следующую ошибку:

import spacy
nlp = spacy.load("path_to_my_model")
# works fine up to this moment
result = nlp("Test") # throws the exception below:
Exception ignored in: <bound method Stream.__del__ of <cupy.cuda.stream.Stream object at 0x7fd288621be0>>
Traceback (most recent call last):
  File "cupy/cuda/stream.pyx", line 161, in cupy.cuda.stream.Stream.__del__
AttributeError: 'Stream' object has no attribute 'ptr'
---------------------------------------------------------------------------
CUDARuntimeError                          Traceback (most recent call last)
<ipython-input-4-306c96b208c5> in <module>
----> 1 nlp("Yolo")

/opt/anaconda3/lib/python3.7/site-packages/spacy/language.py in __call__(self, text, disable)
    344             if not hasattr(proc, '__call__'):
    345                 raise ValueError(Errors.E003.format(component=type(proc), name=name))
--> 346             doc = proc(doc)
    347             if doc is None:
    348                 raise ValueError(Errors.E005.format(name=name))

nn_parser.pyx in spacy.syntax.nn_parser.Parser.__call__()

nn_parser.pyx in spacy.syntax.nn_parser.Parser.parse_batch()

/opt/anaconda3/lib/python3.7/site-packages/spacy/util.py in get_cuda_stream(require)
    236 
    237 def get_cuda_stream(require=False):
--> 238     return CudaStream() if CudaStream is not None else None
    239 
    240 

cupy/cuda/stream.pyx in cupy.cuda.stream.Stream.__init__()

cupy/cuda/runtime.pyx in cupy.cuda.runtime.streamCreate()

cupy/cuda/runtime.pyx in cupy.cuda.runtime.streamCreate()

cupy/cuda/runtime.pyx in cupy.cuda.runtime.check_status()

CUDARuntimeError: cudaErrorNoDevice: no CUDA-capable device is detected

Как заставить spaCy использовать процессор вместо графического процессора?

...