pradeep4321 commited on
Commit
9154daf
·
verified ·
1 Parent(s): 781f6ba

Update src/streamlit_app.py

Browse files
Files changed (1) hide show
  1. src/streamlit_app.py +9 -19
src/streamlit_app.py CHANGED
@@ -18,7 +18,7 @@ if not HF_TOKEN:
18
  st.stop()
19
 
20
  client = InferenceClient(
21
- model="facebook/nllb-200-3.3B",
22
  token=HF_TOKEN
23
  )
24
 
@@ -68,35 +68,34 @@ def speech_to_text(audio_file):
68
  return text
69
 
70
  # ==============================
71
- # TRANSLATION FUNCTION (FIXED)
72
  # ==============================
73
  def translate(text, target_lang):
74
 
75
- # Detect language
76
  try:
77
  src_lang = detect(text)
78
  except:
79
  src_lang = "unknown"
80
 
81
- # Retrieve memory
82
  memory = retrieve_memory(text)
83
 
84
- # Prompt-based translation
85
  prompt = f"""
86
- You are a professional translator.
87
 
88
  Translate the following text into {target_lang}.
89
 
90
  Text:
91
  {text}
92
 
93
- Only return the translated text.
 
 
94
  """
95
 
96
  try:
97
- response = client.chat_completion(
98
  prompt,
99
- max_tokens=200,
100
  temperature=0.2
101
  )
102
 
@@ -105,7 +104,6 @@ Only return the translated text.
105
  except Exception as e:
106
  translated = f"❌ Translation failed: {str(e)}"
107
 
108
- # Store memory
109
  store_memory(text, translated)
110
 
111
  return translated, src_lang, memory
@@ -121,15 +119,11 @@ tab1, tab2 = st.tabs(["📝 Text Input", "🎤 Voice Input"])
121
 
122
  input_text = ""
123
 
124
- # ------------------------------
125
  # TEXT INPUT
126
- # ------------------------------
127
  with tab1:
128
  input_text = st.text_area("Enter text")
129
 
130
- # ------------------------------
131
  # VOICE INPUT
132
- # ------------------------------
133
  with tab2:
134
  audio_file = st.file_uploader("Upload audio (wav/mp3)", type=["wav", "mp3"])
135
 
@@ -142,17 +136,13 @@ with tab2:
142
  st.success("Recognized Text:")
143
  st.write(input_text)
144
 
145
- # ------------------------------
146
  # TARGET LANGUAGE
147
- # ------------------------------
148
  target_lang = st.selectbox(
149
  "Target Language",
150
  ["English", "Tamil", "Hindi", "French", "Arabic", "Spanish", "German"]
151
  )
152
 
153
- # ------------------------------
154
- # TRANSLATE BUTTON
155
- # ------------------------------
156
  if st.button("Translate"):
157
  if not input_text.strip():
158
  st.warning("Please provide input text or audio")
 
18
  st.stop()
19
 
20
  client = InferenceClient(
21
+ model="google/gemma-2b-it", # ✅ FAST GEMMA MODEL
22
  token=HF_TOKEN
23
  )
24
 
 
68
  return text
69
 
70
  # ==============================
71
+ # TRANSLATION FUNCTION (GEMMA)
72
  # ==============================
73
  def translate(text, target_lang):
74
 
 
75
  try:
76
  src_lang = detect(text)
77
  except:
78
  src_lang = "unknown"
79
 
 
80
  memory = retrieve_memory(text)
81
 
 
82
  prompt = f"""
83
+ You are an expert translator.
84
 
85
  Translate the following text into {target_lang}.
86
 
87
  Text:
88
  {text}
89
 
90
+ IMPORTANT:
91
+ - Only return translated text
92
+ - Do not explain anything
93
  """
94
 
95
  try:
96
+ response = client.text_generation(
97
  prompt,
98
+ max_new_tokens=200,
99
  temperature=0.2
100
  )
101
 
 
104
  except Exception as e:
105
  translated = f"❌ Translation failed: {str(e)}"
106
 
 
107
  store_memory(text, translated)
108
 
109
  return translated, src_lang, memory
 
119
 
120
  input_text = ""
121
 
 
122
  # TEXT INPUT
 
123
  with tab1:
124
  input_text = st.text_area("Enter text")
125
 
 
126
  # VOICE INPUT
 
127
  with tab2:
128
  audio_file = st.file_uploader("Upload audio (wav/mp3)", type=["wav", "mp3"])
129
 
 
136
  st.success("Recognized Text:")
137
  st.write(input_text)
138
 
 
139
  # TARGET LANGUAGE
 
140
  target_lang = st.selectbox(
141
  "Target Language",
142
  ["English", "Tamil", "Hindi", "French", "Arabic", "Spanish", "German"]
143
  )
144
 
145
+ # TRANSLATE
 
 
146
  if st.button("Translate"):
147
  if not input_text.strip():
148
  st.warning("Please provide input text or audio")