Mohamedd123321's picture
Update app.py
f8d2fd0 verified
Raw
History Blame
918 Bytes
from fastapi import FastAPI, Request
from fastapi.responses import JSONResponse
from fastapi.staticfiles import StaticFiles
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
import torch
app = FastAPI()
# Mount static files (HTML + CSS)
app.mount("/", StaticFiles(directory=".", html=True), name="static")
# Load model
model_name = "itsmeussa/AdabTranslate-Darija"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSeq2SeqLM.from_pretrained(model_name)
@app.post("/translate")
async def translate(request: Request):
data = await request.json()
text = data.get("text", "")
if not text.strip():
return {"translation": "⚠️ Empty input."}
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_length=256)
translation = tokenizer.decode(outputs[0], skip_special_tokens=True)
return {"translation": translation}