Saltar al contenido principal

Guía para principiantes de la API ElevenLabs: Transforma el texto y la voz en experiencias de audio dinámicas

Aprovecha las capacidades de la API de ElevenLabs, un potente generador de voz de IA. Aprende a transformar texto en voz y a clonar voces con esta tecnología.
Actualizado 30 jul 2024  · 9 min de lectura

En una era de innovación tecnológica, el poder de las aplicaciones basadas en la voz está transformando nuestra forma de interactuar con el mundo. Desde mejorar la accesibilidad de las personas con discapacidad visual hasta crear experiencias de usuario más dinámicas y atractivas, la versatilidad de la tecnología de voz es amplia e impactante.

ElevenLabs, un generador de voz de IA líder, ofrece capacidades punteras en la síntesis de texto a voz y de voz a voz.

En esta guía, exploraremos estas funciones y demostraremos cómo puedes aprovechar su potencial para transformar texto escrito y grabaciones de voz en voz real.

Tanto si eres un desarrollador que quiere integrar funciones de voz en sus aplicaciones, como si eres un creador de contenidos que quiere producir locuciones multilingües o una empresa que quiere mejorar las interacciones con los clientes mediante sistemas automatizados, este artículo te proporcionará los conocimientos esenciales para empezar.

¿Qué son los motores de texto a voz?

Un motor de texto a voz (TTS) es una tecnología sofisticada que recibe texto escrito como entrada y lo transforma en audio hablado. Esto permite a los usuarios oír el texto en lugar de leerlo, haciendo que el contenido digital sea más accesible e interactivo. Si te interesa explorar más a fondo los motores TTS, puedes encontrar información detallada en esta guía sobre los mejores motores de texto a voz.

¿Qué es ElevenLabs?

ElevenLabs es una de las principales plataformas que ofrecen síntesis de texto a voz (TTS) y de voz a voz (STS). Esta tecnología aprovecha modelos avanzados de aprendizaje automático para generar audio realista y natural a partir de texto escrito o incluso de una voz a otra.

Su capacidad para ofrecer audio de alta calidad lo convierte en la opción preferida de desarrolladores, creadores de contenidos y empresas que pretenden mejorar la participación del usuario mediante experiencias de audio dinámicas.

En este tutorial, nos centraremos en cómo utilizar la API de ElevenLabs en Python. Lo cubriremos todo, desde la obtención de tus claves API, la configuración de tu entorno de desarrollo, la inicialización de la biblioteca y el uso de sus funciones para producir voz. Para hacerte una idea de lo que puedes conseguir, escucha este clip de audio que se generó utilizando su funcionalidad. Vamos a aprender a crear algo parecido, paso a paso.

Tanto si quieres integrar voz en off en contenidos multimedia como desarrollar aplicaciones accesibles para usuarios con discapacidad visual, ElevenLabs te proporciona las herramientas necesarias para dar vida a tu audio. Al final de esta guía, conocerás a fondo cómo utilizar su API para transformar texto en voz con una claridad y un realismo inigualables.

Texto a voz utilizando la API de ElevenLabs en Python

1. Crear una clave API

El primer paso es registrarte para obtener una cuenta ElevenLabs gratuita. Una vez que hayamos iniciado sesión, podemos hacer clic en el icono de perfil y seleccionar la opción "Perfil + clave API". Aquí, nuestra clave API ya estará generada para nosotros. Debemos asegurarnos de guardar esta clave, ya que la necesitaremos para autenticar nuestras peticiones.

2. Instala e importa el paquete Python de ElevenLabs

Para interactuar con la API de ElevenLabs utilizando Python, necesitamos instalar su paquete oficial. Podemos hacerlo utilizando pip, el instalador de paquetes de Python:

$ pip install elevenlabs

Ahora podemos importar los componentes necesarios del paquete a un nuevo archivo Python.

from elevenlabs.client import ElevenLabs
from elevenlabs import play, save, stream, Voice, VoiceSettings

