à propos
Rien ici n'est une boîte noire. Voici la liste complète de ce que contient l'archive : ce que fait chaque pièce, quand elle tourne et sous quelle licence — y compris chaque modèle proposé par le catalogue.
Moi : Vitalii Yemets, un développeur. Il n'y a pas d'entreprise, pas d'équipe et pas d'investisseurs : une personne l'écrit, répond aux issues et publie les versions, tout au grand jour sur GitHub.
J'ai écrit HoldToType pour mon propre ordinateur Windows : je voulais dicter sans abonnement et sans que ma voix aille quelque part. Puis mes collègues ont commencé à l'utiliser, et maintenant il est disponible pour tous. Il est gratuit et le restera.
Si quelque chose ne va pas, écrivez-moi : une issue sur GitHub ou holdtotype@outlook.com.
Chacun est un exécutable distinct à côté de l'application. Le programme en démarre un quand il le faut, lui parle par un port local, et l'arrête après dix minutes d'inactivité.
whisper-server.exe — fait tourner la famille de modèles Whisper et leur mode de traduction vers l'anglais.
Tant qu'un modèle Whisper sert la langue dans laquelle vous dictez.
MIT
sherpa-server.exe et sherpa-online-server.exe — tout ce qui n'est pas Whisper, en une passe ou en flux pendant que vous parlez.
Tant qu'un modèle sherpa sert la langue, ou qu'un modèle en flux est choisi.
Apache 2.0
llama-server.exe — le modèle d'édition qui exécute vos prompts après la reconnaissance.
Seulement tant que le post-traitement est activé.
MIT
Les calculs tensoriels au cœur de whisper.cpp et llama.cpp. Pas un fichier à part ; compilé dans les deux.
Avec le moteur qui s'en sert.
MIT
Fait tourner les modèles à l'intérieur de sherpa-onnx. Compilé dans les exécutables sherpa.
Avec sherpa.
MIT
L'application est écrite en Go. Ce sont les seules bibliothèques extérieures qu'elle utilise.
Dessine la fenêtre des réglages, qui est une page HTML rendue par le composant WebView2 déjà présent dans Windows.
MIT
Charge les bibliothèques WebView2. Utilisée par go-webview2.
MIT
Capte le microphone : le rappel audio qui remplit le tampon tant que vous tenez les touches.
Unlicense
Le lien websocket vers la reconnaissance en flux, qui renvoie du texte pendant que vous parlez encore.
BSD-2
Les appels de l'API Windows : le crochet clavier, l'icône de notification, la fenêtre du bandeau, les objets de travail des processus fils.
BSD-3
La seule police dans laquelle chaque design est composé, embarquée dans l'exécutable pour se lire pareil sur toute machine.
OFL 1.1
Partie de Windows, pas livrée par nous. C'est elle qui peint réellement la page des réglages.
Microsoft
Les modèles se téléchargent à la demande, depuis les dépôts ci-dessous, et chaque fichier est comparé à un SHA-256 publié avant d'être utilisé. Aucun n'est fourni avec le programme.
Le choix par défaut pour toute langue, et les modèles qui portent la traduction : vers l'anglais par leur propre tâche de traduction, vers les autres langues en leur disant que la parole est déjà dans la langue visée. Les versions quantifiées portent la marque q5.
MIT
Un modèle monolingue qui ponctue tout seul. Sur une phrase de 11 secondes il a pris 0,47 s contre 11,6 s pour Whisper Medium, et 277 Mo de mémoire contre 814 Mo.
MIT
La génération précédente du même modèle : la même vitesse, sans la ponctuation.
MIT
25 langues européennes dans un seul modèle étroit, ponctue tout seul.
CC-BY-4.0
Écrit pendant que vous parlez : texte partiel sur le bandeau, 40 langues, ponctuation comprise.
OpenMDW-1.1
Anglais, allemand, espagnol et français, et il traduit entre eux sans Whisper.
CC-BY-4.0
Une trentaine de langues, le plus lourd et le plus précis du catalogue.
Apache 2.0
Petit et rapide, pour une langue à la fois sur une machine modeste.
MIT
Le post-traitement fait tourner n'importe quel modèle GGUF que vous lui indiquez, cherché et téléchargé depuis Hugging Face dans le programme.
selon le modèle
Les moteurs sont de simples serveurs HTTP et websocket liés à 127.0.0.1. Ils ne sont pas joignables depuis le réseau, et le programme refuse d'en démarrer un sur un port qu'un autre processus détient déjà.
8910whisper-server
HTTP
un modèle Whisper sert la langue
8911llama-server
HTTP, clé de session
le post-traitement est activé
8912sherpa-server
HTTP
un modèle sherpa sert la langue
8913sherpa-online-server
websocket
un modèle en flux est choisi
HoldToType lui-même est publié sous licence MIT : utilisez-le, lisez-le, modifiez-le, publiez le vôtre. Chaque moteur et bibliothèque ci-dessus porte sa propre licence permissive, indiquée à côté.
holdtotype@outlook.com pour tout. Les issues sur GitHub pour les problèmes et les demandes, là où d'autres peuvent les voir et les compléter. Le programme est aussi référencé sur AlternativeTo.