L’Abliterated Model Router est disponible ! Essayez-le gratuitement dès aujourd’hui.

Publié le par AllModels

Une seule API pour les fournisseurs de reconnaissance vocale en temps réel

Transcrivez avec des modèles STT de plusieurs fournisseurs via AllModels. Streamez l’audio en WebSocket, utilisez un SDK compatible OpenAI ou ElevenLabs, et changez de modèle sans reconstruire votre pipeline de transcription.

AllModels est un service indépendant, sans affiliation avec les fournisseurs vers lesquels il route les modèles, ni approuvé ou sponsorisé par eux.

Qu’est-ce qu’une API de reconnaissance vocale unifiée ?

Une API de reconnaissance vocale (STT) unifiée est une intégration unique capable de transcrire de l’audio avec des modèles de nombreux fournisseurs différents. Au lieu d’écrire un client pour Deepgram, un autre pour AssemblyAI, un autre pour Soniox et un autre encore pour OpenAI, votre application s’adresse à un seul endpoint avec une seule clé API. C’est le modèle choisi qui détermine le fournisseur qui transcrit l’audio. AllModels est une API STT unifiée de ce type : vous envoyez un ID de modèle comme deepgram/nova-3, assemblyai/universal-3-5-pro-realtime ou soniox/stt-rt-v5, AllModels route l’audio vers ce fournisseur et vous renvoie la transcription.

Comment fonctionne AllModels

Chaque modèle du catalogue STT d’AllModels possède un ID provider/model. Vous vous authentifiez une seule fois avec une clé API AllModels, qui remplace les clés et comptes de facturation distincts que vous auriez sinon chez chaque fournisseur. AllModels propose ensuite trois façons d’appeler les mêmes modèles :

  • WebSocket natif sur wss://api.allmodels.io/v1/stt. Vous envoyez les trames audio brutes au fur et à mesure de leur capture et recevez des événements stt.transcript.partial et stt.transcript.final dans un format normalisé unique, quel que soit le fournisseur derrière le modèle.
  • Compatible OpenAI sur https://api.allmodels.io/oai. Pointez le SDK OpenAI officiel vers cette URL de base et continuez d’appeler audio.transcriptions.create pour les fichiers, ou son client realtime pour l’audio en direct.
  • Compatible ElevenLabs sur https://api.allmodels.io/el. Pointez le SDK ElevenLabs officiel vers cette URL de base et continuez d’appeler ses méthodes de reconnaissance vocale, transcription en temps réel comprise.

Les trois donnent accès au même catalogue. Si votre code utilise déjà le SDK OpenAI ou ElevenLabs, il suffit de changer l’URL de base et la clé API pour passer à AllModels.

Audio en direct et fichiers complets

Pour les microphones, les appels et les agents vocaux, streamez l’audio via un WebSocket et lisez les transcriptions partielles pendant que la personne parle encore. Si l’enregistrement complet existe déjà, envoyez-le en une seule requête HTTP et récupérez la transcription intégrale. Pour utiliser un autre modèle STT, changez l’ID du modèle ; votre clé API, votre endpoint et votre code client restent les mêmes.

Transcrivez de l’audio en temps réel depuis n’importe quel client

Choisissez un client, un mode et un langage. Les lignes en surbrillance sont l’URL de base AllModels et les valeurs de modèle à modifier pour essayer un autre modèle.

Client
Mode
Langage

WebSocket natif, streaming JavaScript · Node.js · ws

Connectez-vous à wss://api.allmodels.io/v1/stt, envoyez de l’audio PCM 16 kHz en trames binaires et lisez les transcriptions partielles et finales. Documentation 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

Utilisez le client que votre équipe connaît déjà

https://api.allmodels.io/oai

Compatible OpenAI

Vous utilisez déjà le SDK OpenAI ? Pointez son URL de base vers AllModels et continuez d’appeler audio.transcriptions.create ou le client realtime, désormais avec un ID de modèle AllModels.

Lire la documentation de transcription OpenAI

https://api.allmodels.io/el

Compatible ElevenLabs

Vous utilisez déjà le SDK ElevenLabs ? Pointez son URL de base vers AllModels et continuez d’utiliser ses méthodes de reconnaissance vocale convert et realtime, désormais avec un ID de modèle AllModels.

Lire la documentation de transcription ElevenLabs

Réponses rapides

L’essentiel sur les API STT en temps réel

Qu’est-ce qu’une API de reconnaissance vocale unifiée ?

Une API STT unifiée offre aux applications une seule surface d’intégration pour plusieurs modèles de transcription. Avec AllModels, l’ID du modèle choisi détermine le fournisseur, tandis que l’authentification et le déroulement des requêtes restent les mêmes.

AllModels prend-il en charge la transcription en temps réel ?

Oui. L’interface native streame en WebSocket sur /v1/stt et renvoie les transcriptions partielles et finales sous forme d’événements stt.* normalisés. Les SDK OpenAI et ElevenLabs streament via leurs propres clients realtime. La prise en charge du streaming varie selon le modèle.

Puis-je utiliser toutes les fonctionnalités d’un fournisseur ?

Oui. Les réglages courants passent par les champs standard, et tout réglage propre à un fournisseur, comme les paramètres de diarisation, se place dans provider_options et est transmis tel quel au fournisseur.

Comment comparer les fournisseurs ?

Parcourez le catalogue STT pour comparer les modèles disponibles, la prise en charge du streaming, les tarifs et les exemples d’API avant de changer l’ID du modèle dans votre application.

Une intégration en trois étapes
  1. 1
    Choisissez un modèle. Sélectionnez un modèle STT dans le catalogue en direct par son ID provider/model.
  2. 2
    Utilisez une seule clé API. Authentifiez-vous auprès d’AllModels au lieu de gérer une clé par fournisseur.
  3. 3
    Streamez ou envoyez un fichier. Streamez l’audio en WebSocket pour des transcriptions en direct, ou envoyez un fichier complet en HTTP.

Développez avec AllModels

Commencez avec une seule intégration STT.

Choisissez un modèle aujourd’hui et gardez la liberté d’en changer plus tard.