File size: 808 Bytes
6eb24ef
b7bbd4d
 
 
 
6eb24ef
b7bbd4d
 
 
6eb24ef
 
b7bbd4d
 
 
 
 
6eb24ef
 
b7bbd4d
 
 
 
 
6eb24ef
b7bbd4d
 
 
 
6eb24ef
 
b7bbd4d
6eb24ef
 
 
b7bbd4d
 
 
 
6eb24ef
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
33
34
35
36
37
38
39
40
import logging
from fastapi import FastAPI
from pydantic import BaseModel
from transformers import pipeline

logging.basicConfig(level=logging.INFO)

app = FastAPI()

logging.info("Loading translation model...")

translator = pipeline(
    "translation",
    model="Helsinki-NLP/opus-mt-synthetic-en-gd"
)

logging.info("Model loaded successfully")

class TranslateRequest(BaseModel):
    text: str

@app.get("/")
def health():
    logging.info("Health check called")
    return {"status": "ok"}

@app.post("/translate")
def translate(req: TranslateRequest):
    logging.info(f"Received text: {req.text}")

    result = translator(req.text, max_length=140)

    logging.info(f"Raw model output: {result}")

    return {
        "translatedText": result[0]["translation_text"],
        "phonetics": ""
    }