From b206fc19e7e17f749201792b39788d8b9b260fc0 Mon Sep 17 00:00:00 2001 From: Stefan Bogdan Date: Mon, 21 Nov 2022 18:06:13 +0100 Subject: [PATCH 1/2] remove un-used packages, remove instalation of third party libs --- Dockerfile | 7 +++---- custom.Dockerfile | 7 +++---- download.py | 9 +++++++-- meta.py | 1 + requirements-test.txt | 11 ++++------- requirements.txt | 3 --- smoke_test.py | 2 +- test_app.py | 2 +- vectorizer.py | 12 +++++++++--- 9 files changed, 29 insertions(+), 25 deletions(-) diff --git a/Dockerfile b/Dockerfile index 0c634d2..b6e8c57 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,9 @@ -FROM python:3.9-slim-buster +FROM python:3.10-slim WORKDIR /app -RUN apt-get update && apt-get -y install curl build-essential -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y -ENV PATH="$PATH:/root/.cargo/bin" +RUN apt-get update +RUN pip install --upgrade pip setuptools COPY requirements.txt . RUN pip3 install -r requirements.txt diff --git a/custom.Dockerfile b/custom.Dockerfile index 3ad0740..a020a4d 100644 --- a/custom.Dockerfile +++ b/custom.Dockerfile @@ -1,10 +1,9 @@ -FROM python:3.9-slim-buster +FROM python:3.10-slim WORKDIR /app -RUN apt-get update && apt-get -y install curl build-essential -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y -ENV PATH="$PATH:/root/.cargo/bin" +RUN apt-get update +RUN pip install --upgrade pip setuptools COPY requirements.txt . RUN pip3 install -r requirements.txt diff --git a/download.py b/download.py index 1544f1d..c74d459 100755 --- a/download.py +++ b/download.py @@ -1,9 +1,14 @@ #!/usr/bin/env python3 -from transformers import AutoModel, AutoTokenizer, AutoConfig -import nltk import os import sys +import nltk +from transformers import ( + AutoModel, + AutoTokenizer, + AutoConfig, +) + model_name = os.getenv('MODEL_NAME', None) force_automodel = os.getenv('FORCE_AUTOMODEL', False) diff --git a/meta.py b/meta.py index 1f0a79b..3887d67 100644 --- a/meta.py +++ b/meta.py @@ -1,5 +1,6 @@ from transformers import AutoConfig + class Meta: config: AutoConfig diff --git a/requirements-test.txt b/requirements-test.txt index 9e9e478..883aff1 100644 --- a/requirements-test.txt +++ b/requirements-test.txt @@ -1,10 +1,7 @@ requests==2.28.1 -tokenizers==0.11.6 -transformers==4.20.1 -fastapi==0.78.0 -uvicorn==0.18.2 +transformers==4.24.0 +fastapi==0.87.0 +uvicorn==0.20.0 nltk==3.7 -torch==1.12.0 -sentencepiece==0.1.96 -protobuf==4.21.2 +torch==1.13.0 pytest diff --git a/requirements.txt b/requirements.txt index e248219..cb5ec22 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,8 +1,5 @@ -tokenizers==0.13.2 transformers==4.25.1 fastapi==0.89.1 uvicorn==0.20.0 nltk==3.8.1 torch==1.13.1 -sentencepiece==0.1.97 -protobuf==4.21.12 diff --git a/smoke_test.py b/smoke_test.py index d5572ac..fbea1dd 100755 --- a/smoke_test.py +++ b/smoke_test.py @@ -1,6 +1,6 @@ +import time import unittest import requests -import time class SmokeTest(unittest.TestCase): diff --git a/test_app.py b/test_app.py index 69b4fc6..f088cb1 100644 --- a/test_app.py +++ b/test_app.py @@ -1,6 +1,6 @@ import os -import subprocess import time +import subprocess from multiprocessing import Process import pytest diff --git a/vectorizer.py b/vectorizer.py index 359747c..f52b242 100644 --- a/vectorizer.py +++ b/vectorizer.py @@ -1,11 +1,17 @@ import math from typing import Optional - import torch from nltk.tokenize import sent_tokenize from pydantic import BaseModel -from transformers import AutoModel, AutoTokenizer, T5ForConditionalGeneration, T5Tokenizer, DPRContextEncoder, \ - DPRQuestionEncoder +from transformers import ( + AutoModel, + AutoTokenizer, + T5ForConditionalGeneration, + T5Tokenizer, + DPRContextEncoder, + DPRQuestionEncoder, +) + # limit transformer batch size to limit parallel inference, otherwise we run # into memory problems From 06a8472563c53005dd9ea4905b51dfafddab5e6c Mon Sep 17 00:00:00 2001 From: Stefan Bogdan Date: Mon, 16 Jan 2023 11:41:13 +0100 Subject: [PATCH 2/2] update requirements --- requirements-test.txt | 11 ++++++----- requirements.txt | 1 + smoke_test.py | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/requirements-test.txt b/requirements-test.txt index 883aff1..aff6bc0 100644 --- a/requirements-test.txt +++ b/requirements-test.txt @@ -1,7 +1,8 @@ -requests==2.28.1 -transformers==4.24.0 -fastapi==0.87.0 +requests==2.28.2 +transformers==4.25.1 +fastapi==0.89.1 uvicorn==0.20.0 -nltk==3.7 -torch==1.13.0 +nltk==3.8.1 +torch==1.13.1 +sentencepiece==0.1.97 pytest diff --git a/requirements.txt b/requirements.txt index cb5ec22..f8cdd7b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,3 +3,4 @@ fastapi==0.89.1 uvicorn==0.20.0 nltk==3.8.1 torch==1.13.1 +sentencepiece==0.1.97 diff --git a/smoke_test.py b/smoke_test.py index fbea1dd..27d1ca6 100755 --- a/smoke_test.py +++ b/smoke_test.py @@ -18,7 +18,7 @@ def _waitForStartup(self): "status code is {}".format(res.status_code)) except Exception as e: print("Attempt {}: {}".format(i, e)) - time.sleep(1) + time.sleep(2) raise Exception("did not start up")