Akhil Koduri commited on
Commit
170b92a
1 Parent(s): f73eb0f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -15
app.py CHANGED
@@ -25,34 +25,46 @@ def get_flores_200_code(language):
25
  return code['FLORES-200 code']
26
  return None
27
 
28
- def translate_text(text, destination_language, src_lang=None):
29
  """
30
- Translates text from the source language to the selected destination language using the T5 model.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
 
32
  Args:
33
  text (str): The text to translate.
34
- destination_language (str): The target language for translation.
35
- src_lang (str, optional): The source language of the text. If not provided, it will be detected automatically.
36
 
37
  Returns:
38
  str: The translated text.
39
  """
40
- # Detect source language if not provided
41
- if src_lang is None:
42
- try:
43
- src_lang = detect(text)
44
- except Exception as e:
45
- return f"Language detection error: {str(e)}"
46
-
47
  dest_code = get_flores_200_code(destination_language)
48
 
 
 
49
  if not dest_code:
50
- return "Unsupported language selected. Please choose a valid language."
51
 
52
  try:
53
  # Perform translation using T5 model pipeline
54
  translation = text_translator(text,
55
- src_lang=src_lang,
56
  tgt_lang=dest_code)
57
  translated_text = translation[0]["translation_text"]
58
  return translated_text
@@ -65,12 +77,12 @@ def main():
65
  fn=translate_text,
66
  inputs=[
67
  gr.Textbox(label="Input text to translate", lines=6, placeholder="Enter text..."),
68
- gr.Dropdown([code['Language'] for code in language_data], label="Select input language", default="English"),
69
  gr.Dropdown([code['Language'] for code in language_data], label="Select destination language")
70
  ],
71
  outputs=[gr.Textbox(label="Translated text", lines=4)],
72
  title="Multi-Language Translator",
73
- description="Translate text between multiple languages using the T5 model. Select input and destination languages from the dropdown menus and enter the text to translate.",
74
  theme=gr.themes.Soft(),
75
  live=True # Enable live updates
76
  )
 
25
  return code['FLORES-200 code']
26
  return None
27
 
28
+ def detect_language(text):
29
  """
30
+ Detects the language of the given text.
31
+
32
+ Args:
33
+ text (str): The text to detect language from.
34
+
35
+ Returns:
36
+ str: The detected language code.
37
+ """
38
+ try:
39
+ lang_code = detect(text)
40
+ return lang_code
41
+ except Exception as e:
42
+ return str(e)
43
+
44
+ def translate_text(text, source_language, destination_language):
45
+ """
46
+ Translates text from the source language to the destination language using the T5 model.
47
 
48
  Args:
49
  text (str): The text to translate.
50
+ source_language (str): The source language code.
51
+ destination_language (str): The target language code.
52
 
53
  Returns:
54
  str: The translated text.
55
  """
56
+ src_code = get_flores_200_code(source_language)
 
 
 
 
 
 
57
  dest_code = get_flores_200_code(destination_language)
58
 
59
+ if not src_code:
60
+ return "Unsupported source language selected. Please choose a valid language."
61
  if not dest_code:
62
+ return "Unsupported destination language selected. Please choose a valid language."
63
 
64
  try:
65
  # Perform translation using T5 model pipeline
66
  translation = text_translator(text,
67
+ src_lang=src_code,
68
  tgt_lang=dest_code)
69
  translated_text = translation[0]["translation_text"]
70
  return translated_text
 
77
  fn=translate_text,
78
  inputs=[
79
  gr.Textbox(label="Input text to translate", lines=6, placeholder="Enter text..."),
80
+ gr.Dropdown([code['Language'] for code in language_data], label="Select source language"),
81
  gr.Dropdown([code['Language'] for code in language_data], label="Select destination language")
82
  ],
83
  outputs=[gr.Textbox(label="Translated text", lines=4)],
84
  title="Multi-Language Translator",
85
+ description="Translate text between multiple languages using the T5 model. Select the source and destination languages from the dropdown menus.",
86
  theme=gr.themes.Soft(),
87
  live=True # Enable live updates
88
  )