Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
|
@@ -3,8 +3,6 @@ import gradio as gr
|
|
| 3 |
import whisper
|
| 4 |
import os
|
| 5 |
|
| 6 |
-
#其實可以用 Label-Studio 哦 XD
|
| 7 |
-
|
| 8 |
# 加載 Whisper 模型
|
| 9 |
model = whisper.load_model("large-v2", device="cuda" if torch.cuda.is_available() else "cpu")
|
| 10 |
|
|
@@ -12,8 +10,8 @@ def transcribe(audio_file):
|
|
| 12 |
# 從 Gradio 文件輸入獲取文件路徑
|
| 13 |
audio_path = audio_file
|
| 14 |
|
| 15 |
-
# 使用 Whisper
|
| 16 |
-
result = model.transcribe(audio_path
|
| 17 |
text = result["text"]
|
| 18 |
|
| 19 |
# 提取上載的音頻文件的基本名字,用作保存轉錄文本的文件名
|
|
@@ -21,22 +19,18 @@ def transcribe(audio_file):
|
|
| 21 |
# 定義保存轉錄結果的文件路徑
|
| 22 |
transcript_file_path = f"txt/{base_name}_transcript.txt"
|
| 23 |
|
|
|
|
|
|
|
|
|
|
| 24 |
# 將轉錄文本保存到文件
|
| 25 |
with open(transcript_file_path, "w") as file:
|
| 26 |
file.write(text)
|
| 27 |
|
| 28 |
-
#
|
| 29 |
-
return text,
|
| 30 |
|
| 31 |
# 創建 Gradio 界麵
|
| 32 |
with gr.Blocks(css=".container { max-width: 800px; margin: auto; } .gradio-app { background-color: #f0f0f0; } button { background-color: #4CAF50; color: white; }") as demo:
|
| 33 |
gr.Markdown("ASR 語音語料辨識修正工具")
|
| 34 |
with gr.Row():
|
| 35 |
-
|
| 36 |
-
submit_button = gr.Button("語音識別")
|
| 37 |
-
output_text = gr.TextArea(label="識別結果")
|
| 38 |
-
save_status = gr.Text(label="儲存結果")
|
| 39 |
-
|
| 40 |
-
submit_button.click(fn=transcribe, inputs=audio_input, outputs=[output_text, save_status])
|
| 41 |
-
|
| 42 |
-
demo.launch()
|
|
|
|
| 3 |
import whisper
|
| 4 |
import os
|
| 5 |
|
|
|
|
|
|
|
| 6 |
# 加載 Whisper 模型
|
| 7 |
model = whisper.load_model("large-v2", device="cuda" if torch.cuda.is_available() else "cpu")
|
| 8 |
|
|
|
|
| 10 |
# 從 Gradio 文件輸入獲取文件路徑
|
| 11 |
audio_path = audio_file
|
| 12 |
|
| 13 |
+
# 使用 Whisper 進行語音識別
|
| 14 |
+
result = model.transcribe(audio_path)
|
| 15 |
text = result["text"]
|
| 16 |
|
| 17 |
# 提取上載的音頻文件的基本名字,用作保存轉錄文本的文件名
|
|
|
|
| 19 |
# 定義保存轉錄結果的文件路徑
|
| 20 |
transcript_file_path = f"txt/{base_name}_transcript.txt"
|
| 21 |
|
| 22 |
+
# 確保 txt 目錄存在
|
| 23 |
+
os.makedirs("txt", exist_ok=True)
|
| 24 |
+
|
| 25 |
# 將轉錄文本保存到文件
|
| 26 |
with open(transcript_file_path, "w") as file:
|
| 27 |
file.write(text)
|
| 28 |
|
| 29 |
+
# 返回文本和文件路徑,使得文件可以在界麵上下載
|
| 30 |
+
return text, transcript_file_path
|
| 31 |
|
| 32 |
# 創建 Gradio 界麵
|
| 33 |
with gr.Blocks(css=".container { max-width: 800px; margin: auto; } .gradio-app { background-color: #f0f0f0; } button { background-color: #4CAF50; color: white; }") as demo:
|
| 34 |
gr.Markdown("ASR 語音語料辨識修正工具")
|
| 35 |
with gr.Row():
|
| 36 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|