Застосунок диктування, який працює, коли не працює інтернет
Хмарне диктування зупиняється з мережею. Keebye перетворює мовлення на текст на пристрої: без інтернету, звук лишається на Mac, збої мережі не заважають.
Деякі скарги виринають, лише коли щось ламається, — тому їх легко недооцінювати, доки це не сталося з вами: хмарне диктування залежить від мережі. Збій у провайдера — і ваша клавіша диктування нічого не робить. Готельний Wi-Fi, який відвалюється, — і речення може зникнути у спінері. Літак. Тунель у метро. VPN, що перепідключається саме в найгіршу мить. Це не дефект якогось одного продукту; це і означає залежність від подорожі туди-й-назад.
Жорстокість тут у тому, що саме відмовляє. Якщо ляже ваш застосунок для нотаток, ви відкриєте текстовий файл. Якщо ляже ваше диктування, ви втратите спосіб введення — те, під що ви виробили м’язову пам’ять, посеред речення, зазвичай тоді, коли ваші руки зайняті чимось іншим. А диктували ви саме через це.
Під скаргою про доступність лежить питання приватності: чи покидає звук вашого голосу машину? На шляху хмарної транскрипції записи того, як ви думаєте вголос — імена клієнтів, невипущені функції, проблема з безпекою, яку ви описуєте колезі, — подорожують до чужої інфраструктури, щоб стати текстом. Той самий шлях може залежати від сесій, облікових записів і доступності сервісу, які вам не підконтрольні.
Я побудував відповідь Keebye на це ще до того, як сформулював її як функцію, бо моя власна вимога була різкою: воно мало працювати з вимкненим Wi-Fi. Ось як це насправді виглядає — і скільки коштує.
Чому хмарне диктування відмовляє до нуля
Механіку на рівні категорії варто проговорити, бо вона пояснює, чому ця скарга ніколи не зникає повністю, хоч би якими хорошими ставали продукти.
Цикл хмарного диктування має щонайменше чотири ланки: захопити звук на вашій машині, відправити його на сервер, виконати там інференс, відправити текст назад. Кожна ланка — це залежність: ваша мережа, їхня мережа, їхній рівень автентифікації, їхня потужність, їхня безвідмовність. Зазвичай ланцюг цілий. Але коли рветься будь-яка ланка, рветься весь цикл — і рветься до нуля. Не «повільніше», не «менш точно» — до вашого курсора не надходить нічого. Деградацію можна було б стерпіти; диктування деградує до тиші.
Постачальники можуть серйозно проєктувати проти цього, але вони не можуть полагодити ланки, якими не володіють: готельний роутер, політ, ваш корпоративний VPN, аварію на магістралі між вами й ними. Інструмент, чия доступність залежить від кількох систем, може відмовити, коли недоступна будь-яка одна з них.
Що відбувається, коли немає хмари, з якої можна відкотитися?
Архітектура Keebye відповідає на це питання, прибираючи його. Перетворення мовлення на текст виконується повністю на пристрої — моделі ONNX, локальний інференс, на власному чипі вашого Mac. На шляху диктування нуль мережевих викликів. Не «ми їх мінімізуємо», не «ми їх групуємо» — нуль. Телеметрії теж немає. Жодної. Коли ви утримуєте клавішу й говорите, від вашого імені машину не покидає жоден пакет.
Хочу підкреслити архітектурну суть, бо саме вона відрізняє це від «офлайн-режиму». Офлайн-режим — це запасний варіант: звичайний шлях веде у хмару, а коли хмара недосяжна, керування перебирає деградований локальний шлях — якщо застосунок вчасно помітить, якщо локальний шлях підтримують, якщо передача спрацює посеред речення. У Keebye такої передачі немає, бо немає хмарного шляху, з якого передавати. Локальний інференс — не запасний план; це єдиний план. Збій десь угорі не може його зламати з тієї самої причини, з якої вимкнення світла в іншій країні не гасить вашу настільну лампу. Імунітет за конструкцією, а не через запасний варіант.
Тут-таки без окремої сторінки налаштувань отримує відповідь і тихіша скарга. Ваш звук ніколи не покидає машину — не «зашифрований у передачі», не «знеособлений», а просто ніколи не надісланий, бо надсилати його нікуди. Якщо ви ввімкнете історію диктувань, зберігатиметься лише текст, у локальній базі SQLite на вашому власному диску. (Ця історія — окрема історія про зручність, про повторювану скаргу «куди поділося моє диктування?», — про неї ми написали в ваше диктування не має просто зникати.) А крихкість облікових записів і сесій зникає разом із самими обліковими записами: на шляху диктування немає хмарної сесії, якій можна прострочитися, тож між вами й робочою гарячою клавішею не стоїть жодна повторна автентифікація.
Єдиний випадок, коли інтернет вам таки потрібен
Обов’язкова чесність, сказана прямо: моделі мають якось потрапити на вашу машину. Під час першого запуску Keebye завантажує свою мовленнєву модель — приблизно 700 МБ для англійського рушія й близько 1,3 ГБ, якщо ви ввімкнете багатомовний. Це справжнє завантаження, один раз на рушій, і для нього потрібен інтернет.
Після цього моделі живуть на диску, а транскрипція працює проти них локально — з мережею чи без — доки ви їх не видалите чи не заміните. Але якщо той перший запуск припаде на літак, вам не пощастить до самої посадки: робіть налаштування до подорожі, а не під час неї. Хай краще ви почуєте це від мене, ніж з’ясуєте над Атлантикою.
Питання точності, чесна відповідь
Завантаження — це маленьке застереження. Ось більше, бо інструменти на пристрої люблять його пропускати.
Найбільші хмарні моделі можуть бути точнішими за модель на пристрої. Модель, що займає серверну стійку, має потужність, якої немає у файла на 700 МБ, і вдавати інше означало б образити ваш розум. Що я скажу — і в що вірю, проживши з обома, — це що розрив дуже помітно звузився, а головне, що режими відмови різняться за природою. Найгірший день моделі на пристрої — це недочуте слово, яке ви виправляєте. Найгірший день хмарної моделі — це нуль виводу, бо її точність множиться на її доступність, а доступність і є тим множником, що йде в нуль у потязі. Який режим відмови ви радше візьмете на себе, залежить від вашого дня; у моєму забагато потягів.
Сьогодні це лише macOS, і це ранній доступ. Збірки для Windows немає, а шорсткості раннього доступу є. Якщо у вас Windows на першому місці, чесна відповідь така: Keebye поки що не може вам допомогти.
Якщо ви зважуєте це проти інструмента, яким уже користуєтеся, сторінки порівнянь — це неупереджена версія цього аргументу. Keebye vs Superwhisper порівнює два продукти з шляхами транскрипції на пристрої; Keebye vs Wispr Flow розглядає рішення «локально проти хмари». А якщо альтернатива, яку ви зважуєте, — це диктування, вбудоване в macOS, то голосове диктування для Mac описує, що вбудоване робить добре і де Keebye відрізняється.
Доступність — це функція
Категорія диктування роками змагалася у відсотках точності, і точність важлива. Але скарга, яка справді змушує людей міняти інструменти, рідко звучить як «воно раз мене недочуло». Вона звучить як «воно знову перестало працювати, я не знаю чому, а виправлення передбачало вхід кудись». Доступність — нудна, неефектна доступність — це та функція, яку помічаєш лише як її відсутність.
Спосіб зробити метод введення таким же надійним, як клавіатура, — дати йому такий самий список залежностей, як у клавіатури: машина перед вами, і більше нічого. У цьому весь задум.
Keebye перебуває в ранньому доступі для macOS. Почніть безкоштовний пробний період нижче, зробіть завантаження першого запуску, поки ще є інтернет, а тоді заїжджайте в тунель — або просто вимкніть Wi-Fi — і продиктуйте те саме речення ще раз.
Диктуйте далі, коли мережа зникає
Почніть безкоштовний пробний період, завантажте модель один раз і перевірте той самий промпт із вимкненим 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.
Читати далі
Куди йде ваш голос: приватність диктування, чесно
Куди може потрапити звук диктування, про що питати щодо приватності і як Keebye тримає перетворення мовлення на текст та очищення на вашому Mac.
Чому застосунки диктування з’їдають ваше перше слово
Натискаєте гарячу клавішу, говорите, а перше слово обрізано. Чому холодний старт ріже слова й як допомагають теплий мікрофон і 500 мс попереднього запису.
Ваше диктування не має просто зникати
Диктуєте довгу думку, вставлення зривається, текст зникає. Чому застосунки гублять слова і яку локальну, лише текстову історію зберігає Keebye.