Prononcer
Une page séparée du Studio, sur app.uttera.ai/fr/pronounce,
pour quiconque apprend une langue. Pas de formats, pas de catalogue de voix par nom, pas d'estimateur de
coût : quelqu'un qui apprend l'allemand ne veut pas choisir entre opus et flac.
Uttera vient de to utter : prononcer, dire à voix haute. C'est cette partie du nom.
Elle résout un problème que les applications d'apprentissage ne touchent pas : elles ne vous laissent entendre que leur propre contenu. Vous pouvez répéter leur leçon, mais vous ne pouvez pas leur demander comment sonne la phrase que vous devez dire demain. Ici, vous écrivez cette phrase.
Les trois étapes
| Étape | Ce qui se passe |
|---|---|
| 1. Écrivez-la dans votre langue | La page est dans votre langue et vous écrivez dans la vôtre. Vous choisissez celle dans laquelle vous voulez apprendre à la dire. Jusqu'à 300 caractères : une phrase, pas un texte. |
| 2. Voici comment vous la dites | La phrase apparaît dans la langue que vous apprenez avec sa transcription phonétique. C'est là que vous vous arrêtez et lisez. L'audio est généré séparément, quand vous le voulez et à la vitesse que vous choisissez : lire la phrase est gratuit, la générer ne l'est pas, et payer l'audio de quelque chose que vous n'avez pas encore lu n'a pas de sens. |
| 3. Maintenant, dites-la vous-même | Vous vous enregistrez — microphone du navigateur ou fichier — et nous vous rendons ce que nous avons compris, en marquant mot par mot ce qui est sorti et ce qui n'est pas sorti. |
Ce que ça coûte
Il n'y a pas d'estimation préalable, à dessein : quelqu'un qui s'exerce n'évalue pas un service, et un chiffre avant chaque phrase serait du bruit. Après chaque opération, nous disons ce qu'elle a réellement coûté. Un cycle complet — traduire, écouter et se vérifier — tourne autour de 0,17 crédit pour une phrase ordinaire.
Les limites, dites d'emblée
- Neuf langues avec une voix : espagnol, anglais (américain et britannique), français, italien, portugais, hindi, japonais et chinois.
- Pas de transcription phonétique pour le japonais et le coréen. Le phonémiseur ne peut pas lire les kanji et renverrait une transcription fausse, ce qui pour un apprenant est pire que rien. L'audio fonctionne tout autant.
- Neuf langues, pas toutes. Si la vôtre n'y est pas, ce n'est pas encore pour vous.
- Nos voix sont faites pour sonner naturelles, non pour enseigner la phonétique. Pour le son d'une phrase ordinaire, elles sont largement suffisantes ; pour polir une voyelle d'examen, un professeur reste un professeur.
“Pourquoi ne me comprend-il pas ?” : l'analyse par IA
Les trois étapes vous donnent un miroir : quels mots sont sortis et lesquels non. Quand cela ne suffit pas — vous savez que quelque chose cloche mais pas quoi — un bouton séparé compare son par son ce que vous avez dit à ce qui devrait être, et l'explique.
Il n'utilise pas la reconnaissance vocale ordinaire, et la raison compte : celle-ci est faite pour vous comprendre, non pour vous mesurer. Elle corrige votre prononciation vers le mot qu'elle pense que vous vouliez dire, ce qui est exactement l'erreur que nous voulons voir ici. L'analyse utilise un reconnaisseur de phonèmes, qui écrit ce qu'il entend même quand ce n'est pas un mot, et compare cette chaîne avec celle qui aurait dû sonner.
Ce que vous récupérez : le pourcentage de sons qui sont sortis corrects, la liste de ceux qui ne le sont pas — vous avez fait [s] là où il devrait être [θ], et dans quels mots —, l'explication écrite, et les deux transcriptions phonétiques pour ceux qui savent les lire.
L'idée est que vous vous exerciez de nombreuses fois pour presque rien et demandiez l'analyse quand vous voulez savoir ce que vous faites mal, non à chaque répétition.
Ce n'est ni une note ni un examen : c'est une comparaison entre deux chaînes de sons. Et l'explication est rédigée par un modèle de langage à partir de cette comparaison — il ne décide pas de ce qui est faux, cela est calculé auparavant — alors lisez-la pour ce qu'elle est : une aide à comprendre les données, pas un verdict.
Il ne remplace pas non plus un professeur. Pour le son d'une phrase ordinaire, c'est largement suffisant ; pour polir une voyelle d'examen, un professeur reste un professeur.
Ce que vous téléversez est transcrit puis supprimé : s'enregistrer en train de s'exercer est exactement le genre d'audio qui ne devrait pas rester dans l'archive de qui que ce soit — Confidentialité.
Via l'API
POST /v1/pronunciation — multipart, comme transcrire. Renvoie du JSON.
| Champ | Type | Ce que c'est |
|---|---|---|
file | fichier | Requis. L'apprenant lisant la phrase. Tout format courant ; jusqu'à 1 Mo, ce qui est amplement suffisant pour quelques secondes de parole. |
text | texte | Requis. La phrase qu'il était censé dire. C'est la référence à laquelle l'audio est comparé, non une transcription. |
language | texte | Par défaut es.
L'un de : es, es-419, en, en-gb,
fr, it, pt, pt-br,
de, nl, ru, pl,
el, tr, ar, ja,
zh, hi, ko, sv,
da, nb, fi. Toute autre valeur renvoie
422 avec la liste. |
explain | texte | "true" par défaut.
Avec "false", vous obtenez le diagnostic phonétique sans l'explication
écrite — et cela coûte bien moins, parce que l'explication est ce qui appelle
le modèle de langage. |
curl -X POST https://api.uttera.ai/v1/pronunciation \
-H "Authorization: Bearer $UTTERA_API_KEY" \
-F "file=@sentence.mp3" \
-F "text=El perro de San Roque no tiene rabo." \
-F "language=es"
La réponse, exactement telle qu'elle sort :
{
"text": "El perro de San Roque no tiene rabo.",
"language": "es",
"duration_s": 2.625,
"target_ipa": "e l p e r o ð e s a n r o k e n o t j e n e r a β o",
"heard_ipa": "e l p e r o ð e s a n r o k e n o t i n e r a b o",
"accuracy": 0.9231,
"errors": [
{"type": "missing", "expected": "j", "heard": null,
"times": 1, "words": ["tiene"]},
{"type": "substitution", "expected": "e", "heard": "i",
"times": 1, "words": ["tiene"]}
],
"recognised": true,
"suppressed": 1,
"explanation": "En la palabra \"tiene\"…",
"timing_ms": {"phonetics": 5567.0, "llm": 18069.4, "total": 23640.1}
}
| Champ | Ce que c'est |
|---|---|
target_ipa / heard_ipa | Les sons qui auraient dû être là et ceux qui l'étaient, dans l'alphabet phonétique international. Les comparer est toute l'analyse. |
accuracy | Phones concordants sur phones attendus, de 0 à 1. Ce n'est pas une note : c'est la proportion de ce qui aurait dû sonner qui a sonné. |
errors | Les fautes regroupées par son, avec les mots où elles apparaissent. type vaut missing, extra ou substitution. |
recognised | false quand ce qui a été enregistré n'est pas la phrase — mauvais microphone, un autre enregistrement, une autre langue. Alors errors revient vide et il n'y a pas d'explication : accuser quelqu'un de fautes fines alors qu'il a dit tout autre chose est pire que de ne rien dire. |
suppressed | Confusions écartées parce qu'elles sont un artefact de l'analyseur et non la faute de l'apprenant. Elles sont mesurées en synthétisant la phrase, correctement dite, avec notre propre voix. |
explanation | L'explication dans la langue analysée, ou null si vous avez demandé explain=false ou si la phrase n'a pas été reconnue. |
Le coût suit le travail réel, non un tarif fixe : l'en-tête X-Work-Ms indique combien de
travail a été fourni, et GET /v1/usage/last ce que cela
a coûté. Mesuré sur l'exemple ci-dessus —2,6 s d'audio, avec une explication— 60,9 crédits ; sans
l'explication, l'essentiel disparaît, parce que c'est le modèle de langage qui coûte.