Я новичок в НЛП и spaCy. Я использую модель en_core_web_md
. Я загружаю его с помощью spacy.load()
Всякий раз, когда я запускаю свою программу, она загружает модель. Есть ли способ загрузить модель только один раз для всех последующих прогонов?
Модели загрузки SpaCy
Ответы (1)
Да, вы можете, в примере кода ниже
import spacy
nlp = spacy.load('en_core_web_md') # make sure to use larger model!
tokens = nlp(u'dog cat banana')
for token1 in tokens:
for token2 in tokens:
print(token1.text, token2.text, token1.similarity(token2))
сохраните переменную nlp
save, поскольку она содержит модель. и вы можете передавать nlp
снова и снова, просто передавая его через требуемую функцию.
person
Arsalan Ahmed
schedule
07.08.2018
Хорошо, я понимаю это, но что, если я захочу развернуть приложение через Интернет, как тогда оно будет работать? Спасибо за ответ. Я просто хочу знать, ищем ли мы запрос в Интернете каждый раз, когда пользователь отправляет запрос, будет ли загружена модель?
- person Himanshu Ranjan Upadhyay; 08.08.2018
Вы должны понимать ML как услугу. Когда вы запускаете свой бэкэнд-сервер, он должен загружать модель, и каждый раз, когда он получает запрос post-get, он просто использует эту переменную модели для выполнения необходимой операции.
- person Arsalan Ahmed; 08.08.2018
Вы можете найти это репо полезным: github.com/explosion/spacy-services Он включает несколько простые примеры обслуживания spaCy и его возможностей через REST API. Здесь загруженные модели хранятся в глобальной переменной. Когда вы запускаете
app.py
, модели загружаются и хранятся в памяти.
- person Ines Montani; 09.08.2018