HoldToType

über

Wer es macht, und woraus es gemacht ist

Hier gibt es keine schwarzen Kästen. Das ist die vollständige Liste dessen, was im Archiv liegt: was jedes Stück tut, wann es läuft und unter welcher Lizenz — samt jedem Modell, das der Katalog anbietet.

Wer es macht

Ich: Vitalii Yemets, ein Entwickler. Es gibt keine Firma, kein Team und keine Investoren: eine Person schreibt es, beantwortet die Issues und liefert die Versionen aus, alles offen auf GitHub.

Ich habe HoldToType für meinen eigenen Windows-Rechner geschrieben: ich wollte diktieren ohne Abo und ohne dass meine Stimme irgendwohin geht. Dann fingen meine Kollegen an, es zu benutzen, und jetzt steht es allen offen. Es ist kostenlos und bleibt kostenlos.

Wenn etwas nicht stimmt, schreiben Sie mir: ein Issue auf GitHub oder holdtotype@outlook.com.

Die Engines

Jedes ist eine eigene ausführbare Datei neben der App. Das Programm startet eines, wenn es gebraucht wird, spricht über einen lokalen Port damit und beendet es nach zehn Minuten Leerlauf.

Teilwas er hier tutwann er läuftLizenz
whisper.cpp

whisper-server.exe — betreibt die Whisper-Modellfamilie und deren Übersetzungsmodus ins Englische.

Solange ein Whisper-Modell die Sprache bedient, in der Sie diktieren.

MIT

sherpa-onnx

sherpa-server.exe und sherpa-online-server.exe — alles, was nicht Whisper ist, in einem Durchgang oder im Strom während des Sprechens.

Solange ein sherpa-Modell die Sprache bedient oder ein Strommodell gewählt ist.

Apache 2.0

llama.cpp

llama-server.exe — das Bearbeitungsmodell, das Ihre Prompts nach der Erkennung ausführt.

Nur solange die Nachbearbeitung eingeschaltet ist.

MIT

ggml

Die Tensorrechnerei in whisper.cpp und llama.cpp. Keine eigene Datei; in beide einkompiliert.

Mit dem Rechenkern, der sie benutzt.

MIT

ONNX Runtime

Führt die Modelle in sherpa-onnx aus. In die sherpa-Programme einkompiliert.

Mit sherpa.

MIT

Die Bibliotheken

Die App ist in Go geschrieben. Das sind die einzigen fremden Bibliotheken, die sie benutzt.

Teilwas er hier tutLizenz
go-webview2

Zeichnet das Einstellungsfenster, das eine HTML-Seite ist, dargestellt von dem WebView2-Baustein, den Windows schon mitbringt.

MIT

go-winloader

Lädt die WebView2-Bibliotheken. Wird von go-webview2 benutzt.

MIT

malgo / miniaudio

Nimmt das Mikrofon auf: der Audio-Rückruf, der den Puffer füllt, solange Sie die Tasten halten.

Unlicense

gorilla/websocket

Die Websocket-Verbindung zur Stromerkennung, die Text zurückschickt, während Sie noch sprechen.

BSD-2

golang.org/x/sys

Die Windows-API-Aufrufe: der Tastaturhaken, das Symbol im Infobereich, das Leistenfenster, Job-Objekte für die Kindprozesse.

BSD-3

IBM Plex

Die eine Schrift, in der jedes Design gesetzt ist, in die Exe eingebettet, damit sie auf jedem Rechner gleich aussieht.

OFL 1.1

WebView2 Runtime

Teil von Windows, nicht von uns mitgeliefert. Er ist es, der die Einstellungsseite tatsächlich malt.

Microsoft

Die Modelle

Modelle werden auf Wunsch geladen, aus den Ablagen unten, und jede Datei wird vor der Nutzung gegen eine veröffentlichte SHA-256 geprüft. Keines liegt dem Programm bei.

ModellwofürLizenz
Whisper Base, Small, Medium, Turbo

Die Vorgabe für jede Sprache und die Modelle, die die Übersetzung tragen: ins Englische über ihre eigene Übersetzungsaufgabe, in andere Sprachen dadurch, dass man ihnen sagt, die Rede sei schon in der Zielsprache. Quantisierte Fassungen sind mit q5 gekennzeichnet.

MIT

GigaAM v3

Ein einsprachiges Modell, das die Zeichensetzung selbst erledigt. Für einen 11-Sekunden-Satz brauchte es 0,47 s gegen 11,6 s bei Whisper Medium und 277 MB Speicher gegen 814 MB.

MIT

GigaAM v2

Die vorige Fassung desselben Modells: gleiche Geschwindigkeit, ohne Zeichensetzung.

MIT

Parakeet TDT 0.6B v3

25 europäische Sprachen in einem schmalen Modell, setzt die Zeichen selbst.

CC-BY-4.0

Nemotron 3.5 Streaming

Tippt beim Sprechen mit: Teiltext auf der Leiste, 40 Sprachen, Zeichensetzung inbegriffen.

OpenMDW-1.1

Canary 180M Flash

Englisch, Deutsch, Spanisch und Französisch — und es übersetzt zwischen ihnen ohne Whisper.

CC-BY-4.0

Qwen3 ASR

Etwa 30 Sprachen, das schwerste und genaueste im Katalog.

Apache 2.0

Moonshine

Klein und schnell, für eine Sprache auf einmal und bescheidene Hardware.

MIT

Jedes GGUF-Editor-Modell

Die Nachbearbeitung führt jedes GGUF-Modell aus, auf das Sie sie richten; Suche und Download von Hugging Face stecken im Programm.

je Modell

Ports

Die Rechenkerne sind gewöhnliche HTTP- und Websocket-Server, gebunden an 127.0.0.1. Aus dem Netz sind sie nicht erreichbar, und einen Rechenkern auf einem Port zu starten, den ein anderer Prozess schon hält, verweigert das Programm.

PortEngineProtokollläuft, während
8910

whisper-server

HTTP

ein Whisper-Modell bedient die Sprache

8911

llama-server

HTTP, Sitzungsschlüssel

die Nachbearbeitung an ist

8912

sherpa-server

HTTP

ein sherpa-Modell bedient die Sprache

8913

sherpa-online-server

websocket

ein Streaming-Modell gewählt ist

Der Bau ist reproduzierbar. Alles wird in Docker aus festgelegten Quellen kompiliert: die Versionen der Rechenkerne stehen fest im Dockerfile, das sherpa-Release wird über seine SHA-256 geprüft, und heraus kommen die zwei Dateien auf der Release-Seite. Das ganze Rezept liegt im Repository.

Lizenzen

HoldToType selbst steht unter der MIT-Lizenz: benutzen, lesen, ändern, eigene Versionen ausliefern. Jede Engine und Bibliothek oben trägt ihre eigene freizügige Lizenz, daneben aufgeführt.

Eines liegt bei Ihnen. Die Editor-Modelle, die Sie selbst über die Hugging-Face-Suche finden, tragen die Lizenz, die ihr Autor gewählt hat, und manche davon beschränken die kommerzielle Nutzung.

Kontakt

holdtotype@outlook.com für alles. Issues auf GitHub für Probleme und Wünsche, wo andere sie sehen und ergänzen können. Das Programm ist auch auf AlternativeTo gelistet.

Repository öffnen