Dyktowanie, które działa bez internetu
Dyktowanie w chmurze pada wraz z siecią. Keebye zamienia mowę na tekst na urządzeniu: bez internetu, dźwięk zostaje na Macu, awaria sieci go nie zatrzyma.
Niektóre problemy ujawniają się dopiero wtedy, gdy coś się psuje, i dlatego łatwo je bagatelizować, dopóki nie przydarzą się Tobie: chmurowe dyktowanie zależy od sieci. Awaria dostawcy i Twój klawisz dyktowania nie robi nic. Hotelowe Wi-Fi, które się rozłącza, i zdanie znika w kółeczku ładowania. Samolot. Tunel kolejowy. VPN renegocjujący połączenie dokładnie w złym momencie. To nie jest wada jednego produktu; to znaczy zależeć od podróży w obie strony.
Okrutne jest to, co zawodzi. Jeśli padnie Twoja aplikacja do notatek, otwierasz plik tekstowy. Jeśli padnie dyktowanie, tracisz metodę wprowadzania tekstu — tę, wokół której zbudowałeś pamięć mięśniową, w środku zdania, zwykle wtedy, gdy ręce były zajęte czymś innym. A to był cały powód, dla którego dyktowałeś.
Pod skargą o dostępność siedzi pytanie o prywatność: czy dźwięk Twojego głosu opuszcza maszynę? W chmurowej ścieżce transkrypcji nagrania Twojego myślenia na głos — nazwy klientów, niewydane funkcje, problem bezpieczeństwa, który opisujesz koledze — jadą do cudzej infrastruktury, żeby stać się tekstem. Ta ścieżka może też zależeć od sesji, kont i dostępności usługi poza Twoją kontrolą.
Zbudowałem odpowiedź Keebye na to, zanim wyartykułowałem ją jako funkcję, bo moje własne wymaganie było brutalnie proste: musiało działać z wyłączonym Wi-Fi. Oto jak to naprawdę wygląda i co kosztuje.
Dlaczego chmurowe dyktowanie zawodzi do zera
Warto wyłożyć mechanikę na poziomie kategorii, bo tłumaczy, dlaczego ta skarga nigdy do końca nie znika, niezależnie od tego, jak dobre stają się produkty.
Chmurowa pętla dyktowania ma co najmniej cztery ogniwa: przechwyć dźwięk na swojej maszynie, wyślij go na serwer, tam uruchom inferencję, odeślij tekst. Każde ogniwo to zależność — Twoja sieć, ich sieć, ich warstwa uwierzytelniania, ich pojemność, ich dostępność. Łańcuch zwykle jest w porządku. Ale gdy pęknie którekolwiek ogniwo, pęka cała pętla, i pęka do zera. Nie „wolniej”, nie „mniej dokładnie” — nic nie dociera do Twojego kursora. Degradacja byłaby znośna; dyktowanie degraduje się do ciszy.
Dostawcy mogą się przed tym mocno zabezpieczać, ale nie naprawią ogniw, których nie posiadają: routera w hotelu, lotu, firmowego VPN-a, incydentu na szkielecie sieci między Tobą a nimi. Narzędzie, którego dostępność zależy od kilku systemów, może zawieść, gdy którykolwiek z nich jest niedostępny.
Co się dzieje, gdy nie ma chmury, z której trzeba by się wycofać?
Architektura Keebye odpowiada na to pytanie przez jego usunięcie. Zamiana mowy na tekst działa w całości na urządzeniu — modele ONNX, lokalna inferencja, na krzemie Twojego Maca. W ścieżce dyktowania jest zero połączeń sieciowych. Nie „minimalizujemy je”, nie „grupujemy je” — zero. Nie ma też telemetrii. Żadnej. Gdy przytrzymujesz klawisz i mówisz, żaden pakiet nie opuszcza maszyny w Twoim imieniu.
Chcę podkreślić kwestię architektoniczną, bo to różnica między tym a „trybem offline”. Tryb offline jest awaryjny: normalna ścieżka idzie do chmury, a gdy chmura jest nieosiągalna, przejmuje ją zdegradowana ścieżka lokalna — jeśli aplikacja zauważy to na czas, jeśli lokalna ścieżka jest utrzymywana, jeśli przekazanie zadziała w środku zdania. Keebye nie ma takiego przekazania, bo nie ma ścieżki chmurowej, z której miałby przekazywać. Lokalna inferencja nie jest planem awaryjnym; jest jedynym planem. Awaria po stronie dostawcy nie może jej zepsuć z tego samego powodu, z którego przerwa w dostawie prądu w innym kraju nie zgasi Twojej lampki na biurku. Odporność z konstrukcji, a nie z planu awaryjnego.
Tu też, bez żadnej strony ustawień, znajduje odpowiedź ta cichsza skarga. Twój dźwięk nigdy nie opuszcza maszyny — nie „szyfrowany w tranzycie”, nie „zanonimizowany”, po prostu nigdy niewysłany, bo nie ma dokąd. Jeśli włączysz historię dyktowania, przechowywany jest sam tekst, w lokalnej bazie SQLite na Twoim dysku. (Ta historia to osobna opowieść o komforcie pracy — powracająca skarga „gdzie podziało się moje dyktowanie?” — którą opisaliśmy w Twoje dyktowanie nigdy nie powinno po prostu zniknąć.) A kruchość kont i sesji znika razem z kontami: w ścieżce dyktowania nie ma sesji chmurowej, która mogłaby wygasnąć, więc nie ma ponownego logowania stojącego między Tobą a działającym skrótem.
Jedyny moment, w którym internet jest potrzebny
Wymagana szczerość, powiedziana wprost: modele muszą jakoś trafić na Twoją maszynę. Przy pierwszym uruchomieniu Keebye pobiera swój model mowy — mniej więcej 700 MB dla silnika angielskiego i około 1,3 GB, jeśli włączysz silnik wielojęzyczny. To realne pobieranie, raz na silnik, i potrzebujesz do niego internetu.
Potem modele mieszkają na dysku, a transkrypcja działa na nich lokalnie, z siecią albo bez, dopóki ich nie usuniesz lub nie wymienisz. Ale jeśli to pierwsze uruchomienie wypadnie w samolocie, masz pecha do lądowania — zrób konfigurację przed podróżą, a nie w jej trakcie. Wolę, żebyś usłyszał to ode mnie, niż odkrył nad Atlantykiem.
Pytanie o dokładność, odpowiedź uczciwa
Pobieranie to drobne zastrzeżenie. Oto większe, bo narzędzia działające na urządzeniu uwielbiają je pomijać.
Największe modele chmurowe potrafią być dokładniejsze niż model na urządzeniu. Model wypełniający szafę serwerową ma pojemność, której nie ma plik o rozmiarze 700 MB, a udawanie inaczej obrażałoby Twoją inteligencję. Powiem natomiast — i w to wierzę na podstawie życia z jednym i drugim — że dystans mocno się skurczył, a co ważniejsze, tryby awarii różnią się rodzajem. Najgorszy dzień modelu na urządzeniu to źle usłyszane słowo, które poprawiasz. Najgorszy dzień modelu chmurowego to zero wyjścia, bo jego dokładność jest mnożona przez jego dostępność, a to dostępność jest tym składnikiem, który w pociągu spada do zera. Który tryb awarii wolisz wziąć na siebie, zależy od Twojego dnia; w moim jest za dużo pociągów.
Dziś jest tylko na macOS i we wczesnym dostępie. Brak wersji na Windows i wszystkie chropowatości, które wczesny dostęp oznacza. Jeśli Twój sprzęt to przede wszystkim Windows, uczciwa odpowiedź brzmi: Keebye jeszcze Ci nie pomoże.
Jeśli ważysz to wobec narzędzia, którego już używasz, strony porównań są rzetelną wersją tego argumentu. Keebye vs Superwhisper porównuje dwa produkty ze ścieżkami transkrypcji na urządzeniu; Keebye vs Wispr Flow omawia decyzję lokalnie kontra w chmurze. A jeśli alternatywą, którą rozważasz, jest dyktowanie wbudowane w macOS, Głosowe dyktowanie na Maca opisuje, co wbudowane narzędzie robi dobrze i czym różni się Keebye.
Dostępność jest funkcją
Kategoria dyktowania spędziła lata na konkurowaniu procentami dokładności i dokładność ma znaczenie. Ale skarga, która naprawdę zmusza ludzi do zmiany narzędzia, rzadko brzmi „raz mnie źle usłyszało”. Brzmi „znowu przestało działać, nie wiem dlaczego, a naprawa wymagała zalogowania się do czegoś”. Dostępność — nudna, niewdzięczna dostępność — jest funkcją, którą zauważa się wyłącznie jako jej brak.
Sposób na to, by metoda wprowadzania tekstu była tak niezawodna jak klawiatura, to dać jej tę samą listę zależności co klawiaturze: maszyna przed Tobą i nic więcej. To cały projekt.
Keebye jest we wczesnym dostępie na macOS. Zacznij bezpłatny okres próbny poniżej, zrób pierwsze pobieranie, póki masz jeszcze internet, a potem wjedź w tunel kolejowy — albo po prostu wyłącz Wi-Fi — i podyktuj to samo zdanie jeszcze raz.
Dyktuj dalej, gdy sieć padnie
Zacznij bezpłatny okres próbny, pobierz model raz i przetestuj ten sam prompt z wyłączonym Wi-Fi.
Start free trialEarly access: we'll email you the moment the macOS build is ready — your 14 days start when you first sign in from the app.
Czytaj dalej
Dokąd trafia Twój głos: prywatność dyktowania, szczerze
Dokąd może trafiać dźwięk dyktowania, o co pytać w kwestii prywatności i jak Keebye utrzymuje zamianę mowy na tekst oraz czyszczenie na Twoim Macu.
Dlaczego aplikacje do dyktowania zjadają pierwsze słowo
Naciskasz skrót, mówisz, a pierwsze słowo jest ucięte. Dlaczego zimny start obcina słowa i jak pomaga ciepły mikrofon z 500 ms pre-rollu.
Twoje dyktowanie nigdy nie powinno po prostu zniknąć
Dyktujesz długą myśl, wstawianie zawodzi, tekst znika. Dlaczego aplikacje gubią słowa i jaką lokalną historię samego tekstu przechowuje Keebye.