Представляем Яндекс.Телефон — это первый смартфон, который объединяет привычные приложения Яндекса в единую экосистему, в центре которой находится Алиса.
Сегодня мы расскажем читателям Хабра, почему тесная связь с «железом» так важна для любого голосового помощника. Мы объясним, чем определитель номеров Яндекса отличается от простого поиска по каталогу организаций. Вспомним про машинное обучение и сравним клавиатуры. Расскажем о каталоге приложений и ответим на другие вопросы.
Алиса
Впервые мы рассказали историю Алисы и её технологий читателям Хабра ещё год назад. За это время она поселилась во многих приложениях Яндекса, в Станции и даже в устройствах наших партнёров. Алиса обучилась новым навыкам, созданным сторонними разработчиками с помощью платформы Диалоги. Многие пользователи полюбили Алису. В том числе читатели Хабра, если верить результатам опроса из стороннего поста.
Изначально Алиса работала лишь внутри приложений Яндекса, но люди хотели бы обращаться к ней с любого экрана или даже не касаясь телефона. Но сделать это не просто. И не только из-за ограничений операционных систем.
Качественное распознавание голоса – тяжелая задача для любого современного «железа», поэтому Яндекс, как и некоторые другие лидеры индустрии, использует нейросети в «облаке». Но чтобы помощник не только понимал речь, но и умел реагировать на «Слушай, Алиса», нужно кое-что ещё.
Устройство не может позволить себе отправлять в сеть все окружающие звуки. Это дорого и долго. Инженеры решили эту задачу с помощью небольшой нейросети, которая работает на устройстве быстро и экономно и реагирует лишь на активационную фразу. Но даже такое простое решение нуждается в специальном сопроцессоре, который будет отрабатывать голосовые сценарии, экономя ресурсы основного CPU. Но доступ к подобному «железу» любого устройства закрыт для сторонних приложений. А значит, Алисе нужен собственный смартфон.
Яндекс.Телефон использует платформу Qualcomm Aqstic для работы со звуком. Это значит, что теперь Алиса услышит вас поверх любого экрана системы. Алисе больше не нужно стесняться своих возможностей — система больше не ограничивает её. Теперь она ведёт себя проактивно. Например, подскажет погоду или ситуацию на дорогах прямо на главном экране. И сделает это не в виде серых системных уведомлений, а в формате диалога.
Необязательно держать Телефон в руках. Если включить Smart Unlock, то помощник отзовётся, даже если аппарат просто лежит где-то рядом. Например, перед сном можно с закрытыми глазами попросить Алису завести будильник, включить звуки природы или выбрать сказку для ребёнка.
Можно долго рассказывать об Алисе, но вернёмся к основной функции любого телефона — к возможности совершать звонки.
Справочник Яндекса
Яндекс специализируется на поиске. В том числе на поиске организаций. У нас есть Справочник, который содержит информацию об организациях России. Их адреса, номера, режим работы и отзывы клиентов. Эти данные пополняются и корректируются как пользователями, так и организациями.
46 млн человек в месяц ищут организации с помощью Справочника. Например, через Карты или просто в Поиске, чтобы позвонить в один клик из результатов. В Яндекс.Телефоне им станет ещё проще это сделать. Теперь можно искать организации прямо в телефонной книжке.
Справочник также используется в качестве определителя для входящих звонков. Если номер есть в нашей базе, то пользователь Телефона увидит название организации. Но это лишь верхушка айсберга нашего определителя.
Определитель номеров Яндекса
Весной мы рассказали читателям Хабра историю создания нового определителя номеров Яндекса. Он использует не только данные Справочника, но и явные отзывы людей о входящих звонках. Эти отзывы оставляют пользователи приложения Яндекс для Android. И их много. Поэтому поверх всех наших знаний мы применяем машинное обучение, чтобы классифицировать неизвестные номера и предупреждать людей о нежелательных звонках.
Например, о рекламе, мошенниках, опросах или даже коллекторах.
Клавиатура Яндекса
Яндекс ещё в прошлом веке научился искать в интернете с учётом морфологии и других особенностей русского языка. Кроме того, пользователи рунета каждый день вводят в Яндексе сотни миллионов запросов и часто ошибаются. Поэтому наш Поиск научился не только разбираться в правилах языка, но и понимать закономерности ошибок.
Этот опыт мы применили в клавиатуре Телефона, которая обучается на реальных и актуальных запросах пользователей. Наша клавиатура использует машинное обучение для проверки правописания и формирования подсказок. Специальная ML-библиотека работает исключительно локально и не отправляет введённый текст в сеть.
Небольшое сравнение подсказок клавиатуры Яндекса (слева) с подсказками другой популярной клавиатурой для Android:
Для качественной применения машинного обучения важны факторы, которые и будут анализироваться. Клавиатура Яндекса учитывает не только соседние буквы и слова, но и геометрические факторы. Например, учитывает, в какую именно точку экрана нажал пользователь. Так, если человек коснулся границы кнопки, это может быть признаком промаха.
После учёта всех факторов клавиатура может либо согласиться с вариантом пользователя, либо предложить ему традиционную подсказку, либо самостоятельно подменить букву. То есть не исправить слово после ввода пробела, а изначально подставить правильную букву! Это применяется только при значительной уверенности в ошибке пользователя и позволяет ускорить набор текста.
Работа с исправлениями и языком в целом в рамках клавиатуры заслуживает отдельного поста, с которым мы постараемся вернуться в будущем.
Система и железо
В основе Яндекс.Телефона операционная система Android 8.1, которую мы планируем обновлять и уже работаем над версией 9.0. Поэтому мы бережно обращались с компонентами Android Open Source Project, чтобы не усложнять себе процесс сборки новых версий, и наши пользователи могли получать обновления как можно раньше.
Искать и устанавливать новые приложения просто. В Телефоне установлены каталог Google Play и его сервисы, необходимые для нормальной работы привычных приложений. И никаких ограничений. Хотите сменить поиск, помощника, браузер или карты? Пожалуйста. Использовать сторонний лончер? Без проблем.
Цена Яндекс.Телефона — 17990 рублей. Это средний ценовой сегмент. Он достаточно массовый, чтобы устройство могли себе позволить не только единицы, но не на столько, чтобы экономить на важном. Например, мы не стали отказываться от NFC, потому что бесконтактная оплата — это удобно. Как и сканер отпечатка пальца. Для защиты от царапин используем стекло Gorilla Glass как спереди, так и сзади. Ещё важно вспомнить про чип Qualcomm Aqstic, который не только помогает Алисе работать с голосом, но и обеспечивает достаточно качественный звук. Кстати, «джек» на 3,5 мм тоже никто не выбрасывал. А вот «чёлки» на экране у нас нет.
Яндекс.Телефон — это первый смартфон, который объединяет технологии Яндекса и решения наших партнёров в единую экосистему, в центре которой находится Алиса. Мы стремились создать полезное, удобное и доступное устройство, без «велосипедов» и спорных решений. Мы верим, что у нас получилось. И будем рады любым отзывам и идеям от читателей Хабра. Спасибо!
Автор: Тимур Гаскаров