TNK21 commited on
Commit
e798f5a
·
1 Parent(s): 00346e1

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -9
app.py CHANGED
@@ -1,27 +1,32 @@
1
  import gradio as gr
2
- from transformers import pipeline
3
 
4
- # Define the translation pipeline
5
- translator = pipeline("translation", model="facebook/mbart-large-50-many-to-many-mmt")
 
 
6
 
7
  # Define the Gradio interface
8
  def translate_text(text, target_language):
9
- translated_text = translator(text, target_language)[0]['translation_text']
 
 
 
10
  return translated_text
11
 
12
  iface = gr.Interface(
13
  fn=translate_text,
14
  inputs=[
15
- gr.components.Textbox(label="Input Text"),
16
- gr.components.Dropdown(
17
  label="Target Language",
18
- choices=["es", "fr", "de", "it"], # Add more languages as needed
19
  ),
20
  ],
21
- outputs=gr.components.Textbox(label="Translated Text"),
22
  live=True,
23
  title="Multilingual Translation Tool",
24
- description="Translate text into multiple languages using facebook/mbart-large-50-many-to-many-mmt model.",
25
  )
26
 
27
  # Start the Gradio interface
 
1
  import gradio as gr
2
+ from transformers import M2M100ForConditionalGeneration, M2M100Tokenizer
3
 
4
+ # Load the model and tokenizer
5
+ model_name = "facebook/mbart-large-50-many-to-many-mmt"
6
+ model = M2M100ForConditionalGeneration.from_pretrained(model_name)
7
+ tokenizer = M2M100Tokenizer.from_pretrained(model_name)
8
 
9
  # Define the Gradio interface
10
  def translate_text(text, target_language):
11
+ # Encode the input text and decode the translated text
12
+ input_ids = tokenizer.encode(text, return_tensors="pt", padding=True, truncation=True)
13
+ translated_ids = model.generate(input_ids, decoder_start_token_id=tokenizer.lang_code_to_id(target_language))
14
+ translated_text = tokenizer.decode(translated_ids[0], skip_special_tokens=True)
15
  return translated_text
16
 
17
  iface = gr.Interface(
18
  fn=translate_text,
19
  inputs=[
20
+ gr.inputs.Textbox(label="Input Text"),
21
+ gr.inputs.Dropdown(
22
  label="Target Language",
23
+ choices=["es", "fr", "de", "it", "en"], # Add more languages as needed
24
  ),
25
  ],
26
+ outputs=gr.outputs.Textbox(label="Translated Text"),
27
  live=True,
28
  title="Multilingual Translation Tool",
29
+ description=f"Translate text into multiple languages using {model_name} model.",
30
  )
31
 
32
  # Start the Gradio interface