Как добиться более быстрого времени загрузки tfidfvectorizer в представлении Django?

У меня есть подогрев TfidfVectorizer с ~120000 функций, которые я сохраняю в файл, используя joblib.dump, Позже я загружаю эту модель из представления django, используя joblib.load но это слишком медленно (занимает ~2 секунды). Каков наилучший способ улучшить скорость загрузки? Должен ли я кешировать модель, используя кеширующую среду django? Должен ли я сжать модель при сериализации с joblib.dump? Есть ли способ загрузить модель в память один раз и сохранить ее вместо перезагрузки каждый раз, когда вызывается представление?

2 ответа

Решение

Модель не меняется между запросами, поэтому мы хотим загрузить ее в память один раз и оставить там. Это может быть достигнуто в views.py загрузив модель и присвоив ее глобальной переменной.

Вы должны загрузить свою модель вapps.pyфайл, а затем импортируйте эту модель из приложений в вашемviews.py. В противном случае модель загружается заново при каждом запросе (каждый раз при запуске файлаview.py). И вам следует записать свою модель на диск, используяjoblibа не встроенная библиотека рассола.

Другие вопросы по тегам