
LLM OpenAI
FlowHunt es compatible con docenas de modelos de generación de texto, incluidos los modelos de OpenAI. Aquí te mostramos cómo usar ChatGPT en tus herramientas d...
OpenAI Whisper es un sistema ASR de código abierto que convierte con precisión voz en texto en 99 idiomas, admitiendo transcripción, traducción e identificación de idioma para una automatización robusta con IA.
OpenAI Whisper puede considerarse tanto un modelo como un sistema, dependiendo del contexto.
La función principal de Whisper es transcribir voz a texto. Destaca en:
En el corazón de Whisper se encuentra la arquitectura Transformer, específicamente un modelo codificador-decodificador. Los Transformers son redes neuronales que sobresalen en el procesamiento de datos secuenciales y la comprensión de contexto en largas secuencias. Introducidos en el artículo “Attention is All You Need” en 2017, los Transformers se han vuelto fundamentales en muchas tareas de PLN.
El proceso de Whisper implica:
Whisper fue entrenado con un enorme conjunto de 680,000 horas de datos supervisados recolectados de la web. Esto incluye:
Con cobertura de 99 idiomas, Whisper destaca por su capacidad para gestionar entradas lingüísticas diversas. Esta capacidad multilingüe lo hace adecuado para aplicaciones y servicios globales orientados a audiencias internacionales.
Entrenado con extensos datos supervisados, Whisper alcanza tasas de precisión altas en tareas de transcripción. Su robustez ante diferentes acentos, dialectos y ruidos de fondo lo hace confiable en escenarios reales.
Más allá de la transcripción, Whisper puede realizar:
Lanzado como software de código abierto, Whisper permite a los desarrolladores:
Al integrar Whisper en chatbots y asistentes de IA, los desarrolladores pueden permitir:
Whisper está implementado como una biblioteca de Python, permitiendo la integración fluida en proyectos basados en Python. Usar Whisper en Python implica configurar el entorno adecuado, instalar las dependencias necesarias y utilizar las funciones de la biblioteca para transcribir o traducir archivos de audio.
Antes de usar Whisper, debes preparar tu entorno de desarrollo instalando Python, PyTorch, FFmpeg y la biblioteca Whisper.
Si aún no tienes Python instalado, descárgalo desde el sitio oficial. Para instalar PyTorch, utiliza pip:
pip install torch
Alternativamente, visita el sitio web de PyTorch para instrucciones específicas de instalación según tu sistema operativo y versión de Python.
Whisper requiere FFmpeg para procesar archivos de audio. Instala FFmpeg usando el gestor de paquetes apropiado para tu sistema operativo.
Ubuntu/Debian:
sudo apt update && sudo apt install ffmpeg
MacOS (con Homebrew):
brew install ffmpeg
Windows (con Chocolatey):
choco install ffmpeg
Instala el paquete de Python Whisper usando pip:
pip install -U openai-whisper
Para instalar la última versión directamente desde el repositorio de GitHub:
pip install git+https://github.com/openai/whisper.git
Asegúrate de que el Modo Desarrollador esté activado:
Whisper ofrece varios modelos que varían en tamaño y capacidades. Los modelos van desde tiny
hasta large
, equilibrando de diferente manera la velocidad y la precisión.
Tamaño | Parámetros | Modelo solo inglés | Modelo multilingüe | VRAM requerida | Velocidad relativa |
---|---|---|---|---|---|
tiny | 39 M | tiny.en | tiny | ~1 GB | ~32x |
base | 74 M | base.en | base | ~1 GB | ~16x |
small | 244 M | small.en | small | ~2 GB | ~6x |
medium | 769 M | medium.en | medium | ~5 GB | ~2x |
large | 1550 M | N/A | large | ~10 GB | 1x |
.en
): Optimizados para transcripción en inglés, con mejor rendimiento para audio en inglés.Tras configurar el entorno e instalar los componentes necesarios, puedes comenzar a usar Whisper en tus proyectos Python.
Comienza importando la biblioteca Whisper y cargando un modelo:
import whisper
# Carga el modelo deseado
model = whisper.load_model("base")
Sustituye "base"
por el nombre del modelo que se ajuste a tu aplicación.
Whisper ofrece una función simple transcribe
para convertir archivos de audio en texto.
Ejemplo: Transcribir un archivo de audio en inglés
# Transcribe el archivo de audio
result = model.transcribe("path/to/english_audio.mp3")
# Imprime la transcripción
print(result["text"])
model.transcribe()
: Procesa el archivo de audio y devuelve un diccionario con la transcripción y otros metadatos.result["text"]
: Accede al texto transcrito del resultado.Whisper puede traducir audio de varios idiomas al inglés.
Ejemplo: Traducir audio en español a inglés
# Transcribe y traduce audio en español a inglés
result = model.transcribe("path/to/spanish_audio.mp3", task="translate")
# Imprime el texto traducido
print(result["text"])
task="translate"
: Indica al modelo que traduzca el audio al inglés en vez de solo transcribirlo literalmente.Aunque Whisper puede detectar automáticamente el idioma, especificarlo puede mejorar la precisión y velocidad.
Ejemplo: Transcribir audio en francés
# Transcribe audio en francés especificando el idioma
result = model.transcribe("path/to/french_audio.wav", language="fr")
# Imprime la transcripción
print(result["text"])
Whisper puede identificar el idioma hablado en un archivo de audio usando el método detect_language
.
Ejemplo: Detección de idioma
# Carga y preprocesa el audio
audio = whisper.load_audio("path/to/unknown_language_audio.mp3")
audio = whisper.pad_or_trim(audio)
# Convierte a espectrograma log-Mel
mel = whisper.log_mel_spectrogram(audio).to(model.device)
# Detecta el idioma
_, probs = model.detect_language(mel)
language = max(probs, key=probs.get)
print(f"Idioma detectado: {language}")
whisper.load_audio()
: Carga el archivo de audio.whisper.pad_or_trim()
: Ajusta la duración del audio para cumplir con los requisitos del modelo.whisper.log_mel_spectrogram()
: Convierte el audio al formato esperado por el modelo.model.detect_language()
: Devuelve probabilidades para cada idioma, identificando el más probable.Para mayor control sobre el proceso de transcripción, puedes utilizar funciones de bajo nivel y personalizar las opciones de decodificación.
decode
La función decode
permite especificar opciones como idioma, tarea y si incluir marcas de tiempo.
Ejemplo: Opciones de decodificación personalizadas
# Configura opciones de decodificación
options = whisper.DecodingOptions(language="de", without_timestamps=True)
# Decodifica el audio
result = whisper.decode(model, mel, options)
# Imprime el texto reconocido
print(result.text)
Puedes integrar Whisper para transcribir audio en vivo desde un micrófono.
Ejemplo: Transcribir entrada de micrófono en vivo
import whisper
import sounddevice as sd
# Carga el modelo
model = whisper.load_model("base")
# Graba audio desde el micrófono
duration = 5 # segundos
fs = 16000 # Frecuencia de muestreo
print("Grabando...")
audio = sd.rec(int(duration * fs), samplerate=fs, channels=1, dtype='float32')
sd.wait
OpenAI Whisper es un avanzado sistema de reconocimiento automático de voz (ASR) desarrollado por OpenAI, diseñado para transcribir el lenguaje hablado a texto escrito usando aprendizaje profundo. Admite 99 idiomas y destaca en transcripción, traducción e identificación de idioma.
Whisper utiliza una arquitectura de codificador-decodificador basada en transformadores, procesa el audio en espectrogramas log-Mel y genera texto mediante un modelo de lenguaje. Fue entrenado con 680,000 horas de datos multilingües y multitarea para alta precisión y robustez.
Whisper admite reconocimiento de voz multilingüe, traducción de voz, identificación automática de idioma, robustez ante acentos y ruido, y proporciona acceso de código abierto para personalización e integración.
Los requisitos de hardware dependen del tamaño del modelo: los modelos pequeños como 'tiny' requieren ~1GB de VRAM, mientras que el más grande requiere ~10GB. Whisper es más rápido en GPUs pero puede funcionar en CPUs con tiempos de procesamiento mayores.
Sí, Whisper está implementado como una biblioteca de Python y puede instalarse vía pip. Permite fácil integración en proyectos Python para transcripción de voz, traducción y aplicaciones de voz en tiempo real.
Los casos de uso comunes incluyen transcripción automática de reuniones, chatbots activados por voz, traducción en vivo, herramientas de accesibilidad (subtítulos y tecnología asistiva), automatización de centros de llamadas y sistemas de automatización controlados por voz.
Sí, las alternativas incluyen motores de código abierto como Mozilla DeepSpeech, Kaldi, Wav2vec y APIs comerciales como Google Cloud Speech-to-Text, Microsoft Azure AI Speech y AWS Transcribe.
Sí, OpenAI Whisper es de código abierto, lo que permite a los desarrolladores personalizarlo, ajustarlo e integrarlo en sus propios productos y servicios sin restricciones de licencia.
Integra capacidades avanzadas de voz a texto en tus aplicaciones, automatiza flujos de trabajo y mejora la experiencia de usuario con OpenAI Whisper y FlowHunt.
FlowHunt es compatible con docenas de modelos de generación de texto, incluidos los modelos de OpenAI. Aquí te mostramos cómo usar ChatGPT en tus herramientas d...
Explora cómo las capacidades avanzadas de razonamiento y el aprendizaje por refuerzo de OpenAI O1 superan a GPT4o en precisión de RAG, con análisis de benchmark...
Explora las capacidades avanzadas de Llama 3.3 70B Versatile 128k como Agente de IA. Esta revisión en profundidad examina sus habilidades de razonamiento, resol...