Whisper, el sistema de reconocimiento de voz de OpenAI, se ha mejorado con 680,000 horas de datos supervisados multilingües y multitarea recopilados de la web, lo que aumenta su resistencia a acentos, ruido de fondo y lenguaje especializado. En Viatea te contamos cómo crear una aplicación de identificación de hablantes con Whisper.
Paso 1: Configuración del Entorno
Antes de empezar, asegúrate de tener una cuenta en OpenAI y haber instalado las dependencias necesarias. Para este tutorial, necesitaremos Python 3.7 o superior y las siguientes bibliotecas:
- OpenAI’s Whisper API: Instala la API de Whisper mediante el siguiente comando:Copy code
pip install openai
- Flask: Instala Flask para crear una aplicación web sencilla donde los usuarios puedan grabar su voz y obtener la identificación del hablante.Copy code
pip install flask
Paso 2: Obtener las Credenciales de la API de Whisper
Ve a la página de Whisper de OpenAI y obtén tus credenciales de la API (API Key). Asegúrate de mantener estas credenciales en un lugar seguro y no compartirlas públicamente.
Paso 3: Crear la Aplicación Web
Crea un archivo Python llamado «app.py» y comencemos creando la estructura básica de la aplicación Flask:
pythonCopy codefrom flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
if __name__ == '__main__':
app.run(debug=True)
Paso 4: Crear la Página de Grabación
Crea una carpeta llamada «templates» dentro del mismo directorio que «app.py». Dentro de «templates», crea un archivo HTML llamado «index.html». Agrega el siguiente código para crear la página donde los usuarios puedan grabar su voz:
htmlCopy code<!DOCTYPE html>
<html>
<head>
<title>Identificación de Hablantes con Whisper</title>
</head>
<body>
<h1>Identificación de Hablantes</h1>
<p>Haga clic en el botón de abajo y le pediremos que grabe su voz para identificarlo.</p>
<button id="start-recording">Iniciar Grabación</button>
<script>
const startRecordingButton = document.getElementById('start-recording');
startRecordingButton.addEventListener('click', async () => {
const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
const mediaRecorder = new MediaRecorder(stream);
const chunks = [];
mediaRecorder.ondataavailable = (e) => {
chunks.push(e.data);
};
mediaRecorder.onstop = async () => {
const blob = new Blob(chunks, { type: 'audio/webm' });
const formData = new FormData();
formData.append('file', blob);
// Agregar el código para enviar el archivo de audio a la API de Whisper
};
mediaRecorder.start();
setTimeout(() => mediaRecorder.stop(), 5000);
});
</script>
</body>
</html>
Paso 5: Conectar con la API de Whisper
En el paso 4, hemos creado un evento para grabar 5 segundos de audio. Ahora, agreguemos el código para enviar ese archivo de audio a la API de Whisper y obtener la identificación del hablante.
pythonCopy codeimport openai
openai.api_key = 'TU_API_KEY_DE_WHISPER'
@app.route('/', methods=['POST'])
def identify_speaker():
audio_file = request.files['file']
response = openai.Whip.query(model="whisper-large", inputs={"speech": audio_file.read()})
return response['text']
Paso 6: Ejecutar la Aplicación
¡Estamos listos para probar nuestra aplicación! Ejecuta la aplicación usando el siguiente comando:
Copy codepython app.py
Ve a tu navegador y abre «http://localhost:5000/«. Verás la página para grabar voz. Haz clic en el botón «Iniciar Grabación» y habla durante 5 segundos. Una vez que se detenga la grabación, la aplicación enviará el archivo de audio a la API de Whisper para la identificación del hablante y mostrará el resultado en pantalla.
Para recordar
En este tutorial, has aprendido cómo crear una aplicación web que utiliza la API de Whisper de OpenAI para identificar hablantes. A través de Flask y JavaScript, pudimos grabar la voz del usuario y enviarla a la API de Whisper para obtener resultados precisos de identificación. ¡Ahora puedes usar este conocimiento para desarrollar aplicaciones más avanzadas y útiles con Whisper de OpenAI!