Spaces:
Sleeping
Sleeping
app.py
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
import streamlit as st
|
2 |
import fitz # PyMuPDF
|
3 |
from transformers import pipeline
|
4 |
-
import
|
5 |
import tempfile
|
6 |
import os
|
7 |
|
@@ -25,16 +25,6 @@ def extract_text(file):
|
|
25 |
def load_explainer():
|
26 |
return pipeline("text2text-generation", model="google/flan-t5-large")
|
27 |
|
28 |
-
# Text-to-speech function
|
29 |
-
def speak_text(text):
|
30 |
-
engine = pyttsx3.init()
|
31 |
-
engine.setProperty('rate', 150)
|
32 |
-
with tempfile.NamedTemporaryFile(delete=False, suffix=".mp3") as f:
|
33 |
-
filename = f.name
|
34 |
-
engine.save_to_file(text, filename)
|
35 |
-
engine.runAndWait()
|
36 |
-
return filename
|
37 |
-
|
38 |
# Main logic
|
39 |
if uploaded_file:
|
40 |
text_data = extract_text(uploaded_file)
|
@@ -70,12 +60,14 @@ if uploaded_file:
|
|
70 |
st.success("Explanation:")
|
71 |
st.write(response)
|
72 |
|
73 |
-
#
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
|
|
|
|
79 |
|
80 |
else:
|
81 |
st.info("Upload a PDF Health Report to begin.")
|
|
|
1 |
import streamlit as st
|
2 |
import fitz # PyMuPDF
|
3 |
from transformers import pipeline
|
4 |
+
from gtts import gTTS
|
5 |
import tempfile
|
6 |
import os
|
7 |
|
|
|
25 |
def load_explainer():
|
26 |
return pipeline("text2text-generation", model="google/flan-t5-large")
|
27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
# Main logic
|
29 |
if uploaded_file:
|
30 |
text_data = extract_text(uploaded_file)
|
|
|
60 |
st.success("Explanation:")
|
61 |
st.write(response)
|
62 |
|
63 |
+
# Text-to-speech using gTTS
|
64 |
+
tts = gTTS(text=response)
|
65 |
+
temp_audio = tempfile.NamedTemporaryFile(delete=False, suffix=".mp3")
|
66 |
+
tts.save(temp_audio.name)
|
67 |
+
|
68 |
+
audio_file = open(temp_audio.name, 'rb')
|
69 |
+
audio_bytes = audio_file.read()
|
70 |
+
st.audio(audio_bytes, format='audio/mp3')
|
71 |
|
72 |
else:
|
73 |
st.info("Upload a PDF Health Report to begin.")
|