diff --git a/requirements.txt b/requirements.txt index 8f8e4deef..6d7adc217 100644 --- a/requirements.txt +++ b/requirements.txt @@ -82,6 +82,7 @@ mdurl==0.1.2 mpmath==1.3.0 multidict==6.4.4 multiprocess==0.70.15 +mypy==1.16.0 mypy_extensions==1.1.0 nemollm==0.3.5 networkx==3.4.2 @@ -112,6 +113,7 @@ optimum==1.25.3 orjson==3.10.18 packaging==24.2 pandas==2.2.3 +pathspec==0.12.1 pfzy==0.3.4 pillow==10.4.0 ply==3.11 diff --git a/src/text_generation/entrypoints/http_api_controller.py b/src/text_generation/entrypoints/http_api_controller.py index d883979cc..15a1dcb31 100644 --- a/src/text_generation/entrypoints/http_api_controller.py +++ b/src/text_generation/entrypoints/http_api_controller.py @@ -3,11 +3,11 @@ import traceback from src.text_generation.adapters.llm.llm import Phi3LanguageModel from src.text_generation.adapters.llm.llm_rag import Phi3LanguageModelWithRag -from src.text_generation.service.logging_service import LoggingService +from src.text_generation.services.logging.file_logging_service import FileLoggingService class HttpApiController: def __init__(self): - self.logger = LoggingService(filename='text_generation.controller.log').logger + self.logger = FileLoggingService(filename='text_generation.controller.log').logger self.routes = {} # Register routes self.register_routes() diff --git a/src/text_generation/entrypoints/server.py b/src/text_generation/entrypoints/server.py index f8081944b..714134df3 100644 --- a/src/text_generation/entrypoints/server.py +++ b/src/text_generation/entrypoints/server.py @@ -1,11 +1,11 @@ from src.text_generation.entrypoints.http_api_controller import HttpApiController -from src.text_generation.service.logging_service import LoggingService +from src.text_generation.services.logging.file_logging_service import FileLoggingService from wsgiref.simple_server import make_server class RestApiServer: def __init__(self): - self.logger = LoggingService(filename='text_generation.server.log').logger + self.logger = FileLoggingService(filename='text_generation.server.log') def listen(self): try: diff --git a/src/text_generation/service/logging_service.py b/src/text_generation/service/logging_service.py deleted file mode 100644 index a8a79a230..000000000 --- a/src/text_generation/service/logging_service.py +++ /dev/null @@ -1,10 +0,0 @@ -import logging - -class LoggingService: - # TODO use base class and make this file logging service - - def __init__(self, filename): - logger = logging.getLogger() - logger.setLevel(logging.DEBUG) - logger.addHandler(logging.FileHandler(filename)) - self.logger = logger diff --git a/src/text_generation/service/__init__.py b/src/text_generation/services/__init__.py similarity index 100% rename from src/text_generation/service/__init__.py rename to src/text_generation/services/__init__.py diff --git a/src/text_generation/services/language_models/__init__.py b/src/text_generation/services/language_models/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/src/text_generation/service/language_model_response_service.py b/src/text_generation/services/language_models/language_model_response_service.py similarity index 100% rename from src/text_generation/service/language_model_response_service.py rename to src/text_generation/services/language_models/language_model_response_service.py diff --git a/src/text_generation/services/logging/__init__.py b/src/text_generation/services/logging/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/src/text_generation/services/logging/abstract_logging_service.py b/src/text_generation/services/logging/abstract_logging_service.py new file mode 100644 index 000000000..694ba3504 --- /dev/null +++ b/src/text_generation/services/logging/abstract_logging_service.py @@ -0,0 +1,10 @@ +import abc +import logging + + +class AbstractLoggingService(abc.ABC): + def __init__(self, handler: logging.Handler): + logger = logging.getLogger() + logger.setLevel(logging.DEBUG) + logger.addHandler(handler) + self.logger = logger \ No newline at end of file diff --git a/src/text_generation/services/logging/file_logging_service.py b/src/text_generation/services/logging/file_logging_service.py new file mode 100644 index 000000000..06645839f --- /dev/null +++ b/src/text_generation/services/logging/file_logging_service.py @@ -0,0 +1,8 @@ +import logging +from src.text_generation.services.logging.abstract_logging_service import AbstractLoggingService + + +class FileLoggingService(AbstractLoggingService): + def __init__(self, filename): + super().__init__(handler=logging.FileHandler(filename)) + self.logger = super().logger \ No newline at end of file