File size: 795 Bytes
1ccb8ec e848a0c 1ccb8ec e848a0c 1ccb8ec | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | import deepl
import os
from typing import Optional
from dotenv import load_dotenv
load_dotenv()
class TranslationService:
def __init__(self):
self.api_key = os.getenv("DEEPL_API_KEY")
if not self.api_key:
raise ValueError("Zmienna środowiskowa DEEPL_API_KEY nie jest ustawiona!")
self.translator = deepl.Translator(self.api_key)
def translate(
self,
text: str,
source_lang: str = "PL",
target_lang: str = "EN-US"
) -> str:
"""Tłumaczenie tekstu"""
result = self.translator.translate_text(
text,
source_lang=source_lang,
target_lang=target_lang
)
return result.text.replace(".", ",")
# Singleton pattern
TRANSLATOR = TranslationService() |