Chirp 2 vs Chirp 3
Quale scegliere e quando
Stessi $0.016 al minuto di audio, quindi il più recente chirp-3 è la scelta predefinita: aggiunge la diarizzazione in Recognize e BatchRecognize su 14 lingue e pubblica 29 locale GA più 82 in anteprima, dove chirp-2 non diarizza e limita StreamingRecognize a 16 locale. Il compromesso riguarda i timestamp e la durata - chirp-2 offre timestamp a livello di parola e lotti da 1 minuto a 8 ore, mentre chirp-3 indica i timestamp per parola come non supportati e ferma i lotti a 1 ora. Scegli chirp-2 se ti servono i tempi per parola o file molto lunghi.
Prezzi
Tariffe lette dal catalogo live al momento della build; il listino aggiornato è sulla pagina di ciascun modello.
Dove si collocano: prezzo al minuto di audio tra tutti i modelli di speech-to-text con questa unità di fatturazione (12, scala logaritmica)
Funzionalità
Specifiche
| Chirp 2 | Chirp 3 | |
|---|---|---|
| Modalità di input | audio | audio |
| Modalità di output | testo | testo |
| Rilascio | - | 2025-10-13 |
| Limiti | Auto-detected audio decoding sync Recognize <1 min, BatchRecognize 1 min - 8 hrs, StreamingRecognize for real-time optional word-level timestamps language-agnostic transcription (the model infers the prevalent spoken language and transcribes in it) no standalone language detection no speaker diarization speech translation supported | Auto-detected audio decoding sync Recognize <1 min, BatchRecognize 1 min - 1 hr (<=20 min with word timestamps), StreamingRecognize for real-time speaker diarization in BatchRecognize and Recognize (14 languages) utterance-level timestamps (StreamingRecognize only), word-level timestamps listed as unsupported language-agnostic transcription 29 GA + 82 preview locales |
| Lingue | Varies by method: BatchRecognize offers the most extensive coverage and Recognize is "on par with Chirp" StreamingRecognize is limited to 16 locales (Chinese Simplified/Traditional, Cantonese, English AU/IN/GB/US, French CA/FR, German, Italian, Japanese, Korean, Portuguese (Brazil), Spanish ES/US) | 29 GA + 82 Preview locales (111 total) across StreamingRecognize, Recognize and BatchRecognize diarization covers 14 of them |
Le specifiche sono riprese dalla documentazione di ciascun provider; se un provider non pubblica un dato, la riga viene omessa e non dedotta. Fonti complete: Chirp 2 · Chirp 3
Passa dall'uno all'altro cambiando una sola riga
In ogni scheda qui sotto ci sono entrambi gli id: le due righe evidenziate sono l'unica modifica. Stesso endpoint, stessa chiave, stessa struttura della richiesta.
from openai import OpenAI
client = OpenAI(
base_url="https://synthorai.io/v1",
api_key="sk-syn-...",
)
resp = client.audio.transcriptions.create(
model="chirp-2",
# model="chirp-3", # decommenta questa riga, commenta quella sopra
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: "chirp-2",
// model: "chirp-3", // decommenta questa riga, commenta quella sopra
file: fs.createReadStream("meeting.mp3"),
});
console.log(resp.text);curl https://synthorai.io/v1/audio/transcriptions \
-H "Authorization: Bearer sk-syn-..." \
-F model="chirp-2" \
# -F model="chirp-3" \ # decommenta questa riga, commenta quella sopra
-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: "chirp-2",
// Model: "chirp-3", // decommenta questa riga, commenta quella sopra
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("chirp-2")
// .model("chirp-3") // decommenta questa riga, commenta quella sopra
.file(Paths.get("meeting.mp3"))
.build()).asTranscription();
System.out.println(resp.text());FAQ
Qual è il più economico, Chirp 2 o Chirp 3?
Alla voce Al minuto di audio hanno lo stesso prezzo ($0.016), quindi qui non è il prezzo a decidere: guarda le specifiche e le funzionalità qui sotto.
Posso fare un A/B test di Chirp 2 contro Chirp 3 senza due integrazioni?
Sì. Si chiamano entrambi dallo stesso endpoint compatibile con OpenAI, con una sola chiave API. Per passare dall'uno all'altro basta cambiare la stringa del modello in una riga, quindi puoi mandare una parte del traffico a ciascuno e confrontare direttamente i costi.
Chirp 2 e Chirp 3 supportano la diarizzazione dei parlanti?
La risposta, modello per modello, è nella tabella delle funzionalità qui sopra, ripresa direttamente dalla documentazione di ciascun provider. Diarizzazione, streaming e timestamp sono voci separate perché i modelli si differenziano su tutte e tre.