3. Generar audio

Una vez configurado nuestro entorno, podemos generar nuestro primer clip de audio creando una instancia del cliente ElevenLabs utilizando nuestra clave API.

client = ElevenLabs(api_key="YOUR_API_KEY")

A continuación, utilizamos el método .generate para convertir el texto en audio.

audio = client.generate(
   text="Welcome to Datacamp's beginner's guide to the ElevenLabs API",
   voice="Brian"
)

Podemos reproducir inmediatamente el audio generado:

play(audio)

O guárdalo como archivo:

save(audio, "output.mp3")

4. Personalizar las voces

ElevenLabs proporciona numerosas opciones de personalización para adaptar la voz a tus preferencias. Podemos ajustar parámetros como la estabilidad, el aumento de la similitud y el estilo. Por ejemplo:

audio = client.generate(
   text="Welcome to Datacamp's beginner's guide to the ElevenLabs API.",
   voice=Voice(
       voice_id='nPczCjzI2devNBz1zQrb',
       settings=VoiceSettings(
           stability=0.8, similarity_boost=0.6, style=0.2, use_speaker_boost=True)
   )
)

La dirección voice_id corresponde a voces específicas prefabricadas por ElevenLabs; en la página de voces de ElevenLabs encontrarás una lista completa, junto con detalles como caso de uso, acento y descripciones.

5. Generación de voz multilingüe

ElevenLabs ofrece dos modelos principales: eleven_multilingual_v2, capaz de generar habla en 29 idiomas, y: eleven_monolingual_v1, que está optimizado específicamente para el habla inglesa. He aquí cómo podemos utilizar el modelo multilingüe para producir audio en varias lenguas simultáneamente:

audio = client.generate(
   text="Hello! Hola! Hallo 你好! नमस्ते! Bonjour! こんにちは! مرحبا! 안녕하세요! Ciao!",
   voice="Arnold",
   model="eleven_multilingual_v2"
)

Generación de voz en streaming

Mientras que el método .generate del que hablamos procesa y devuelve toda la salida de voz una vez que se ha convertido todo el texto, la API de ElevenLabs también ofrece una potente función de streaming. Esto es especialmente útil para aplicaciones que requieren la generación de audio en tiempo real, ya que permite reproducir el audio casi inmediatamente mientras se sigue procesando el resto del texto.

NOTA: Para el streaming de audio, necesitamos tener instalado el mpv media player, en mac, puedes instalarlo con el comando brew install mpv. Para Linux y Windows, puedes instalarlo desde la página principal de mpv.

Cómo funciona el streaming

Para utilizar la función de streaming, tenemos que establecer el parámetro stream en True en el método .generate. Esto indica a la API que empiece a entregar el audio en trozos tan pronto como estén listos:

audio_stream = client.generate(
   text="Welcome... I am speaking to you in real-time. Let’s get started!.",
   stream=True
)
stream(audio_stream)

Streaming con introducción dinámica de texto

La vaporización no se limita al texto estático. También puede gestionar entradas dinámicas, en las que los trozos de texto se introducen en la API a medida que están disponibles. Esto es especialmente útil para aplicaciones interactivas, como la retransmisión en directo o la creación de diálogos interactivos basados en IA. Así es como podemos transmitir texto dinámico:

def text_stream():
   yield "Hi! I'm Brian "
   yield "I'm an artificial voice made by ElevenLabs "


audio_stream = client.generate(
   text=text_stream(),
   voice="Brian",
   model="eleven_monolingual_v1",
   stream=True
)


stream(audio_stream)

En esta configuración text_stream() actúa como una función generadora que proporciona fragmentos de texto a la API. Cada fragmento se procesa inmediatamente, lo que ayuda a mantener un flujo natural del discurso sin pausas ni retrasos incómodos. Esta función refleja las capacidades conversacionales demostradas por los asistentes de voz avanzados y los dispositivos de traducción en tiempo real.

Generación de voz a voz

