Fun-ASR vs Fun-ASR Flash
Quale scegliere e quando
Stessi $0.0021 al minuto di audio, quindi scegli in base alla forma e non al prezzo: fun-asr è il modello asincrono su file - fino a 12 ore e 2GB, con diarizzazione, hotword e timestamp di frase e parola - mentre fun-asr-flash risponde in modo sincrono, con un tetto di 5 minuti e 2GB, con streaming e iniezione di termini di dominio nel contesto ma senza diarizzazione né timestamp. L'elenco di 30 lingue è lo stesso. Scegli fun-asr per le registrazioni, fun-asr-flash per clip brevi con risposta nella richiesta.
Prezzi
| Fun-ASR | Fun-ASR Flash | Δ | |
|---|---|---|---|
| Al minuto di audio | $0.0021 | $0.0021 | = |
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à
| Fun-ASR | Fun-ASR Flash | |
|---|---|---|
| Diarizzazione dei parlanti | sì | no |
| Streaming | no | sì |
| Timestamp | sì | - |
Specifiche
| Fun-ASR | Fun-ASR Flash | |
|---|---|---|
| Modalità di input | audio | audio |
| Modalità di output | testo | testo |
| Rilascio | 2025-08-22 | 2026-06 |
| Limiti | Async file transcription up to 12h / 2GB hotwords + speaker diarization sentence/word timestamps 30+ languages incl. Chinese dialects | Synchronous fast recognition, <=5 min / <=2GB per audio context injection for domain terms 30+ languages no diarization |
| Lingue | Multilingual with dialects, 30 languages: Chinese (Mandarin, Cantonese, Wu, Hokkien, Hakka, Gan, Xiang, Jin plus regional accents), English, Japanese, Korean, Vietnamese, Thai, Indonesian, Malay, Filipino, Hindi, Arabic, French, German, Spanish, Portuguese, Russian, Italian, Dutch, Swedish, Danish, Finnish, Norwegian, Greek, Polish, Czech, Hungarian, Romanian, Bulgarian, Croatian, Slovak | Multilingual with dialects, the same 30-language list as the Fun-ASR main versions: Chinese (Mandarin, Cantonese, Wu, Hokkien, Hakka, Gan, Xiang, Jin plus regional accents), English, Japanese, Korean, Vietnamese, Thai, Indonesian, Malay, Filipino, Hindi, Arabic, French, German, Spanish, Portuguese, Russian, Italian, Dutch, Swedish, Danish, Finnish, Norwegian, Greek, Polish, Czech, Hungarian, Romanian, Bulgarian, Croatian, Slovak |
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: Fun-ASR · Fun-ASR Flash
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="fun-asr",
# model="fun-asr-flash", # 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: "fun-asr",
// model: "fun-asr-flash", // 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="fun-asr" \
# -F model="fun-asr-flash" \ # 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: "fun-asr",
// Model: "fun-asr-flash", // 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("fun-asr")
// .model("fun-asr-flash") // decommenta questa riga, commenta quella sopra
.file(Paths.get("meeting.mp3"))
.build()).asTranscription();
System.out.println(resp.text());FAQ
Qual è il più economico, Fun-ASR o Fun-ASR Flash?
Alla voce Al minuto di audio hanno lo stesso prezzo ($0.0021), quindi qui non è il prezzo a decidere: guarda le specifiche e le funzionalità qui sotto.
Posso fare un A/B test di Fun-ASR contro Fun-ASR Flash 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.
Fun-ASR e Fun-ASR Flash 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.