MenuBase/services/translation/base.py

20 lines
625 B
Python

# services/translation/base.py
"""
Base class for translation services
"""
from abc import ABC, abstractmethod
from typing import Optional, List, Dict
class TranslationService(ABC):
"""Abstract base class for translation services"""
@abstractmethod
def translate_text(self, text: str, target_language: str, source_language: Optional[str] = None) -> str:
"""Translate a single text"""
pass
@abstractmethod
def translate_batch(self, texts: List[str], target_language: str, source_language: Optional[str] = None) -> List[str]:
"""Translate a batch of texts"""
pass