Spaces:
Sleeping
Sleeping
import gradio as gr | |
from transformers import pipeline | |
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM | |
import torch | |
import warnings | |
warnings.filterwarnings("ignore") | |
device = "cuda" if torch.cuda.is_available() else "cpu" | |
# Load the tokenizer and model | |
tokenizer = AutoTokenizer.from_pretrained("Abdulmohsena/Faseeh") | |
model = AutoModelForSeq2SeqLM.from_pretrained("Abdulmohsena/Faseeh").to(device) | |
def translate(text, temperature=0.1, tries=1): | |
inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True, max_length=256).to(device) | |
outputs = model.generate( | |
**inputs, | |
do_sample=True, | |
temperature=temperature, | |
num_return_sequences=tries, | |
) | |
translation = tokenizer.batch_decode(outputs, skip_special_tokens=True) | |
return translation | |
# Gradio interface | |
with gr.Blocks() as demo: | |
gr.Markdown("# Machine Translation to Classical Arabic") | |
# Input text box | |
input_text = gr.Textbox(label="Input Text", placeholder="Enter text to translate from English to Classical Arabic") | |
# Output text box | |
output_text = gr.Textbox(label="Translated Text") | |
# Button to trigger translation | |
translate_btn = gr.Button("Translate") | |
# Button action | |
translate_btn.click(translate, inputs=input_text, outputs=output_text) | |
# Launch the Gradio app | |
if __name__ == "__main__": | |
demo.launch() | |