Otra potente función de la plataforma ElevenLabs es la síntesis STS, que es esencialmente clonación de voz.

El flujo de trabajo es similar al que hemos comentado hasta ahora para el TTS, siendo la principal diferencia el tipo de entrada. En lugar de texto, proporcionamos archivos de audio de la voz que queremos clonar.

Para una clonación de voz instantánea, ElevenLabs sugiere utilizar 60 segundos de contenido con datos libres de ruido de fondo y efectos, para una clonación de voz profesional se recomienda un mínimo de 30 minutos de audio limpio.

Añadir una descripción no es necesario, pero puede ser útil para organizar y distinguir entre varios proyectos o modelos de voz.

He aquí un ejemplo de cómo podemos clonar una voz.

voice = client.clone(
   name="Emily",
   description="A young British female voice with a clear, melodic tone, ideal for storytelling or educational content", 
   files=["./sample_1.mp3", "./sample_2.mp3", "./sample_3.mp3"],
)

Aplicaciones de la API ElevenLabs en Python

La API de ElevenLabs ofrece una serie de potentes funciones de síntesis de voz que pueden transformar la forma en que las organizaciones y las personas interactúan con su público. Al convertir el texto en voz o clonar voces mediante la conversión de voz a voz, esta tecnología proporciona soluciones innovadoras para diversos campos.

He aquí tres aplicaciones clave que demuestran el potencial de esta herramienta:

Sistemas interactivos de respuesta vocal (IVR)

  • Soporte multilingüe: Las organizaciones que operan en mercados multilingües pueden utilizar el sistema para ofrecer atención al cliente en varios idiomas sin necesidad de personal multilingüe.
  • Atención al cliente: Las empresas pueden implementar la API en sus operaciones de atención al cliente para proporcionar interacciones más parecidas a las humanas en los sistemas telefónicos automatizados, mejorando la experiencia del cliente con respuestas de voz personalizadas.

Elementos de accesibilidad en los contenidos digitales

  • Herramientas de lectura mejoradas: La API puede utilizarse para crear audiolibros a partir de material escrito, haciendo que la literatura sea más accesible para las personas con deficiencias visuales o discapacidades lectoras.
  • Navegación por voz: La integración en sitios web y aplicaciones para la navegación guiada por voz puede ayudar a los usuarios que necesitan asistencia auditiva, mejorando la usabilidad de las plataformas digitales.

Creación de contenidos

  • Locuciones automatizadas para vídeos: Los productores de contenidos digitales, como los creadores de YouTube y los cineastas, pueden aprovechar la tecnología para generar voces en off que suenen naturales en varios idiomas, reduciendo significativamente los costes y el tiempo de producción.
  • Tutoría educativa y módulos de teleformación: Con el TTS y el STS, podemos vocalizar los contenidos educativos, haciendo que el aprendizaje sea más interactivo y accesible, especialmente en entornos de aprendizaje remotos.

Conclusión

La API de ElevenLabs es una herramienta robusta y versátil para cualquiera que desee incorporar la síntesis de voz avanzada a sus aplicaciones.

Ya sea para la accesibilidad, la creación de contenidos o la mejora de las interacciones con los clientes, esta API proporciona una serie de soluciones para satisfacer diversas necesidades.

Con la opción de síntesis de texto a voz y de voz a voz, facilita la creación de experiencias de usuario más inclusivas y atractivas.

Si te entusiasman las posibilidades de la tecnología del habla y quieres profundizar en tus conocimientos, considera la posibilidad de realizar el curso de Procesamiento del Lenguaje Hablado en Python en DataCamp. Este completo curso abarca desde los fundamentos del preprocesamiento y la manipulación del audio hasta la conversión de voz a texto y el análisis de los datos transcritos. Al matricularte, adquirirás experiencia práctica con aplicaciones del mundo real, lo que te dotará de las habilidades necesarias para construir sofisticados sistemas de voz y crear soluciones innovadoras en este dinámico campo.

Preguntas frecuentes

