Модель Pytorch вызывает ошибку 500 сервера в приложении Django

Это мой проект Django Directory, и в приложении "счета" я пытаюсь импортировать мою предварительно обученную пользовательскую модель YOLOV5 (которая прекрасно работает сама по себе). Итак, Views.py :

def crop(request):
model = torch.hub.load('../yolov5-master', 'custom', path='../best.pt', force_reload=True)
return render(request, '../templates/results.html')

Это приводит к тому, что мое приложение возвращает ошибку сервера 500 при переходе по этому URL; я знаю, что модель вызывает это, потому что если я закомментирую первую строку

#model = torch.hub.load('../yolov5-master', 'custom', path='../best.pt', force_reload=True)

Затем страница отображается нормально. Я просмотрел много статей о том, как загрузить модель Pytorch в Django, и кажется, что я все делаю правильно, не могли бы вы помочь мне разобраться, в чем проблема?

Я думаю, что проблема связана с путем. Вы можете попробовать следующее в views.py:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "yourappname.settings")
django.setup()
from django.conf import settings

model = torch.hub.load('../yolov5-master', 'custom', path=os.path.join(settings.MEDIA_ROOT, 'best.pt'), force_reload=True)

В вашем settings.py сначала нужно будет настроить путь MEDIA_ROOT следующим образом:

MEDIA_ROOT = os.path.join(BASE_DIR, 'uploaded_media')
Вернуться на верх