¡El Abliterated Model Router ya está disponible! Pruébalo hoy gratis.

Publicado el por AllModels

Una API para proveedores de voz a texto en tiempo real

Transcribe con modelos STT de varios proveedores a través de AllModels. Transmite audio por WebSocket, usa un SDK compatible con OpenAI o ElevenLabs y cambia de modelo sin reconstruir tu pipeline de transcripción.

AllModels es un servicio independiente y no está afiliado, respaldado ni patrocinado por los proveedores a cuyos modelos enruta.

Qué es una API de voz a texto unificada

Una API unificada de voz a texto (STT) es una sola integración capaz de transcribir audio con modelos de muchos proveedores distintos. En lugar de escribir un cliente para Deepgram, otro para AssemblyAI, otro para Soniox y otro para OpenAI, tu aplicación habla con un único endpoint usando una sola clave API. El modelo que eliges decide qué proveedor transcribe el audio. AllModels es una API de STT unificada de este tipo: envías un ID de modelo como deepgram/nova-3, assemblyai/universal-3-5-pro-realtime o soniox/stt-rt-v5, y AllModels enruta el audio a ese proveedor y te devuelve la transcripción.

Cómo funciona AllModels

Cada modelo del catálogo de STT de AllModels tiene un ID provider/model. Te autenticas una sola vez con una clave API de AllModels, que sustituye las claves y cuentas de facturación separadas que de otro modo tendrías con cada proveedor. AllModels ofrece tres formas de llamar a los mismos modelos:

  • WebSocket nativo en wss://api.allmodels.io/v1/stt. Envías frames de audio sin procesar a medida que se capturan y recibes eventos stt.transcript.partial y stt.transcript.final en un único formato normalizado, sea cual sea el proveedor detrás del modelo.
  • Compatible con OpenAI en https://api.allmodels.io/oai. Apunta el OpenAI SDK oficial a esta URL base y sigue llamando a audio.transcriptions.create para archivos, o a su cliente realtime para audio en vivo.
  • Compatible con ElevenLabs en https://api.allmodels.io/el. Apunta el ElevenLabs SDK oficial a esta URL base y sigue llamando a sus métodos de voz a texto, incluida la transcripción en tiempo real.

Las tres acceden al mismo catálogo. Si tu código ya usa el OpenAI SDK o el ElevenLabs SDK, puedes pasarte a AllModels cambiando la URL base y la clave API.

Audio en vivo y archivos completos

Para micrófonos, llamadas y agentes de voz, transmite el audio por WebSocket y lee transcripciones parciales mientras la persona sigue hablando. Cuando ya tienes la grabación completa, súbela en una sola solicitud HTTP y recibe la transcripción entera. Para usar otro modelo STT, cambia el ID del modelo; tu clave API, tu endpoint y el código de tu cliente no cambian.

Transcribe audio en tiempo real desde cualquier cliente

Elige un cliente, un modo y un lenguaje. Las líneas resaltadas son la URL base de AllModels y los valores de modelo que cambias para probar otro modelo.

Cliente
Modo
Lenguaje

WebSocket nativo, streaming JavaScript · Node.js · ws

Conéctate a wss://api.allmodels.io/v1/stt, envía audio PCM a 16 kHz como frames binarios y lee las transcripciones parciales y finales. Docs de STT.

import { readFile } from "node:fs/promises";
import WebSocket from "ws";

const url = new URL("wss://api.allmodels.io/v1/stt");
url.searchParams.set("model", "deepgram/nova-3");
url.searchParams.set("audio_format", "pcm_16000");
url.searchParams.set("language", "en");
url.searchParams.set("commit_strategy", "manual");

const ws = new WebSocket(url, {
  headers: { Authorization: `Bearer ${process.env.ALLMODELS_API_KEY}` }
});

ws.on("message", (data) => {
  const event = JSON.parse(data.toString());
  if (event.type === "stt.transcript.partial") console.log("partial:", event.text);
  if (event.type === "stt.transcript.final") {
    console.log("final:", event.text);
    ws.send(JSON.stringify({ type: "stt.session.close" }));
  }
});

ws.on("open", async () => {
  const audio = await readFile("speech-16khz.pcm");
  for (let offset = 0; offset < audio.length; offset += 3200) {
    ws.send(audio.subarray(offset, offset + 3200));
  }
  ws.send(JSON.stringify({ type: "stt.audio.commit" }));
});

Interfaces compatibles

Usa el cliente que tu equipo ya conoce

https://api.allmodels.io/oai

Compatible con OpenAI

¿Ya usas el OpenAI SDK? Configura su URL base para AllModels y sigue llamando a audio.transcriptions.create o al cliente realtime, ahora con un ID de modelo de AllModels.

Lee la documentación de transcripción de OpenAI

https://api.allmodels.io/el

Compatible con ElevenLabs

¿Ya usas el ElevenLabs SDK? Configura su URL base para AllModels y sigue usando sus métodos de voz a texto convert y realtime, ahora con un ID de modelo de AllModels.

Lee la documentación de transcripción de ElevenLabs

Respuestas rápidas

Conceptos básicos de una API de STT en tiempo real

¿Qué es una API de voz a texto unificada?

Una API de STT unificada ofrece a las aplicaciones una sola superficie de integración para varios modelos de transcripción. Con AllModels, el ID de modelo elegido determina el proveedor, mientras que la autenticación y el flujo principal de las solicitudes no cambian.

¿AllModels admite transcripción en tiempo real?

Sí. La interfaz nativa transmite por WebSocket en /v1/stt y devuelve transcripciones parciales y finales como eventos stt.* normalizados. Los SDKs de OpenAI y ElevenLabs transmiten a través de sus propios clientes realtime. La compatibilidad con streaming varía según el modelo.

¿Puedo usar todas las funciones de cada proveedor?

Sí. Los ajustes comunes usan los campos estándar, y cualquier ajuste específico de un proveedor, como la configuración de diarización, va en provider_options y se pasa directamente al proveedor.

¿Cómo comparo proveedores?

Explora el catálogo de STT para comparar los modelos disponibles, la compatibilidad con streaming, los precios y los ejemplos de API antes de cambiar el ID de modelo en tu aplicación.

Una integración en tres pasos
  1. 1
    Elige un modelo. Elige un modelo STT del catálogo en vivo por su ID provider/model.
  2. 2
    Usa una sola clave API. Autentícate con AllModels en lugar de usar una clave distinta para cada proveedor.
  3. 3
    Transmite o sube. Transmite audio por WebSocket para obtener transcripciones en vivo, o sube un archivo completo por HTTP.

Construye con AllModels

Empieza con una sola integración de STT.

Elige un modelo ahora y conserva la libertad de cambiarlo después.