Le même travail, à deux endroits
La reconnaissance vocale est un logiciel qui fait tourner un modèle, c’est-à-dire un gros fichier entraîné à changer du son en mots. Il n’y a là rien de mystique, et ça doit tourner quelque part.
Dans le cloud, ce fichier vit sur un serveur. Ton appareil enregistre l’audio, l’envoie par le réseau, attend, et reçoit du texte en retour. Tu ne vois jamais le fichier et tu n’y penses jamais, ce qui est précisément l’attrait.
En local, le fichier vit sur ton propre appareil. L’audio ne va nulle part. Ton téléphone ou ton ordinateur charge le modèle, fait le travail, et produit du texte sans que rien ne traverse un réseau.
Voilà toute la distinction. Tout le reste en découle.
Ce que chacun réussit
La reconnaissance dans le cloud peut être énorme. Un serveur a de la mémoire, du refroidissement et du matériel spécialisé, donc le modèle peut être bien plus gros que tout ce qui tient sur un téléphone. Plus de capacité veut généralement dire une meilleure tenue face aux accents, au bruit de fond, aux noms inhabituels et aux gens qui parlent vite. Elle peut aussi être mise à jour de façon centrale, donc elle s’améliore sans que tu fasses quoi que ce soit, et elle peut couvrir de très longues listes de langues puisque la taille n’est pas la contrainte.
La reconnaissance locale est bornée par l’appareil. Sur un téléphone, cela veut dire quelques gigaoctets de mémoire partagés avec le reste, aucun ventilateur, et une batterie à protéger. Le modèle doit être assez petit pour se charger vite et finir avant que tu perdes patience.
Sur la capacité brute, le cloud a donc l’avantage, et ce n’est pas discutable.
Ce que le local donne à la place
Ça marche sans connexion. Pas de signal, mode avion, une cave, un pays étranger avec les données coupées, aucun de ces cas n’est particulier, parce que le réseau n’a jamais fait partie du processus.
Ça échoue autrement. La reconnaissance en ligne a tendance à échouer en silence sur une mauvaise connexion. Elle attend, expire, ou perd la phrase que tu viens de dire. La reconnaissance locale marche ou ne marche pas, et elle marche.
La latence est la tienne. La vitesse du cloud dépend de ta connexion et de la charge sur les serveurs de quelqu’un d’autre. La vitesse locale dépend de ton matériel et de la taille de modèle que tu as prise, ce qui est au moins une variable que tu commandes.
Ton audio ne voyage pas. C’est le point pour lequel la plupart des gens sont réellement ici. Si la reconnaissance se passe sur ton appareil, il n’y a aucun envoi, aucun serveur qui reçoit ta voix, et aucune copie ailleurs. C’est une propriété de l’architecture plutôt qu’une promesse dans un document.
Aucun compte n’est nécessaire. Un traitement côté serveur implique généralement d’identifier qui demande. Un traitement local, non.
Ce que le local te coûte
Faire tourner le modèle sur ton propre téléphone a un prix, et il se paie en capacité.
De l’espace de stockage. Le modèle doit être sur l’appareil. Selon la taille que tu prends, cela peut aller de quelques dizaines à quelques centaines de mégaoctets, et sur un téléphone déjà plein ça compte.
De la mémoire pendant qu’il travaille. Le modèle doit être tenu en mémoire pendant la transcription, et c’est pourquoi les appareils anciens peinent avec les gros.
Un modèle plus petit. Ce qui veut généralement dire une précision un peu en dessous des meilleurs services en ligne, surtout avec un accent marqué ou une pièce bruyante.
Moins de langues. Le multilingue se paie en taille, donc un modèle local couvre moins de langues qu’un modèle côté serveur.
Un téléchargement de départ. Le modèle doit bien arriver d’une manière ou d’une autre, et cette étape réclame une connexion même si plus rien ensuite n’en demande.
Où se trouve le juste milieu
La plupart des gens n’ont pas besoin du plus gros modèle possible. Ils ont besoin d’une dictée qui marche dans les moments où ils écrivent vraiment : une réponse dans un train, une note dans un magasin, un mail en marchant. Ce sont des phrases courtes, clairement prononcées, dans un micro tenu près du visage, et c’est le cas facile pour n’importe quel modèle moderne.
Les cas durs, quatre personnes autour d’une table avec le micro au milieu, un bruit de fond épais, l’enregistrement d’un cours, sont ceux où la capacité côté serveur gagne réellement. C’est aussi du travail que tu fais d’ordinaire volontairement, avec le temps d’envoyer un fichier et d’attendre.
Découper ainsi est plus utile que de choisir un camp : le local pour l’écriture que tu fais toute la journée, le serveur pour les enregistrements que tu documentes exprès.
Le cas hybride, et pourquoi il demande de l’attention
Un troisième montage est courant, et on le prend facilement pour l’un des deux autres.
Beaucoup de produits font les deux. Ils transcrivent sur l’appareil quand les conditions le permettent et vont chercher un serveur quand ils veulent plus de capacité, plus de langues ou plus de vitesse. Parfois tu choisis, parfois le logiciel choisit à ta place d’après ton matériel, ta langue, ou la bonne fin d’installation d’un composant.
Sur le plan technique, c’est sensé. Tu obtiens la meilleure réponse disponible dans chaque situation.
Comme garantie, c’est plus faible, et la distinction compte selon la raison pour laquelle tu voulais du local au départ. Si tu le voulais parce que ton signal est peu fiable, l’hybride convient : il se replie et tu continues. Si tu le voulais parce que tu préférerais que ta voix ne soit pas transmise, l’hybride veut dire que le résultat dépend d’un état dont il faut se souvenir, et les états dérivent. Les réglages se remettent à zéro. Les valeurs par défaut changent dans une mise à jour. Une langue que tu commences à utiliser n’est pas couverte en local.
Aucune des deux conceptions n’est un piège. Ce sont les réponses à deux questions différentes, et la seule erreur est de prendre l’une pour l’autre.
Comment savoir laquelle une app emploie
Les descriptions ne sont pas fiables, parce que « privé », « sécurisé » et même « hors ligne » se disent à la légère. Deux contrôles tranchent.
Le mode avion. Installe l’app, laisse finir le téléchargement du premier lancement, puis coupe les données mobiles et le Wi-Fi, et dicte. Si du texte apparaît, la reconnaissance s’est faite sur l’appareil.
Cherche un téléchargement de modèle. Une app qui transcrit en local doit faire arriver son modèle sur ton appareil d’une façon ou d’une autre, donc elle te parlera d’un téléchargement d’une taille notable. Une app qui ne télécharge jamais rien mais transcrit instantanément se sert du matériel de quelqu’un d’autre.
Méfie-toi d’une formule en particulier. « Tes notes sont conservées en local » et « ta parole est reconnue en local » se ressemblent et veulent dire des choses complètement différentes. La première parle de l’endroit où le texte est enregistré après coup, et ne dit strictement rien du trajet de ta voix.
Où LocalType se situe là-dedans
LocalType se situe du côté local de cette ligne.
LocalType est un clavier Android qui fait la reconnaissance sur le téléphone, sans le moindre chemin cloud dans l’app. Il livre trois tailles de modèle, 60, 190 et 539 Mo, pour que l’arbitrage entre place occupée et vitesse te revienne plutôt qu’à nous, et il couvre dix-huit langues à partir d’un modèle multilingue. Sur un téléphone de test à 4 Go de mémoire, la taille du milieu a changé 6,9 secondes de parole en texte en 4,1 secondes.
Cela veut dire qu’il porte chacun des coûts listés plus haut : de l’espace, de la mémoire, un premier téléchargement, un modèle plus petit que ce qu’un serveur ferait tourner. Et qu’il reçoit chacun des bénéfices : aucun compte, aucun envoi, aucune archive de tes enregistrements, et une dictée qui se comporte pareil que tu aies du signal ou non.
Que ce compromis soit le bon dépend entièrement de ce que tu écris et de l’endroit où tu l’écris, et personne ne peut y répondre à ta place.