File size: 812 Bytes
2246dd3
 
 
 
a5c73f5
 
 
2246dd3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import os
from flask import Flask, request, jsonify
from transformers import MarianMTModel, MarianTokenizer

# ✅ Set a writable cache directory
os.environ['TRANSFORMERS_CACHE'] = '/tmp/hf_cache'

model_name = "Helsinki-NLP/opus-mt-en-de"
tokenizer = MarianTokenizer.from_pretrained(model_name)
model = MarianMTModel.from_pretrained(model_name)

app = Flask(__name__)

@app.route("/translate", methods=["POST"])
def translate():
    text = request.json["text"]
    inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True)
    translated = model.generate(**inputs)
    result = tokenizer.decode(translated[0], skip_special_tokens=True)
    return jsonify({"translation": result})

if __name__ == "__main__":
    port = int(os.environ.get("PORT", 7860))
    app.run(host="0.0.0.0", port=port)