¿Existe algún coste de uso asociado a la API de ElevenLabs?

ElevenLabs ofrece diferentes niveles de precios, incluido un nivel gratuito para uso básico, que es ideal para experimentar y para pequeños proyectos. Para un uso extensivo, sobre todo en aplicaciones comerciales, existen planes de pago que proporcionan límites de uso más elevados y funciones adicionales.

¿Cuáles son las limitaciones de la API ElevenLabs?

Las principales limitaciones son la dependencia de la calidad de los datos de entrada (texto o audio), la conectividad a Internet para las llamadas a la API y los matices del habla sintetizada, que puede no captar perfectamente las inflexiones emocionales del habla humana.

¿Puede la API de ElevenLabs manejar diferentes acentos y dialectos?

Sí, la API de ElevenLabs admite diversos acentos y dialectos dentro de sus funciones TTS y STS, lo que la hace versátil para aplicaciones globales.

¿Puedo utilizar la API de ElevenLabs con fines comerciales?

Sí, la API de ElevenLabs está diseñada tanto para uso personal como comercial. Puede integrarse en productos y servicios siempre que cumplas las condiciones del servicio y los acuerdos de licencia pertinentes.

¿Cómo puedo solucionar problemas con la API de ElevenLabs?

ElevenLabs proporciona documentación y asistencia completas. Para solucionar problemas, consulta su documentación oficial y las FAQ sobre problemas comunes. Si necesitas más ayuda, puedes ponerte en contacto con su equipo de asistencia a través de su sitio web.

Temas

¡Obtén más información sobre cómo aprovechar las API hoy mismo!

Certificación disponible

curso

Trabajar con la API de OpenAI

3 hr
17.6K
Comienza tu viaje desarrollando aplicaciones potenciadas por IA con la API OpenAI. Infórmate sobre la funcionalidad que sustenta aplicaciones populares de IA como ChatGPT.
Ver detallesRight Arrow
Comienza El Curso
Ver másRight Arrow
Relacionado
An AI juggles tasks

blog

Cinco proyectos que puedes crear con modelos de IA generativa (con ejemplos)

Aprende a utilizar modelos de IA generativa para crear un editor de imágenes, un chatbot similar a ChatGPT con pocos recursos y una aplicación clasificadora de aprobación de préstamos y a automatizar interacciones PDF y un asistente de voz con GPT.
Abid Ali Awan's photo

Abid Ali Awan

10 min

tutorial

Convertir voz en texto con la API Whisper de OpenAI

Descubra las potentes funciones de la API Python de OpenAI Whisper para transcripción y traducción. Dispone de soporte multilingüe y mejora rápida para una transcripción precisa.
Abid Ali Awan's photo

Abid Ali Awan

9 min

tutorial

Cómo utilizar la API de conversión de texto a voz de OpenAI

La API TTS de OpenAI es un punto final que permite a los usuarios interactuar con su modelo de inteligencia artificial TTS, que convierte el texto en lenguaje hablado con sonido natural.
Kurtis Pykes 's photo

Kurtis Pykes

12 min

tutorial

Tutorial de Generación de nubes de palabras en Python

Aprende a realizar Análisis exploratorios de datos para el Procesamiento del lenguaje natural utilizando WordCloud en Python.
Duong Vu's photo

Duong Vu

21 min

tutorial

Introducción a la incrustación de texto con la API OpenAI

Explore nuestra guía sobre el uso de la API OpenAI para crear incrustaciones de texto. Descubra sus aplicaciones en la clasificación de textos, la recuperación de información y la detección de similitudes semánticas.
Zoumana Keita 's photo

Zoumana Keita

7 min

tutorial

Guía para principiantes sobre el uso de la API ChatGPT

Esta guía te acompanya a través de los fundamentos de la API ChatGPT, demostrando su potencial en el procesamiento del lenguaje natural y la comunicación impulsada por la IA.
Moez Ali's photo

Moez Ali

11 min

See MoreSee More