base.py 865 B

123456789101112131415161718192021222324252627282930
  1. from abc import abstractmethod
  2. from typing import Any
  3. from core.model_providers.models.base import BaseProviderModel
  4. from core.model_providers.models.entity.model_params import ModelType
  5. from core.model_providers.providers.base import BaseModelProvider
  6. class BaseSpeech2Text(BaseProviderModel):
  7. name: str
  8. type: ModelType = ModelType.SPEECH_TO_TEXT
  9. def __init__(self, model_provider: BaseModelProvider, client: Any, name: str):
  10. super().__init__(model_provider, client)
  11. self.name = name
  12. def run(self, file):
  13. try:
  14. return self._run(file)
  15. except Exception as ex:
  16. raise self.handle_exceptions(ex)
  17. @abstractmethod
  18. def _run(self, file):
  19. raise NotImplementedError
  20. @abstractmethod
  21. def handle_exceptions(self, ex: Exception) -> Exception:
  22. raise NotImplementedError