nairaxo commited on
Commit
a710bbe
1 Parent(s): 0dade2f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -17
app.py CHANGED
@@ -3,7 +3,7 @@ from transformers import pipeline
3
 
4
  # Chargement des deux modèles Whisper
5
  model_roman = pipeline("automatic-speech-recognition", model="nairaxo/whisper-shikomori-bible")
6
- model_arabic = pipeline("automatic-speech-recognition", model="nairaxo/whisper-shikomori-bible")
7
 
8
  # Fonction de transcription avec sélection du modèle
9
  def transcribe(audio, model_choice):
@@ -13,33 +13,45 @@ def transcribe(audio, model_choice):
13
  transcription = model_arabic(audio)["text"]
14
  return transcription
15
 
16
- # Interface Gradio
 
 
 
17
  mf_transcribe = gr.Interface(
18
  fn=transcribe,
19
  inputs=[
20
- gr.inputs.Audio(source="microphone", type="filepath", label="Entrée Audio"),
21
- gr.inputs.Radio(choices=["Modèle en alphabet latin", "Modèle en alphabet arabe"], label="Choisissez un modèle")
 
 
22
  ],
23
- outputs="text",
24
- title="Transcription en Shikomori",
25
- description="Choisissez un modèle pour transcrire l'audio en shikomori."
 
26
  )
27
 
 
28
  file_transcribe = gr.Interface(
29
  fn=transcribe,
30
  inputs=[
31
- # gr.inputs.Audio(source="microphone", type="filepath", label="Entrée Audio"),
32
- gr.inputs.Audio(source="upload", type="filepath", optional=True, label="Entrée Audio"),
33
- gr.inputs.Radio(choices=["Modèle en alphabet latin", "Modèle en alphabet arabe"], label="Choisissez un modèle")
 
34
  ],
35
- outputs="text",
36
- title="Transcription en Shikomori",
37
- description="Choisissez un modèle pour transcrire l'audio en shikomori."
 
38
  )
39
 
40
- # iface.launch()
41
-
42
  with demo:
43
- gr.TabbedInterface([mf_transcribe, file_transcribe], ["Microphone", "Audio file"])
 
 
 
44
 
45
- demo.launch(enable_queue=True)
 
 
3
 
4
  # Chargement des deux modèles Whisper
5
  model_roman = pipeline("automatic-speech-recognition", model="nairaxo/whisper-shikomori-bible")
6
+ model_arabic = pipeline("automatic-speech-recognition", model="nairaxo/whisper-shikomori-bible-arabic")
7
 
8
  # Fonction de transcription avec sélection du modèle
9
  def transcribe(audio, model_choice):
 
13
  transcription = model_arabic(audio)["text"]
14
  return transcription
15
 
16
+ # Initialisation des blocs pour l'interface Gradio
17
+ demo = gr.Blocks()
18
+
19
+ # Interface Gradio pour microphone
20
  mf_transcribe = gr.Interface(
21
  fn=transcribe,
22
  inputs=[
23
+ gr.Audio(source="microphone", type="filepath", label="🎤 Entrée Audio (Microphone)"),
24
+ gr.Radio(choices=["Modèle en alphabet latin", "Modèle en alphabet arabe"], label="Sélection du modèle de transcription",
25
+ value="Modèle en alphabet latin",
26
+ style={"font-family": "Arial", "font-size": "16px", "color": "#333"}),
27
  ],
28
+ outputs=gr.Textbox(label="📄 Transcription en Shikomori", lines=5, max_lines=10, style={"background-color": "#F0F8FF", "font-size": "15px"}),
29
+ title="Transcription Audio en Shikomori",
30
+ description="<p style='color: #555;'>Sélectionnez une méthode et un modèle pour transcrire l'audio en langue Shikomori. Ce service prend en charge les transcriptions en alphabet latin et arabe.</p>",
31
+ theme="compact",
32
  )
33
 
34
+ # Interface Gradio pour fichier audio
35
  file_transcribe = gr.Interface(
36
  fn=transcribe,
37
  inputs=[
38
+ gr.Audio(type="filepath", optional=True, label="📂 Entrée Audio (Fichier)"),
39
+ gr.Radio(choices=["Modèle en alphabet latin", "Modèle en alphabet arabe"], label="Sélection du modèle de transcription",
40
+ value="Modèle en alphabet latin",
41
+ style={"font-family": "Arial", "font-size": "16px", "color": "#333"}),
42
  ],
43
+ outputs=gr.Textbox(label="📄 Transcription en Shikomori", lines=5, max_lines=10, style={"background-color": "#F0F8FF", "font-size": "15px"}),
44
+ title="Transcription Audio en Shikomori",
45
+ description="<p style='color: #555;'>Chargez un fichier audio et sélectionnez un modèle pour transcrire l'audio en langue Shikomori. Transcription possible en alphabet latin ou arabe.</p>",
46
+ theme="compact",
47
  )
48
 
49
+ # Utilisation de l'interface avec des onglets
 
50
  with demo:
51
+ gr.TabbedInterface(
52
+ [mf_transcribe, file_transcribe],
53
+ ["🔊 Microphone", "📁 Fichier Audio"]
54
+ )
55
 
56
+ # Lancement de l'application
57
+ demo.launch(enable_queue=True, server_port=5001, share=True)