vrammun commited on
Commit
a90149e
1 Parent(s): 9e5fdf9
Files changed (3) hide show
  1. README.md +1 -1
  2. app3.py +1 -1
  3. app4.py +64 -0
README.md CHANGED
@@ -5,7 +5,7 @@ colorFrom: pink
5
  colorTo: indigo
6
  sdk: gradio
7
  sdk_version: 6.0.2
8
- app_file: app3.py
9
  pinned: false
10
  license: apache-2.0
11
  short_description: Primera prueba para crear un espacio
 
5
  colorTo: indigo
6
  sdk: gradio
7
  sdk_version: 6.0.2
8
+ app_file: app4.py
9
  pinned: false
10
  license: apache-2.0
11
  short_description: Primera prueba para crear un espacio
app3.py CHANGED
@@ -13,4 +13,4 @@ def obtenerDescripcion(imagen):
13
  return modeloGenerarImagen(resultadoModeloTI[0]['generated_text']).images[0]
14
 
15
  demo = gr.Interface(fn=obtenerDescripcion, inputs="image", outputs="image")
16
- demo.launch(share=True)
 
13
  return modeloGenerarImagen(resultadoModeloTI[0]['generated_text']).images[0]
14
 
15
  demo = gr.Interface(fn=obtenerDescripcion, inputs="image", outputs="image")
16
+ demo.launch()
app4.py ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from transformers import pipeline
3
+ import numpy as np
4
+
5
+ # --- 1. Inicializaci贸n de los Modelos (Pipelines) ---
6
+ # # Pipeline de Traducci贸n (Ingl茅s a Espa帽ol)
7
+ traductor = pipeline("translation", model="Helsinki-NLP/opus-mt-tc-big-en-es")
8
+
9
+ # Pipeline de Texto a Voz
10
+ emisorAudio = pipeline("text-to-speech", model="suno/bark-small")
11
+
12
+ # --------------------------------------------------------------------------------
13
+
14
+ # --- 2. Funciones de L贸gica de la Aplicaci贸n ---
15
+
16
+ def traducir(frase):
17
+ """
18
+ Traduce una frase usando el modelo 'traductor'.
19
+ La salida del pipeline es una lista de diccionarios.
20
+ """
21
+ traduccion = traductor(frase)
22
+ # Extrae el texto traducido del resultado
23
+ return traduccion[0]["translation_text"]
24
+
25
+ def emitirAudio(texto_traducido):
26
+ """
27
+ Convierte el texto traducido a audio usando el modelo 'emisorAudio'.
28
+ Prepara la salida para el componente gr.Audio de Gradio.
29
+ """
30
+ audio = emisorAudio(texto_traducido)
31
+
32
+ # El modelo 'suno/bark-small' devuelve el audio en un formato que
33
+ # necesita ser convertido a un array NumPy para Gradio.
34
+ audio_array = np.array(audio["audio"][0], dtype=np.float32)
35
+ sampling_rate = audio["sampling_rate"]
36
+
37
+ # Gradio espera una tupla (sampling_rate, audio_array)
38
+ return (sampling_rate, audio_array)
39
+
40
+ # --------------------------------------------------------------------------------
41
+
42
+ # --- 3. Definici贸n de la Interfaz de Gradio ---
43
+ # with gr.Blocks() as aplicacion:
44
+ gr.Markdown("# ESTA ES NUESTRA APLICACI脫N DE TRADUCCI脫N Y TEXTO-A-VOZ")
45
+
46
+ with gr.Row():
47
+ entrada = gr.Textbox(placeholder="Frase a traducir (e.g., Hello, how are you?)", label="Frase Original")
48
+ traduccion = gr.Textbox(label="Frase en Espa帽ol")
49
+ salida = gr.Audio(label="Audio en Espa帽ol")
50
+
51
+ # L贸gica de interacci贸n:
52
+
53
+ # 1. Cuando el texto de 'entrada' cambia, llama a 'traducir' y actualiza 'traduccion'.
54
+ entrada.change(fn=traducir, inputs=entrada, outputs=traduccion)
55
+
56
+ # 2. Bot贸n para generar el audio
57
+ btn = gr.Button("Emitir Audio")
58
+
59
+ # 3. Cuando se hace clic en el bot贸n, llama a 'emitirAudio' usando el texto de 'traduccion'
60
+ # como entrada, y actualiza el componente 'salida' (Audio).
61
+ btn.click(fn=emitirAudio, inputs=traduccion, outputs=salida)
62
+
63
+ # --- 4. Ejecuci贸n de la Aplicaci贸n ---
64
+ # aplicacion.launch() # Descomentar para ejecutar la aplicaci贸n