Spaces:
Paused
Paused
0x07CB
commited on
Désactivation temporaire de la détection automatique de langue et utilisation de la langue de l'interface
Browse files- pages/main.py +39 -41
pages/main.py
CHANGED
|
@@ -191,7 +191,6 @@ def tts_settings(name__tts_voice,
|
|
| 191 |
st.session_state.enable_tts_for_input_from_audio_record = set__tts_with_audio
|
| 192 |
st.session_state.enable_tts_for_input_from_text_field = set__tts_with_text
|
| 193 |
st.session_state.tts_voice = set__tts_voice
|
| 194 |
-
#st.session_state.
|
| 195 |
st.rerun()
|
| 196 |
|
| 197 |
@st.fragment
|
|
@@ -213,37 +212,37 @@ def recorder_released():
|
|
| 213 |
# Isoler l'audio ici
|
| 214 |
audio = isolate_audio(audio)
|
| 215 |
|
| 216 |
-
if not st.session_state.language_detected:
|
| 217 |
-
|
| 218 |
-
|
| 219 |
-
|
| 220 |
-
|
| 221 |
-
|
| 222 |
-
|
| 223 |
-
|
| 224 |
-
|
| 225 |
-
|
| 226 |
-
|
| 227 |
-
|
| 228 |
-
|
| 229 |
-
|
| 230 |
-
|
| 231 |
-
|
| 232 |
-
|
| 233 |
-
|
| 234 |
-
|
| 235 |
-
|
| 236 |
-
|
| 237 |
-
|
| 238 |
-
|
| 239 |
-
|
| 240 |
-
|
| 241 |
-
|
| 242 |
-
|
| 243 |
-
|
| 244 |
-
|
| 245 |
-
|
| 246 |
-
|
| 247 |
# ##############################################################
|
| 248 |
|
| 249 |
try:
|
|
@@ -254,7 +253,7 @@ def recorder_released():
|
|
| 254 |
# Transcrire l'audio en texte
|
| 255 |
st.session_state.transcription = transcribe_audio(
|
| 256 |
tmp_file,
|
| 257 |
-
language=st.session_state.
|
| 258 |
)
|
| 259 |
audio = AudioSegment.empty()
|
| 260 |
|
|
@@ -273,10 +272,9 @@ def recorder_released():
|
|
| 273 |
st.session_state.system_prompt, st.session_state.operation_prompt = init_langs_for_processing(
|
| 274 |
target_language = st.session_state.target_language,
|
| 275 |
interface_language = st.session_state.interface_language,
|
| 276 |
-
language_detected = st.session_state.
|
| 277 |
)
|
| 278 |
|
| 279 |
-
|
| 280 |
with st.chat_message("assistant", avatar="👻"):
|
| 281 |
message_placeholder = st.empty()
|
| 282 |
st.session_state.response_generator = process_message(
|
|
@@ -288,9 +286,9 @@ def recorder_released():
|
|
| 288 |
for response_chunk in st.session_state.response_generator:
|
| 289 |
message_placeholder.markdown(response_chunk)
|
| 290 |
st.session_state.end_response = st.session_state.response_generator.close()
|
|
|
|
| 291 |
if st.session_state.full_response != "":
|
| 292 |
message_placeholder.markdown(st.session_state.full_response)
|
| 293 |
-
|
| 294 |
if st.session_state.enable_tts_for_input_from_audio_record:
|
| 295 |
st.session_state.tts_audio, st.session_state.tts_duration = process_tts_message(st.session_state.full_response)
|
| 296 |
|
|
@@ -503,17 +501,17 @@ def main_page():
|
|
| 503 |
st.session_state.full_response = ""
|
| 504 |
st.session_state.audio_list = []
|
| 505 |
|
| 506 |
-
result_detection_lang_1 = detection_langue_du_message_utilisateur(
|
| 507 |
-
|
| 508 |
-
)
|
| 509 |
-
user_text_lang = result_detection_lang_1["language"] if (result_detection_lang_1["language"] != "default") else "Unknown"
|
| 510 |
|
| 511 |
|
| 512 |
with st.chat_message("user", avatar="👤"):
|
| 513 |
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
| 514 |
st.write(f"{timestamp}")
|
| 515 |
with st.container(border=True):
|
| 516 |
-
st.subheader(f"🌐 lang: {
|
| 517 |
st.markdown(st.session_state.user_input)
|
| 518 |
|
| 519 |
|
|
|
|
| 191 |
st.session_state.enable_tts_for_input_from_audio_record = set__tts_with_audio
|
| 192 |
st.session_state.enable_tts_for_input_from_text_field = set__tts_with_text
|
| 193 |
st.session_state.tts_voice = set__tts_voice
|
|
|
|
| 194 |
st.rerun()
|
| 195 |
|
| 196 |
@st.fragment
|
|
|
|
| 212 |
# Isoler l'audio ici
|
| 213 |
audio = isolate_audio(audio)
|
| 214 |
|
| 215 |
+
# if not st.session_state.language_detected:
|
| 216 |
+
# # 1. Verifie si audio.duration_seconds est superieur a 600 secondes (10 minutes)
|
| 217 |
+
# if audio.duration_seconds > 600:
|
| 218 |
+
# # PyDub handles time in milliseconds
|
| 219 |
+
# ten_minutes = 10 * 60 * 1000
|
| 220 |
+
# first_ten_minutes_audio = audio[:ten_minutes]
|
| 221 |
+
# else:
|
| 222 |
+
# # less than ten minutes ... nervermind, the name of this variable is
|
| 223 |
+
# first_ten_minutes_audio = deepcopy(audio)
|
| 224 |
+
#
|
| 225 |
+
# with tempfile.NamedTemporaryFile(suffix=".mp3", delete=False) as tmp_extract:
|
| 226 |
+
# first_ten_minutes_audio.export(tmp_extract, format="mp3")
|
| 227 |
+
# tmp_extract.close()
|
| 228 |
+
#
|
| 229 |
+
# # il faut transcrire sans specifier l'argument language dans la fonction transcribe_audio
|
| 230 |
+
# # ensuite on pourra utiliser la fonction detect_language pour detecter la langue du texte transcrit
|
| 231 |
+
#
|
| 232 |
+
# # Transcrire les 10 premiers minutes audio en texte
|
| 233 |
+
# st.session_state.language_detected = detect_language(
|
| 234 |
+
# input_text = transcribe_audio(tmp_extract),
|
| 235 |
+
# temperature = 0.2,
|
| 236 |
+
# context_window = 512,
|
| 237 |
+
# model = "gpt-4o-mini"
|
| 238 |
+
# )
|
| 239 |
+
# first_ten_minutes_audio = AudioSegment.empty()
|
| 240 |
+
#
|
| 241 |
+
# st.markdown(
|
| 242 |
+
# f"- {get_translation('langue_detectee')} {convert_iso6391_to_language_name(st.session_state.language_detected)}"
|
| 243 |
+
# )
|
| 244 |
+
#
|
| 245 |
+
#
|
| 246 |
# ##############################################################
|
| 247 |
|
| 248 |
try:
|
|
|
|
| 253 |
# Transcrire l'audio en texte
|
| 254 |
st.session_state.transcription = transcribe_audio(
|
| 255 |
tmp_file,
|
| 256 |
+
language=st.session_state.interface_language
|
| 257 |
)
|
| 258 |
audio = AudioSegment.empty()
|
| 259 |
|
|
|
|
| 272 |
st.session_state.system_prompt, st.session_state.operation_prompt = init_langs_for_processing(
|
| 273 |
target_language = st.session_state.target_language,
|
| 274 |
interface_language = st.session_state.interface_language,
|
| 275 |
+
language_detected = st.session_state.interface_language
|
| 276 |
)
|
| 277 |
|
|
|
|
| 278 |
with st.chat_message("assistant", avatar="👻"):
|
| 279 |
message_placeholder = st.empty()
|
| 280 |
st.session_state.response_generator = process_message(
|
|
|
|
| 286 |
for response_chunk in st.session_state.response_generator:
|
| 287 |
message_placeholder.markdown(response_chunk)
|
| 288 |
st.session_state.end_response = st.session_state.response_generator.close()
|
| 289 |
+
|
| 290 |
if st.session_state.full_response != "":
|
| 291 |
message_placeholder.markdown(st.session_state.full_response)
|
|
|
|
| 292 |
if st.session_state.enable_tts_for_input_from_audio_record:
|
| 293 |
st.session_state.tts_audio, st.session_state.tts_duration = process_tts_message(st.session_state.full_response)
|
| 294 |
|
|
|
|
| 501 |
st.session_state.full_response = ""
|
| 502 |
st.session_state.audio_list = []
|
| 503 |
|
| 504 |
+
#result_detection_lang_1 = detection_langue_du_message_utilisateur(
|
| 505 |
+
# st.session_state.user_input
|
| 506 |
+
#)
|
| 507 |
+
#user_text_lang = result_detection_lang_1["language"] if (result_detection_lang_1["language"] != "default") else "Unknown"
|
| 508 |
|
| 509 |
|
| 510 |
with st.chat_message("user", avatar="👤"):
|
| 511 |
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
| 512 |
st.write(f"{timestamp}")
|
| 513 |
with st.container(border=True):
|
| 514 |
+
st.subheader(f"🌐 lang: {st.session_state.interface_language}")
|
| 515 |
st.markdown(st.session_state.user_input)
|
| 516 |
|
| 517 |
|