Speech-to-text per lo svizzero tedesco
In entrata svizzero tedesco, in uscita testo pulito in tedesco standard, con i tempi di ogni parola e il grado di confidenza. Audio in streaming dal vivo per i voicebot, oppure registrazioni di qualsiasi durata come job batch.
Tempo reale CHF 2.20 all'ora, batch CHF 1.35 all'ora. Fatturazione al secondo.
Tempo reale via WebSocket
Trascrizioni parziali ogni 250 ms mentre chi chiama parla, e il testo finale circa 0.1 s dopo che ha smesso di parlare.
File batch e registrazioni lunghe
Fino a 25 MB in una singola richiesta, fino a 200 MB come job. Le registrazioni lunghe vengono trascritte in circa un terzo della loro durata.
Rilevamento della lingua
Indichi fino a otto lingue candidate, oppure «auto» per tedesco, francese, italiano e inglese. Ogni risultato riporta la lingua parlata.
Il Suo vocabolario
Fino a 200 nomi, prodotti e toponimi per richiesta, affinché i Suoi termini risultino corretti fin dal primo tentativo.
Tempi delle parole e confidenza
Ogni parola con inizio, fine e grado di confidenza, pronta per sottotitoli, ricerca e controlli di qualità.
Audio telefonico
Funziona sia con l'audio delle chiamate in banda stretta a 8 kHz sia con le registrazioni da studio. Sono accettati tutti i contenitori audio più comuni.
Trascrivere un file
curl -X POST https://api.suisse-speech.ch/v1/stt \
-H "X-API-Key: $SUISSE_SPEECH_KEY" \
-F audio=@call.wav \
-F lang=de-CH \
-F 'vocabulary=["Rüegg", "Bircher", "Glasfaser"]'Cosa si riceve
{
"text": "Grüezi Herr Meier, wie kann ich Ihnen helfen?",
"lang": "de-CH",
"duration_s": 3.82,
"words": [
{ "w": "Grüezi", "start": 0.12, "end": 0.65, "conf": 0.98 },
{ "w": "Herr", "start": 0.70, "end": 0.95, "conf": 0.99 },
{ "w": "Meier", "start": 0.98, "end": 1.40, "conf": 0.97 }
]
}Audio dal vivo in streaming
import WebSocket from 'ws';
const ws = new WebSocket('wss://api.suisse-speech.ch/v1/stt/stream', {
headers: { 'X-API-Key': process.env.SUISSE_SPEECH_KEY },
});
ws.on('open', () => {
// Candidates: the spoken language is detected and reported per result.
ws.send(JSON.stringify({ type: 'config', lang: 'de-CH,fr-CH,en' }));
// Then send 16 kHz mono PCM16 as binary frames, at real-time pace,
// and finish with {"type": "audio.end"}.
});
ws.on('message', (data, isBinary) => {
if (isBinary) return;
const msg = JSON.parse(data.toString());
if (msg.type === 'transcript.partial') showLive(msg.text);
if (msg.type === 'transcript.final') answer(msg.lang, msg.text);
});Come il dialetto diventa testo
Lo svizzero tedesco non ha un'ortografia standard: due persone di Berna scriverebbero la stessa frase in due modi diversi. Per questo l'API scrive in tedesco standard ciò che è stato detto. Così le trascrizioni restano ricercabili e coerenti, ed è esattamente ciò che si aspettano i modelli linguistici e le analisi a valle. Il dialetto in sé non viene indicato: la varietà in cui rispondere la sceglie Lei.
Domande frequenti
Quali formati audio posso inviare?
Qualsiasi contenitore comune: WAV, MP3, Ogg/Opus, FLAC, AAC e PCM16 grezzo. Per lo stream in tempo reale invii PCM16 mono a 16 kHz.
Quanto è preciso con lo svizzero tedesco?
Dipende dal Suo audio: microfono, qualità della linea, rumore di fondo, vocabolario. Non pubblichiamo un unico valore di precisione. Lo verifichi sulle Sue registrazioni con i 60 minuti gratuiti.
Distingue lo zurighese dal bernese?
No. Il riconoscimento indica la lingua (per esempio de-CH), non il dialetto regionale. Se desidera rispondere in dialetto, lo sceglie Lei per ogni implementazione, linea o regione.
Una conversazione può passare da una lingua all'altra?
Sì. Con più lingue candidate, ogni risultato parziale e finale riporta la lingua di quel tratto di parlato, per cui un cambio di lingua è visibile nel momento stesso in cui avviene.
Lo provi con il Suo audio
Ottenga 60 minuti gratuiti di speech-to-text e text-to-speech. Nessuna carta di credito richiesta.