Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
# JBHF/VERTAAL-APP-EAGLE-SHELTER/app.py - 16-04-2024, 14u00m CET
|
2 |
# WERKT AL: DE OPGENOMEN AUDIO MBV DEZE APP, audio.wav, HOEFT NIET PERSÉ GEPERSISTEERD TE WORDEN !!!!!!
|
3 |
|
4 |
# https://github.com/theevann/streamlit-audiorecorder
|
@@ -67,19 +67,20 @@ import streamlit as st
|
|
67 |
# князем Данилом Романовичем біля Звенигорода і названий на честь його сина Лева Сьогодні Львів має площу 155 квадратних кілометрів з безліччю громадських будинків, кафе, магазинів
|
68 |
# ...
|
69 |
|
|
|
|
|
|
|
70 |
# TEXTS FROM UKRAIN TO TRANSLATE:
|
71 |
# 1 - Short text from https://youtu.be/1_vO60OkkrY?list=PLeeQI3aTmCn9Lu9mgSCmmc-KkGI95-Ie6 :
|
72 |
text_to_transcribe = """князем Данилом Романовичем біля Звенигорода і названий на честь його сина Лева Сьогодні Львів має площу 155 квадратних кілометрів з безліччю громадських будинків, кафе, магазинів"""
|
73 |
#
|
74 |
# 2 - complete, long text from https://youtu.be/1_vO60OkkrY?list=PLeeQI3aTmCn9Lu9mgSCmmc-KkGI95-Ie6 :
|
75 |
text_to_transcribe = """
|
76 |
-
|
77 |
Львів – одне з моїх найулюбленіших міст України. Я вже відвідувала це місто п’ять разів, але хочу повертатися туди знову і знову. Львів – це історична столиця Галичини і Західної України. Це великий культурний, політичний і релігійний центр України.
|
78 |
Львів був заснований у середині XIII ст. князем Данилом Романовичем біля Звенигорода і названий на честь його сина, Лева. Сьогодні Львів має площу 155 км. кв. Найбільш виразна частина Львова включає проспект Шевченка і Городецьку вулицю, з безліччю громадських будинків, готелів, кафе, магазинів і банків у стилі ХІХ-ХХ ст.
|
79 |
Львів – дивовижне місто, яке наскрізь просякнуте п’янким ароматом кави і шоколаду. Світ візит я починаю із серця Львова – Площа ринок, потім я підіймаюся на Ратушу. Я люблю відвідувати заклади, які стали візитівкою міста такі як: Копальня кави, Майстерня шоколаду, Гасова Лямпа, Дім Легенд. Львів — єдине в Україні місто, у якому збереглися архітектурні споруди часів Ренесансу. Найбільш яскравими прикладами цього стилю служать церква Успіння і каплиця Трьох Святих.
|
80 |
Основні пам'ятники міста — пам'ятник А. Міцкевичу, І. Франку, В. Стефанику, С. Бандері. Екскурсія середньовічними замками також не залишає нікого байдужим.
|
81 |
Неможливо передати словами всю красу і велич Львова, треба бачити це самостійно. Це старовинне місто, яке зачаровує своїми традиціями, красою та шармом.
|
82 |
-
|
83 |
"""
|
84 |
st.write("text_to_transcribe: ", text_to_transcribe)
|
85 |
|
@@ -169,6 +170,17 @@ st.write(response.content)
|
|
169 |
import streamlit as st
|
170 |
from audiorecorder import audiorecorder
|
171 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
172 |
st.title("Audio Recorder")
|
173 |
# audiorecorder(start_prompt="Start recording", stop_prompt="Stop recording", pause_prompt="", key=None):
|
174 |
audio = audiorecorder("Click to record", "Click to stop recording", "Click to pause recording")
|
@@ -211,6 +223,8 @@ st.button("Rerun")
|
|
211 |
# infer_faster_whisper_large_v2 (CPU VERSIE !) 08-04-2024-COLAB-CPU-PYTHON3-tvscitechtalk.ipynb
|
212 |
# https://colab.research.google.com/drive/1EreiFx825oIrR2P43XSXjHXx01EWi6ZH#scrollTo=vuLjbPxexPDj&uniqifier=5
|
213 |
|
|
|
|
|
214 |
from faster_whisper import WhisperModel
|
215 |
|
216 |
model_size = "large-v2"
|
@@ -227,15 +241,17 @@ model_size = "large-v2"
|
|
227 |
# JB: Dit gebruikt mijn HF Token !
|
228 |
# st.write("Ready Loading the WhisperModel: model = WhisperModel(model_size, device=\"cpu\")")
|
229 |
|
230 |
-
st.write("Loading the WhisperModel: model = WhisperModel(model_size, device=\"cpu\", compute_type=\"int8\")")
|
|
|
|
|
231 |
model = WhisperModel(model_size, device="cpu", compute_type="int8") # , compute_type="float16") # JB
|
232 |
# JB: Dit gebruikt mijn HF Token !
|
233 |
# st.write("Ready Loading the WhisperModel: model = WhisperModel(model_size, device=\"cpu\")")
|
234 |
# LOADING OF model = WhisperModel(model_size, device="cpu") TAKES ABOUT 1 MINUTE ON HF SPACES STREAMLIT FREE TIER
|
235 |
#
|
236 |
-
st.write("Ready Loading the WhisperModel: model = WhisperModel(model_size, device=\"cpu\", compute_type=\"int8\")")
|
237 |
# LOADING OF model = WhisperModel(model_size, device=\"cpu\", compute_type=\"int8\") TAKES ABOUT 33 sec (Na RERUN 1 minute) ON HF SPACES STREAMLIT FREE TIER
|
238 |
-
|
239 |
|
240 |
# USING:
|
241 |
# model = WhisperModel(model_size, device="cpu", compute_type="int8") # JB
|
@@ -250,8 +266,8 @@ segments, info = model.transcribe("audio.wav", beam_size=1) # DIT WERKT: GEDUREN
|
|
250 |
# print("Detected language '%s' with probability %f" % (info.language, info.language_probability))
|
251 |
st.write("Detected language '%s' with probability %f" % (info.language, info.language_probability))
|
252 |
st.write("")
|
253 |
-
st.write("info.all_language_probs : ", info.all_language_probs)
|
254 |
-
st.write("len(info.all_language_probs): ", len(info.all_language_probs))
|
255 |
# 99
|
256 |
|
257 |
st.write("")
|
@@ -266,7 +282,6 @@ st.write("info.duration: ", info.duration)
|
|
266 |
# seconds = info.duration - minutes*60
|
267 |
minutes = int(info.duration / 60)
|
268 |
seconds = info.duration - minutes*60
|
269 |
-
|
270 |
st.write(minutes," minutes and ", seconds, " seconds")
|
271 |
|
272 |
|
@@ -310,4 +325,3 @@ response = chain.invoke({"text": \
|
|
310 |
st.write("ORIGINELE TEKST : ", text_to_transcribe)
|
311 |
st.write("NEDERLANDSE VERTALING HIERVAN: ", response.content)
|
312 |
|
313 |
-
|
|
|
1 |
+
# JBHF/VERTAAL-APP-EAGLE-SHELTER/app.py - 16-04-2024, 14u00m CET (app-16-04-2024-14u00m-CET.py)
|
2 |
# WERKT AL: DE OPGENOMEN AUDIO MBV DEZE APP, audio.wav, HOEFT NIET PERSÉ GEPERSISTEERD TE WORDEN !!!!!!
|
3 |
|
4 |
# https://github.com/theevann/streamlit-audiorecorder
|
|
|
67 |
# князем Данилом Романовичем біля Звенигорода і названий на честь його сина Лева Сьогодні Львів має площу 155 квадратних кілометрів з безліччю громадських будинків, кафе, магазинів
|
68 |
# ...
|
69 |
|
70 |
+
st.header("Voorbeeld van het vertalen van een tekst in het Oekraïens naar het Nederlands:", divider='rainbow')
|
71 |
+
|
72 |
+
|
73 |
# TEXTS FROM UKRAIN TO TRANSLATE:
|
74 |
# 1 - Short text from https://youtu.be/1_vO60OkkrY?list=PLeeQI3aTmCn9Lu9mgSCmmc-KkGI95-Ie6 :
|
75 |
text_to_transcribe = """князем Данилом Романовичем біля Звенигорода і названий на честь його сина Лева Сьогодні Львів має площу 155 квадратних кілометрів з безліччю громадських будинків, кафе, магазинів"""
|
76 |
#
|
77 |
# 2 - complete, long text from https://youtu.be/1_vO60OkkrY?list=PLeeQI3aTmCn9Lu9mgSCmmc-KkGI95-Ie6 :
|
78 |
text_to_transcribe = """
|
|
|
79 |
Львів – одне з моїх найулюбленіших міст України. Я вже відвідувала це місто п’ять разів, але хочу повертатися туди знову і знову. Львів – це історична столиця Галичини і Західної України. Це великий культурний, політичний і релігійний центр України.
|
80 |
Львів був заснований у середині XIII ст. князем Данилом Романовичем біля Звенигорода і названий на честь його сина, Лева. Сьогодні Львів має площу 155 км. кв. Найбільш виразна частина Львова включає проспект Шевченка і Городецьку вулицю, з безліччю громадських будинків, готелів, кафе, магазинів і банків у стилі ХІХ-ХХ ст.
|
81 |
Львів – дивовижне місто, яке наскрізь просякнуте п’янким ароматом кави і шоколаду. Світ візит я починаю із серця Львова – Площа ринок, потім я підіймаюся на Ратушу. Я люблю відвідувати заклади, які стали візитівкою міста такі як: Копальня кави, Майстерня шоколаду, Гасова Лямпа, Дім Легенд. Львів — єдине в Україні місто, у якому збереглися архітектурні споруди часів Ренесансу. Найбільш яскравими прикладами цього стилю служать церква Успіння і каплиця Трьох Святих.
|
82 |
Основні пам'ятники міста — пам'ятник А. Міцкевичу, І. Франку, В. Стефанику, С. Бандері. Екскурсія середньовічними замками також не залишає нікого байдужим.
|
83 |
Неможливо передати словами всю красу і велич Львова, треба бачити це самостійно. Це старовинне місто, яке зачаровує своїми традиціями, красою та шармом.
|
|
|
84 |
"""
|
85 |
st.write("text_to_transcribe: ", text_to_transcribe)
|
86 |
|
|
|
170 |
import streamlit as st
|
171 |
from audiorecorder import audiorecorder
|
172 |
|
173 |
+
st.header("Spreek een tekst in een vreemde taal in via de microfoon van Uw PC of mobiele telefoon:", divider='rainbow')
|
174 |
+
st.write("Klik eerst op \"Click to record\" om de opname te starten.")
|
175 |
+
st.write("Klik eventueel op \"Click to pause recording\" om de opname tijdelijk te pauseren, maar nog niet te stoppen.")
|
176 |
+
st.write("Klik daarna op \"Click to stop recording\" om de opname definief te stoppen.")
|
177 |
+
|
178 |
+
st.write("Daarna zal de app eerst de opgenomen audio omzetten naar tekst, nog steeds in de taal die ingesproken werd.")
|
179 |
+
st.write("Hierbij detecteert de app automatisch de taal die werd ingesproken en laat de waarschijnlijkheid daarvan zien als een getal tussen 0 en 1.")
|
180 |
+
|
181 |
+
st.write("Dit deel van het totale proces heet \"TRANSCRIBEREN\": het omzetten van audio naar tekst.")
|
182 |
+
|
183 |
+
|
184 |
st.title("Audio Recorder")
|
185 |
# audiorecorder(start_prompt="Start recording", stop_prompt="Stop recording", pause_prompt="", key=None):
|
186 |
audio = audiorecorder("Click to record", "Click to stop recording", "Click to pause recording")
|
|
|
223 |
# infer_faster_whisper_large_v2 (CPU VERSIE !) 08-04-2024-COLAB-CPU-PYTHON3-tvscitechtalk.ipynb
|
224 |
# https://colab.research.google.com/drive/1EreiFx825oIrR2P43XSXjHXx01EWi6ZH#scrollTo=vuLjbPxexPDj&uniqifier=5
|
225 |
|
226 |
+
st.header("Nu gaat de app de ingesproken tekst daadwerkelijk vertalen naar het Nederlands:", divider='rainbow')
|
227 |
+
|
228 |
from faster_whisper import WhisperModel
|
229 |
|
230 |
model_size = "large-v2"
|
|
|
241 |
# JB: Dit gebruikt mijn HF Token !
|
242 |
# st.write("Ready Loading the WhisperModel: model = WhisperModel(model_size, device=\"cpu\")")
|
243 |
|
244 |
+
# st.write("Loading the WhisperModel: model = WhisperModel(model_size, device=\"cpu\", compute_type=\"int8\")")
|
245 |
+
st.write("Laden van het vertaal model")
|
246 |
+
|
247 |
model = WhisperModel(model_size, device="cpu", compute_type="int8") # , compute_type="float16") # JB
|
248 |
# JB: Dit gebruikt mijn HF Token !
|
249 |
# st.write("Ready Loading the WhisperModel: model = WhisperModel(model_size, device=\"cpu\")")
|
250 |
# LOADING OF model = WhisperModel(model_size, device="cpu") TAKES ABOUT 1 MINUTE ON HF SPACES STREAMLIT FREE TIER
|
251 |
#
|
252 |
+
# st.write("Ready Loading the WhisperModel: model = WhisperModel(model_size, device=\"cpu\", compute_type=\"int8\")")
|
253 |
# LOADING OF model = WhisperModel(model_size, device=\"cpu\", compute_type=\"int8\") TAKES ABOUT 33 sec (Na RERUN 1 minute) ON HF SPACES STREAMLIT FREE TIER
|
254 |
+
st.write("Klaar met het laden van het vertaal model")
|
255 |
|
256 |
# USING:
|
257 |
# model = WhisperModel(model_size, device="cpu", compute_type="int8") # JB
|
|
|
266 |
# print("Detected language '%s' with probability %f" % (info.language, info.language_probability))
|
267 |
st.write("Detected language '%s' with probability %f" % (info.language, info.language_probability))
|
268 |
st.write("")
|
269 |
+
# st.write("info.all_language_probs : ", info.all_language_probs)
|
270 |
+
# st.write("len(info.all_language_probs): ", len(info.all_language_probs))
|
271 |
# 99
|
272 |
|
273 |
st.write("")
|
|
|
282 |
# seconds = info.duration - minutes*60
|
283 |
minutes = int(info.duration / 60)
|
284 |
seconds = info.duration - minutes*60
|
|
|
285 |
st.write(minutes," minutes and ", seconds, " seconds")
|
286 |
|
287 |
|
|
|
325 |
st.write("ORIGINELE TEKST : ", text_to_transcribe)
|
326 |
st.write("NEDERLANDSE VERTALING HIERVAN: ", response.content)
|
327 |
|
|