Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -1,9 +1,6 @@
|
|
1 |
import gradio as gr
|
2 |
import requests
|
3 |
import os
|
4 |
-
import threading
|
5 |
-
from gtts import gTTS
|
6 |
-
from playsound import playsound
|
7 |
|
8 |
def translate_text(text, target_language):
|
9 |
try:
|
@@ -26,27 +23,14 @@ def translate_text(text, target_language):
|
|
26 |
response = requests.post(url, headers=headers, json=payload)
|
27 |
|
28 |
if response.status_code == 200:
|
29 |
-
|
30 |
-
return translated_text
|
31 |
else:
|
32 |
return f"Ошибка при переводе текста. Ошибка: {response.text}"
|
33 |
except Exception as e:
|
34 |
return f"Ошибка: {str(e)}"
|
35 |
|
36 |
-
def text_to_speech(text, target_language):
|
37 |
-
try:
|
38 |
-
tts = gTTS(text=text, lang=target_language, slow=False)
|
39 |
-
tts.save("output.mp3")
|
40 |
-
playsound("output.mp3")
|
41 |
-
except Exception as e:
|
42 |
-
return f"Ошибка при озвучивании текста. Ошибка: {str(e)}"
|
43 |
-
finally:
|
44 |
-
os.remove("output.mp3")
|
45 |
-
|
46 |
def translate_interface(text, target_language):
|
47 |
translated_text = translate_text(text, target_language)
|
48 |
-
playsound_thread = threading.Thread(target=text_to_speech, args=(translated_text, target_language))
|
49 |
-
playsound_thread.start()
|
50 |
return translated_text
|
51 |
|
52 |
languages = [
|
@@ -59,11 +43,7 @@ iface = gr.Interface(
|
|
59 |
gr.Textbox(label="Введите текст"),
|
60 |
gr.Dropdown(languages, label="Выберите язык для перевода")
|
61 |
],
|
62 |
-
outputs=gr.
|
63 |
-
gr.Textbox(label="Переведенный текст"),
|
64 |
-
"Озвучено"
|
65 |
-
),
|
66 |
-
live=True,
|
67 |
title="Переводчик",
|
68 |
description="Введите текст и выберите язык для перевода."
|
69 |
)
|
|
|
1 |
import gradio as gr
|
2 |
import requests
|
3 |
import os
|
|
|
|
|
|
|
4 |
|
5 |
def translate_text(text, target_language):
|
6 |
try:
|
|
|
23 |
response = requests.post(url, headers=headers, json=payload)
|
24 |
|
25 |
if response.status_code == 200:
|
26 |
+
return response.json()['choices'][0]['message']['content'].strip()
|
|
|
27 |
else:
|
28 |
return f"Ошибка при переводе текста. Ошибка: {response.text}"
|
29 |
except Exception as e:
|
30 |
return f"Ошибка: {str(e)}"
|
31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
def translate_interface(text, target_language):
|
33 |
translated_text = translate_text(text, target_language)
|
|
|
|
|
34 |
return translated_text
|
35 |
|
36 |
languages = [
|
|
|
43 |
gr.Textbox(label="Введите текст"),
|
44 |
gr.Dropdown(languages, label="Выберите язык для перевода")
|
45 |
],
|
46 |
+
outputs=gr.Textbox(label="Переведенный текст"),
|
|
|
|
|
|
|
|
|
47 |
title="Переводчик",
|
48 |
description="Введите текст и выберите язык для перевода."
|
49 |
)
|