我有一个深度学习模型,我已经在我的django web REST API中添加了它。我希望模型总是加载在内存中。当前,当用户请求时,模型加载在内存中,然后在一段时间后释放。我希望它不断加载在RAM中,以便我的API的响应时间变得更好。我已经在Windows Server 2019上部署了API。
monwx1rj1#
您可以从apps.py文件加载它。在你的django应用程序中(让我们称你的应用程序为myapp),你可能有一个名为apps.py的文件,与你的models.py,views.py等文件处于同一级别。你可以重写ready()方法。myapp/apps.py中的示例
apps.py
models.py
views.py
ready()
myapp/apps.py
from django.apps import AppConfig loaded_model = None class MyAppConfig(AppConfig): default_auto_field = 'django.db.models.BigAutoField' name = 'myapp' def ready(self): global loaded_model loaded_model = <load your model here>
字符串在settings.py中的INSTALLED_APPS设置中更新您的应用程序,如下所示'myapp.apps.MyAppConfig'然后,您可以像这样在views.py中使用它
settings.py
INSTALLED_APPS
'myapp.apps.MyAppConfig'
from .apps import loaded_model def my_view(request): result = loaded_model.<your_model_method>
型
1条答案
按热度按时间monwx1rj1#
您可以从
apps.py
文件加载它。在你的django应用程序中(让我们称你的应用程序为myapp),你可能有一个名为
apps.py
的文件,与你的models.py
,views.py
等文件处于同一级别。你可以重写
ready()
方法。myapp/apps.py
中的示例字符串
在
settings.py
中的INSTALLED_APPS
设置中更新您的应用程序,如下所示'myapp.apps.MyAppConfig'
然后,您可以像这样在
views.py
中使用它型