Вопросы, которые приходят.
Ответы прямые, без обиняков.
деньги и свобода
Бесплатно, и правда.
Правда, это бесплатно?
Да. Yappy — открытый код под лицензией MIT. Слушать то, что читаешь, — вопрос доступности, а инструменты доступности не должны требовать банковскую карту. На компьютере нет платной версии и нет рекламы. На телефоне (iPhone, iPad и Android) пробный попугай держит три документа одновременно на своей вешалке, без ограничения по времени; нужны бездонная вешалка, типография аудиокниг и мост с компьютером — заводите его с Yappy Parlanchín, по подписке или одним платёжом навсегда. Без учётной записи и без рекламы в любом случае.
В чём подвох? Как это финансируется?
Никакого подвоха: серверов нет, значит, и платить за них не нужно. Синтез речи выполняется прямо на вашем устройстве, поэтому у Yappy нет расходов на пользователя. Это личный проект автора, опубликованный потому, что он уже существовал и мог бы пригодиться ещё кому-то.
А бесплатная пробная версия есть?
Нет, и это намеренно. Пробной версией служит насест на три документа: у неё нет срока давности, и на седьмой день она не превращается в списание денег. Если Yappy вам подходит, вы поймёте это и без секундомера перед носом.
Можно ли публиковать сгенерированный звук в подкасте или в видео?
Код Yappy — под лицензией MIT, и условий он не ставит. У голосовой модели, Supertonic 3, своя лицензия: открытая, типа OpenRAIL-M, с оговорками по использованию. Изучите её на странице модели перед коммерческим использованием: эта часть от Yappy не зависит, и ручаться за неё мы не можем.
ваши тексты никуда не уходят
Конфиденциальность — поимённо.
Мои тексты отправляются на сервер?
Нет. Синтез речи, расшифровка и извлечение статей происходят прямо на вашем устройстве. Всё, что вы передаёте Yappy, никуда не отправляется: ни учётных записей, ни копий, да и серверов Yappy, где их можно было бы хранить, просто не существует. С сетью работают четыре конкретные вещи, и все они перечислены в политике конфиденциальности.
Собирает ли Yappy статистику использования?
Да, собирает, и лучше сказать это без обиньяков. Мобильное приложение отправляет анонимную статистику использования: она включена по умолчанию и отключается в «Задней комнате». Путешествует название события из закрытого списка (открыли приложение, какой шаг вводного знакомства вы смотрите, какой план нажали, закончилось ли чтение), несколько технических данных без содержания (типы, длительности и коды ошибок), случайный идентификатор установки, модель устройства, версия системы, язык и версия приложения. Никогда: ни ваше имя, ни ваша почта, ни текст, который вы читаете, ни название документа, ни ссылка, ни рекламный идентификатор. И ничего не уходит в Google, ни в Firebase, ни к какой-либо аналитической компании: всё уходит в Worker и базу данных D1 на Cloudflare самого автора. На компьютере никакой статистики нет вовсе.
А мост между телефоном и компьютером?
Это прямое соединение двух ваших устройств со сквозным шифрованием на базе QUIC и протокола iroh. Для сопряжения наводите камеру на QR-код, который показывает компьютер, а полученный ключ можно в любой момент отозвать там же. Сервера Yappy между ними нет, потому что серверов Yappy не существует.
Работает ли приложение без интернета?
Да, и навсегда. После первичной загрузки модели — около 200 МБ на телефоне и около 398 МБ на компьютере — Yappy работает в режиме полёта: вставляйте текст, открывайте документы, синтезируйте и экспортируйте. Сеть нужна только для передачи новых ссылок, по понятным причинам. Облачной синхронизации тоже нет: библиотека живёт на вашем устройстве, а мост — самое близкое к перекладыванию чего-то с одной машины на другую.
то, что звучит
Голос и языки.
Какая модель голоса используется?
Supertonic 3. Открытая модель от Supertone, примерно на 99 миллионов параметров: на компьютере занимает 398 МБ, на телефоне — 200 МБ, а синтезирует быстрее реального времени на любом ноутбуке последних лет. Модель работает на уровне символов — потому и существует сценарист: он превращает числа, аббревиатуры и символы в слова до того, как их увидит голос.
На каких языках он говорит?
Немецкий, арабский, болгарский, чешский, корейский, хорватский, датский, словацкий, словенский, испанский, эстонский, финский, французский, греческий, хинди, венгерский, индонезийский, английский, итальянский, японский, латышский, литовский, нидерландский, польский, португальский, румынский, русский, шведский, турецкий, украинский и вьетнамский. Тридцать один. И все десять голосов — полиглоты: один и тот же голос читает любой из них, не меняя тембра.
А если в документе смешаны языки?
Yappy определяет язык документа, а дальше, абзац за абзацем, язык каждого фрагмента: английская цитата внутри эссе на русском прозвучит по-английски, тем же голосом, и трогать ничего не нужно. А если определение ошибётся, язык можно задать вручную.
Чем Yappy отличается от VoiceOver или «Экрана вслух»?
Системные скринридеры читают экран как есть: системная просодия и никакой памяти. Yappy готовит текст, прежде чем его произнести (вычищает статью, превращает числа и аббревиатуры в слова, расставляет паузы), читает его естественным голосом, помнит, где вы остановились, экспортирует аудиокниги и продолжает звучать при заблокированном экране. Родственные инструменты, разные ремёсла — и пользоваться обоими можно одновременно, они друг другу не мешают. Yappy не заменяет скринридер и не пытается.
то, что на входе
Документы.
Какие форматы он принимает?
Веб-статьи (страница вычищает себя сама), видео — по опубликованной расшифровке, PDF, EPUB, Word, ODT, RTF, Markdown, обычный текст, .pptx, .xlsx, .csv и голосовые заметки. На телефоне всё через меню «Поделиться»; на компьютере ещё и перетаскиванием или горячими клавишами. А если на компьютере установлен pandoc, список расширяется до LaTeX, reStructuredText, Org и ещё нескольких.
А отсканированные PDF, без текста внутри?
Проходят через локальное распознавание текста перед чтением — на компьютере, на iPhone и на Android, и там тоже ничего не выходит за пределы устройства. Везде бесплатно: распознавание не входит в подписку. Рассчитано на печатный текст латиницей; остальные письменности распознаются только на iPhone, iPad и Mac — движком Apple. Кривой или размытый скан даст то, что даст любое распознавание, но приличный читается целиком.
Может ли приложение читать книги, купленные в магазине?
Только те, которые вы можете открыть. EPUB без защиты читается целиком, вместе со своими главами. Книги с DRM из магазина не прочитать — ни здесь, ни где-либо ещё: замок поставил не Yappy, и притворяться, будто у нас есть ключ, мы не будем.
Как удалить что-нибудь из библиотеки?
Прямо в библиотеке: у каждого документа есть пункт «Забыть», и вместе с ним уходит и его аудио. Экспортированные файлы (.m4b, .mp3, .wav) — ваши, они лежат там, куда вы их сохранили; удалять и перемещать их — дело Finder или приложения «Файлы».
когда что-то ломается
Неполадки и помощь.
Почему первый синтез занимает на несколько секунд больше?
В первый раз модель загружается в память. Потом она уже разогрета, и следующие фразы выходят на лету. Если вы только что установили приложение на компьютер, к первому ожиданию добавится ещё и скачивание голосовой модели.
Слово произносится неправильно. Можно его научить?
Словаря произношения для пользователя нет, так что быстрый путь такой: напишите слово в редакторе так, как оно звучит, — модель читает буквы и вас послушается. Если это общий случай (сокращение, аббревиатура, единица измерения), расскажите о нём в issues на GitHub: таблицы нормализатора пополняются такими случаями.
Видео отправлено, а оно молчит.
Yappy берёт опубликованную расшифровку видео, а не расшифровывает его звук. Если у видео расшифровки нет, читать нечего. А если видео ваше и оно лежит у вас файлом, отправьте файл: тогда его расшифрует уже локальное ухо.
Нашлась ошибка. Куда сообщить?
В issues на GitHub или письмом на [email protected]. Если приложите текст, на котором случился сбой (если можете им поделиться), и укажете вашу систему, всё починят быстрее.