rayl-aoit commited on
Commit
09696be
·
verified ·
1 Parent(s): c9b1560

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -7
app.py CHANGED
@@ -1,7 +1,8 @@
1
  import gradio as gr
 
2
  from transformers import pipeline
3
  from huggingface_hub import InferenceClient
4
- from language_directions import *
5
  # from IPython.display import Audio as IPythonAudio
6
 
7
  playground = gr.Blocks()
@@ -22,6 +23,17 @@ ner_pipe = pipeline("ner", model="dslim/bert-base-NER")
22
  # audio = IPythonAudio(audio_data, rate=sampling_rate)
23
  # return audio_data, sampling_rate
24
 
 
 
 
 
 
 
 
 
 
 
 
25
  def respond(message, history: list[tuple[str, str]], system_message, max_tokens, temperature, top_p,):
26
  messages = [{"role": "system", "content": system_message}]
27
 
@@ -64,12 +76,12 @@ def translate(input_text, source, target):
64
 
65
  def summarize_translate(input_text, target_lang):
66
  output = summary_pipe(input_text)
67
- summary_origin = output[0]['summary_text']
68
- source = 'en'
69
- target_lang_dict = get_all_source_languages()
70
- target = target_lang_dict[target_lang]
71
- summary_translated = translate(summary_origin,source,target)
72
- return summary_origin, summary_translated[0]
73
 
74
  def merge_tokens(tokens):
75
  merged_tokens = []
 
1
  import gradio as gr
2
+ import langcodes
3
  from transformers import pipeline
4
  from huggingface_hub import InferenceClient
5
+ from langdetect import detect, DetectorFactory
6
  # from IPython.display import Audio as IPythonAudio
7
 
8
  playground = gr.Blocks()
 
23
  # audio = IPythonAudio(audio_data, rate=sampling_rate)
24
  # return audio_data, sampling_rate
25
 
26
+ def detect_language(text):
27
+ DetectorFactory.seed = 0 # Ensure consistent results
28
+ return detect(text)
29
+
30
+ def language_name_to_code(language_name):
31
+ try:
32
+ language = langcodes.find(language_name)
33
+ return language.language
34
+ except langcodes.LanguageTagError:
35
+ return None
36
+
37
  def respond(message, history: list[tuple[str, str]], system_message, max_tokens, temperature, top_p,):
38
  messages = [{"role": "system", "content": system_message}]
39
 
 
76
 
77
  def summarize_translate(input_text, target_lang):
78
  output = summary_pipe(input_text)
79
+ input_text_summary = output[0]['summary_text']
80
+ # source = 'en'
81
+ source = detect_language(input_text_summary)
82
+ target = language_name_to_code(target_lang)
83
+ summary_translated = translate(input_text_summary,source,target)
84
+ return input_text_summary, summary_translated[0]
85
 
86
  def merge_tokens(tokens):
87
  merged_tokens = []