diff --git a/config/settings/base.py b/config/settings/base.py index 9a963f19..2c858d9a 100644 --- a/config/settings/base.py +++ b/config/settings/base.py @@ -537,6 +537,14 @@ if ext: INSTALLED_APPS.append("ethicalads_ext.support") +ADSERVER_ANALYZER_MODEL = env( + "ADSERVER_ANALYZER_MODEL", default="multi-qa-MiniLM-L6-cos-v1" +) +ADSERVER_ANALYZER_MODEL_HOME = env("ADSERVER_ANALYZER_MODEL_HOME", default="/tmp") +ADSERVER_ANALYZER_MODEL_NORMALIZE = env( + "ADSERVER_ANALYZER_MODEL_NORMALIZE", default=False +) + # Whether Do Not Track is enabled for the ad server ADSERVER_DO_NOT_TRACK = False diff --git a/docker-compose.yml b/docker-compose.yml index 8b7b4680..67736780 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -20,6 +20,9 @@ services: build: context: . dockerfile: ./docker-compose/django/Dockerfile + args: + - SENTENCE_TRANSFORMERS_HOME=${SENTENCE_TRANSFORMERS_HOME:-/app} + - SENTENCE_TRANSFORMERS_MODEL=${SENTENCE_TRANSFORMERS_MODEL:-multi-qa-MiniLM-L6-cos-v1} image: ethicaladserver_local_django depends_on: - postgres diff --git a/docker-compose/django/Dockerfile b/docker-compose/django/Dockerfile index 8c77a650..ab981a88 100644 --- a/docker-compose/django/Dockerfile +++ b/docker-compose/django/Dockerfile @@ -1,5 +1,9 @@ FROM ubuntu:22.04 +ARG SENTENCE_TRANSFORMERS_HOME +ARG SENTENCE_TRANSFORMERS_MODEL + + ENV DEBIAN_FRONTEND noninteractive ENV LANG en_US.UTF-8 ENV LANGUAGE en_US:en @@ -55,7 +59,7 @@ RUN chmod +x /start-celerybeat RUN ln -s /usr/bin/python3 /usr/bin/python # Load model -RUN python -c "from sentence_transformers import SentenceTransformer; SentenceTransformer('multi-qa-MiniLM-L6-cos-v1', cache_folder='/tmp/sentence_transformers')" +RUN python -c "from sentence_transformers import SentenceTransformer; SentenceTransformer('$SENTENCE_TRANSFORMERS_MODEL', cache_folder='$SENTENCE_TRANSFORMERS_HOME', trust_remote_code=True)" # Setup the locale RUN locale-gen en_US.UTF-8