GPT-4o Transcribe vs Whisper v1
Lequel, quand — verdict de synthèse, pas un tableau de benchmarks
Ces deux-là facturent dans des unités différentes — whisper-1 à $0.006 par minute d'audio, gpt-4o-transcribe à $6 par million de tokens audio en entrée plus $2.5 et $10 par million de tokens texte — donc aucune conversion unique entre eux n'est honnête. whisper-1 est celui qui offre les horodatages au mot et au segment, la sortie srt/vtt et le point de terminaison de traduction, mais il ne diffuse pas ; gpt-4o-transcribe diffuse, y compris en sessions de transcription temps réel, et ne renvoie que du json ou du texte. Prenez whisper-1 pour les sous-titres et la traduction, gpt-4o-transcribe pour du direct.
Tarification
| GPT-4o Transcribe | Whisper v1 | Δ | |
|---|---|---|---|
| Par minute d'audio | — | $0.006 | — |
| Entrée audio / 1M tokens | $6 | — | — |
| Sortie texte / 1M tokens | $10 | — | — |
Ces deux modèles facturent dans des unités différentes, donc aucun Δ n'est affiché — leur conversion nécessiterait une hypothèse que nous n'avons pas mesurée. Chaque fiche est répertoriée dans sa propre unité ci-dessus.
Capacités
| GPT-4o Transcribe | Whisper v1 | |
|---|---|---|
| Diarisation des locuteurs | non | non |
| Streaming | oui | non |
| Horodatages | non | oui |
Spécifications
| GPT-4o Transcribe | Whisper v1 | |
|---|---|---|
| Modalités d'entrée | texte audio | audio |
| Modalités de sortie | texte | texte |
| Sortie | 2025-03-20 | 2023-03-01 |
| Limite de connaissances | 2024-06 | — |
| Limites | mp3/mp4/mpeg/mpga/m4a/wav/webm, up to 25MB streaming transcription supported (incl. Realtime transcription sessions) json/text output only no word timestamps or diarization | mp3/mp4/mpeg/mpga/m4a/wav/webm, up to 25MB word- and segment-level timestamps (verbose_json), srt/vtt output no streaming only model supported on the translations endpoint (to English) |
| Langues | 57 languages listed for the transcriptions endpoint (one shared list for all transcription models) ISO 639-1 / 639-3 codes accepted for GPT-4o-based models | Trained on 98 languages 57 listed as supported, the languages that met OpenAI's under-50% word-error-rate threshold across the transcriptions and translations endpoints |
| Sortie maximale | 2K | — |
Les spécifications sont transcrites à partir de la documentation de chaque fournisseur ; une ligne qu'un fournisseur ne publie pas est omise plutôt que déduite. Sources complètes : GPT-4o Transcribe · Whisper v1
Basculez de l'un à l'autre avec une seule ligne
Les deux ids sont dans chaque onglet ci-dessous — la paire de lignes en surbrillance est la seule modification. Même endpoint, même clé, même structure de requête.
from openai import OpenAI
client = OpenAI(
base_url="https://synthorai.io/v1",
api_key="sk-syn-...",
)
resp = client.audio.transcriptions.create(
model="gpt-4o-transcribe",
# model="whisper-1", # décommentez cette ligne, commentez celle du dessus
file=open("meeting.mp3", "rb"),
language="en",
)
print(resp.text)import OpenAI from "openai";
import fs from "node:fs";
const client = new OpenAI({
baseURL: "https://synthorai.io/v1",
apiKey: "sk-syn-...",
});
const resp = await client.audio.transcriptions.create({
model: "gpt-4o-transcribe",
// model: "whisper-1", // décommentez cette ligne, commentez celle du dessus
file: fs.createReadStream("meeting.mp3"),
});
console.log(resp.text);curl https://synthorai.io/v1/audio/transcriptions \
-H "Authorization: Bearer sk-syn-..." \
-F model="gpt-4o-transcribe" \
# -F model="whisper-1" \ # décommentez cette ligne, commentez celle du dessus
-F file=@meeting.mp3package main
import (
"context"
"fmt"
"os"
"github.com/openai/openai-go/v3"
"github.com/openai/openai-go/v3/option"
)
func main() {
client := openai.NewClient(
option.WithBaseURL("https://synthorai.io/v1"),
option.WithAPIKey("sk-syn-..."),
)
f, _ := os.Open("meeting.mp3")
resp, _ := client.Audio.Transcriptions.New(context.TODO(), openai.AudioTranscriptionNewParams{
Model: "gpt-4o-transcribe",
// Model: "whisper-1", // décommentez cette ligne, commentez celle du dessus
File: f,
})
fmt.Println(resp.Text)
}import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.audio.transcriptions.*;
import java.nio.file.Paths;
OpenAIClient client = OpenAIOkHttpClient.builder()
.baseUrl("https://synthorai.io/v1")
.apiKey("sk-syn-...")
.build();
Transcription resp = client.audio().transcriptions().create(
TranscriptionCreateParams.builder()
.model("gpt-4o-transcribe")
// .model("whisper-1") // décommentez cette ligne, commentez celle du dessus
.file(Paths.get("meeting.mp3"))
.build()).asTranscription();
System.out.println(resp.text());FAQ
Lequel est le moins cher, GPT-4o Transcribe ou Whisper v1 ?
Ils facturent dans des unités différentes, il n'y a donc pas de chiffre unique honnête : GPT-4o Transcribe et Whisper v1 apparaissent chacun dans leur propre unité dans le tableau ci-dessus. Comparez-les sur votre propre charge de travail — le compromis pratique est décrit dans le verdict en haut de cette page.
Puis-je faire un test A/B de GPT-4o Transcribe par rapport à Whisper v1 sans deux intégrations ?
Oui. Les deux sont servis via le même endpoint compatible OpenAI avec une seule clé API — le basculement est un changement de chaîne de modèle en une ligne, vous pouvez donc diriger une fraction du trafic vers chacun et comparer les factures directement.
GPT-4o Transcribe et Whisper v1 prennent-ils en charge la diarisation des locuteurs ?
Le tableau des capacités ci-dessus y répond par modèle, directement à partir de la documentation de chaque fournisseur — la diarisation, le streaming et les horodatages sont listés séparément car les modèles diffèrent sur ces trois points.