diff --git a/medcat-demo-app/webapp/Dockerfile b/medcat-demo-app/webapp/Dockerfile index 8c8cc552f..4ce1c9ecf 100644 --- a/medcat-demo-app/webapp/Dockerfile +++ b/medcat-demo-app/webapp/Dockerfile @@ -55,13 +55,6 @@ COPY --from=build /webapp /webapp # Copy Python site-packages (installed by pip) from build stage COPY --from=build /usr/local/lib/python3.12/site-packages /usr/local/lib/python3.12/site-packages -# Set environment variables -ENV VOCAB_URL=https://medcat.rosalind.kcl.ac.uk/media/vocab.dat -ENV CDB_URL=https://medcat.rosalind.kcl.ac.uk/media/cdb-medmen-v1.dat - -ENV CDB_PATH=/webapp/models/cdb.dat -ENV VOCAB_PATH=/webapp/models/vocab.dat - # Set the pythonpath WORKDIR /webapp diff --git a/medcat-demo-app/webapp/demo/views.py b/medcat-demo-app/webapp/demo/views.py index bc859afca..5b663eabb 100644 --- a/medcat-demo-app/webapp/demo/views.py +++ b/medcat-demo-app/webapp/demo/views.py @@ -10,13 +10,12 @@ from wsgiref.util import FileWrapper from medcat import __version__ as medcat_version from medcat.cat import CAT -from medcat.cdb import CDB -from medcat.vocab import Vocab from urllib.request import urlretrieve, urlopen from urllib.error import HTTPError #from medcat.meta_cat import MetaCAT from .models import * from .forms import DownloaderForm, UMLSApiKeyForm +from functools import lru_cache AUTH_CALLBACK_SERVICE = 'https://medcat.rosalind.kcl.ac.uk/auth-callback' VALIDATION_BASE_URL = 'https://uts-ws.nlm.nih.gov/rest/isValidServiceValidate' @@ -29,10 +28,10 @@ model_pack_path = os.getenv('MODEL_PACK_PATH', 'models/medmen_wstatus_2021_oct.zip') -try: - cat = CAT.load_model_pack(model_pack_path) -except Exception as e: - print(str(e)) + +@lru_cache +def get_model_pack(): + return CAT.load_model_pack(model_pack_path) TPL_ENT = """ {text} {label}""" @@ -80,6 +79,7 @@ def fix_floats(in_dict: dict) -> dict: def get_html_and_json(text): + cat = get_model_pack() doc = cat(text) a = {