diff --git a/app/daemon/job_utils.py b/app/daemon/job_utils.py index 518100f7..ab17e760 100644 --- a/app/daemon/job_utils.py +++ b/app/daemon/job_utils.py @@ -53,7 +53,12 @@ def _create_job_service(job): command += f' --mem-mb {mem_mb}' command += f' --n-cores {n_cores}' if job.service == 'spacy-nlp-pipeline': - command += f' -m {job.service_args["model"]}' + model_id = hashids.decode(job.service_args['model']) + model = SpaCyNLPPipelineModel.query.get(model_id) + if model is None: + job.status = JobStatus.FAILED + return + command += f' -m {model.pipeline_name}' if 'encoding_detection' in job.service_args and job.service_args['encoding_detection']: command += ' --check-encoding' elif job.service == 'tesseract-ocr-pipeline': @@ -139,6 +144,8 @@ def _create_job_service(job): ) ''' ## Restart policy ## ''' restart_policy = docker.types.RestartPolicy() + print(command) + print(mounts) try: docker_client.services.create( image, diff --git a/app/models.py b/app/models.py index 90d16f48..93a23461 100644 --- a/app/models.py +++ b/app/models.py @@ -698,7 +698,7 @@ class SpaCyNLPPipelineModel(FileMixin, HashidMixin, db.Model): db.session.add(model) db.session.flush(objects=[model]) db.session.refresh(model) - model.filename = f'{model.id}.traineddata' + model.filename = m['url'].split('/')[-1] r = requests.get(m['url'], stream=True) pbar = tqdm( desc=f'{model.title} ({model.filename})', diff --git a/app/services/services.yml b/app/services/services.yml index 1692407e..c9d61e08 100644 --- a/app/services/services.yml +++ b/app/services/services.yml @@ -62,4 +62,4 @@ spacy-nlp-pipeline: methods: - 'encoding_detection' publishing_year: 2022 - url: 'https://gitlab.ub.uni-bielefeld.de/sfb1288inf/spacy-nlp-pipeline/ + url: 'https://gitlab.ub.uni-bielefeld.de/sfb1288inf/spacy-nlp-pipeline/'