Все потоки
Поиск
Написать публикацию
Обновить
4.93

Голосовые интерфейсы *

управляем устройствами при помощи голосовых команд

Сначала показывать
Порог рейтинга
Уровень сложности

Голосовой бот + телефония на полном OpenSource. Часть 2 — учим бота слушать и говорить

Время на прочтение5 мин
Количество просмотров12K

В первой части статьи я описал как создать простого чат бота, в этой статье мы научим нашего бота говорить и слушать русскую речь и переводить ее в текст.
Читать дальше →

Исследовательский практикум. Голосовой UX – как сделать голосового виртуального ассистента лучшей версией человека

Время на прочтение9 мин
Количество просмотров1.8K

Почему это важно?


Знаете, какой самый надежный способ сделать что-то идеально правильно? Надо просто подсмотреть это в живой природе, т.е. постараться увидеть – как данную проблему решила эволюция, ну или, если хотите, реализовал Бог, т.к. характер природы мироустройства каждый выбирает для себя сам. Если бы кнопки были самым оптимальным вариантом реализации интерфейса общения, то они, наверное, располагались бы у нас на лбу, ну или на каком-нибудь другом видном и легко доступном месте.

Любой UI, все эти бесконечные скроллы, кнопки, области и т.д. – не очевидны, и это почти всегда пользовательская боль. В отличие от них голос – это, наоборот, очень естественно. Проблема состоит в том, что при всей кажущейся простоте, разработать качественный голосовой интерфейс довольно сложно. Существует мнение, что голосовой интерфейс – это идеальная реализация интерфейса, который вроде бы являются частью системы, но, в то же самое время, не существует в ней в виде физического отображения.

image

Проектирование голосового интерфейса по сути своей является проектированием пользовательских диалогов. И критериев эффективности здесь довольно много – степень удовлетворенности клиента, глубина разговора и т.д. Сложность разработки диалогов, кроме всего прочего состоит в том, что необходимо сделать их похожими на общение людей друг с другом, а не на комиксовые варианты общения человека с роботом.
Читать дальше →

Современное SEO: качество страниц

Время на прочтение3 мин
Количество просмотров10K

В конце мая с. г. в Google сообщили, что теперь они намерены в алгоритм ранжирования сайтов ввести понятие "качества страницы" (page experience). А в понятие качества страницы они включили: скорость загрузки страницы, интерактивность (т.е. например, чтобы кнопка быстро приобретала способность нажиматься), и стабильность контента во время загрузки (т.е. вы не должны случайно нажимать кнопки или ссылки из-за того что всё на экране прыгает пока страница грузится). Кроме того страница должна быть оптимизирована для мобильных устройств (mobile friendly), безопасна для просмотра, передаваться по протоколу https (не http), и не иметь навязчивой рекламы между страницами (intrusive interstitials).

Читать далее

Голос в мобильном приложении: учимся вызывать экраны и заполнять формы без рук

Время на прочтение8 мин
Количество просмотров2.8K

Как быстро и бесшовно встроить голосовой интерфейс в ваше мобильное приложение? И как научить app-ассистента всему, что оно умеет? В прошлый раз мы взяли опенсорсное лайфстайл-приложение Habitica и показали, как добавить в него помощника и запилить базовый голосовой сценарий «из коробки» (уточнение прогноза погоды и времени).

Теперь перейдем к более продвинутому этапу -- научимся вызывать голосом определенные экраны, делать сложные запросы с NLU и form-filling с помощью голоса прямо внутри приложения.

Изучить туториал

Who is mr. Marvin?

Время на прочтение4 мин
Количество просмотров5.7K
В июне этого года мы выпустили на рынок умную колонку с голосовым помощником по имени Марвин. Она может работать до 2 часов без подзарядки. У колонки шесть микрофонов для обработки голосовых команд. ПО полностью разработано внутри МТС без использования сторонних коммерческих решений. В этом посте разберем основные функции и технические характеристики новинки.


Читать дальше →

Как встроить голосового помощника в любое мобильное приложение. Разбираем на примере Habitica

Время на прочтение7 мин
Количество просмотров9.9K
Вам не кажется, что многие мобильные приложения стали бы куда удобнее, будь в них голосовое управление? Нет, речь не о том, чтобы вести беседы с банковским ассистентом в чате техподдержки. В основном было бы достаточно голосовой навигации по приложению или form-filling в режиме диалога.

На примере Habitica (опенсорсный app для закрепления привычек и достижения целей, написан на Kotlin) Виталя Горбачёв, архитектор решений в Just AI, показывает, как быстро и бесшовно встроить голосовой интерфейс в функционал любого приложения.


Читать дальше →

Make <your iOS app> talk. Доклад Яндекса

Время на прочтение16 мин
Количество просмотров3.1K
Cтандартные библиотеки распознавания речи и озвучки текста в iOS дают массу возможностей. Из доклада VolkovRoman вы узнаете, как за счёт минимального количества кода научить ваше приложение проговаривать текст и кастомизировать озвучку. Рома рассмотрел API распознавания речи, его ограничения и особенности, lifecycle запроса на распознавание и методы работы в офлайн-режиме. Вас ждут примеры UX, обход существующих багов и особенности работы с аудиосессией.


— Всем привет, меня зовут Роман Волков. Сегодня мы поговорим о том, как научить ваше мобильное приложение общаться с вашими пользователями.
Читать дальше →

Объединяем закрытый WhatsApp и открытый SIP – Часть 1

Время на прочтение4 мин
Количество просмотров18K
Предыдущая статья «Как избежать блокировки в WhatsApp», хотя и получила много минусов, но тем не менее в течение 2 суток была самой читаемой статьей на Хабре – набрала более 20 тыс просмотров.

Поэтому я решил что нужно продолжать с хакингом монстров рассказывать о различных способах использования WhatsApp для бизнеса.

Всем кому интересно – добро пожаловать под кат.
Читать дальше →

Алиса на Kotlin: превращаем код в Яндекс.Станцию

Время на прочтение7 мин
Количество просмотров9.6K

В июне Яндекс устроил онлайн-хакатон среди разработчиков голосовых навыков. Мы в Just AI как раз обновляли наш опенсорсный фреймворк на Kotlin, чтобы поддержать новые прикольные фичи Алисы. И нужно было придумать какой-то простенький пример для README…

О том, как пара сотен строк кода на Kotlin превратилась в Яндекс.Станцию
читайте в нашей новой статье

Голосовой бот + телефония на полном OpenSource. Часть 1 — создание и обучение текстового бота RU

Время на прочтение4 мин
Количество просмотров13K

В наше время голосовые роботы набирают огромную популярность, от банального заказа такси, до продаж клиентам. Создание голосового бота сводится к трем базовым этапам.
Читать дальше →

Исследовательский практикум. Голосовые виртуальные ассистенты – что с ними не так?

Время на прочтение12 мин
Количество просмотров9.4K

Введение


Аналитики, исследующие сервисы чат-ботов и виртуальных ассистентов, обещают рост рынка как минимум 30% в год. В абсолютных цифрах, по состоянию на 2019 год, рынок оценивался более чем в 2 миллиарда долларов в год. Виртуальных голосовых помощников выпустили практически все ведущие мировые IT-компании, а основную работу по их популяризации уже провели Apple, Google и Amazon.

image

На российском рынке тоже наметились свои лидеры в этой области. Первым крупным игроком, запустивших собственного голосового ассистента в России, стал «Яндекс». По данным компании, публикуемым официально, Алисой пользуется 45 миллионов пользователей в месяц, а число ежемесячных запросов к ассистенту – составляет более 1 млрд. По мнению специалистов, 2020 год может стать для рынка голосовых ассистентов переломным – конкуренция платформ и брендов приведет к росту узнаваемости ассистентов.

В общем, то, что рынок голосовых ассистентов – интересная ниша, сомневаться не приходится. И первая идея, которая приходит в голову – взять любой из доступных сервисов ASR (Automatic Speech Recognition) и TTS (Text To Speech), связать их с конструктором ботов, имеющим поддержку NLU (Natural Language Understanding), и все! Тем более что все это довольно легко и быстро можно реализовать в облачных платформах, таких как Twilio и VoxImplant.

Проблема только в том, что полученный результат будет весьма посредственным. В чем же причина этого? Прежде всего попробуем понять почему совокупность довольно-таки неплохих технологий, собранных вместе дают такой посредственный результат. Это важно, т.к. в реальной жизни клиент всегда будет отдавать предпочтение тому сервису, чей голосовой сервис удобнее, интереснее, умнее и быстрее прочих.
Читать дальше →

Как создать голосового помощника на основе технологий с открытым кодом, не передав вовне ни байта секретной информации

Время на прочтение9 мин
Количество просмотров22K
image

Зачем нефтяникам NLP? Как заставить компьютер понимать профессиональный жаргон? Можно ли объяснить машине, что такое «нагнеталка», «приемистость», «затрубное»? Как связаны вновь принятые на работу сотрудники и голосовой ассистент? На эти вопросы мы постараемся ответить в статье о внедрении в ПО для сопровождения нефтедобычи цифрового ассистента, облегчающего рутинную работу геолога-разработчика.
Читать дальше →

Яндекс.Функции, Sublime Text и навыки для Алисы

Время на прочтение4 мин
Количество просмотров2.9K
27 июня Яндекс проводил онлайн-хакатон по разработке навыков для Алисы.

Решил и я принять в нем участие. Ранее навыки для Алисы я уже делал, но хостил их все на Google App Engine. Тут же я решил изучить что-то новое в рамках Хакатон. Яндекс активно продвигает свои Функции в Яндекс.Облаке для разработки навыков. Для навыков они бесплатны (правда, бесплатно не всё).
Вот и нашлась тема для изучения

Ближайшие события

Сущности для платформы Яндекс.Диалоги

Время на прочтение4 мин
Количество просмотров2.8K
В прошлую субботу состоялся онлайн-хакатон по разработке навыков Алисы. Жаль, что никто не написал здесь об итогах, любопытно почитать истории победителей. Но раз желающих не нашлось, то поделюсь своей историей.

Я делаю голосовой интерфейс для управления брокерским счётом, уже писал об этом на Хабре — Алиса, купи акции Яндекс. В какой-то момент мне понадобилось извлекать из запроса цену в разных валютах. Уверен, я не первый, кто столкнулся такой задачей, поэтому попытался найти готовые интенты или именованные сущности на GitHub, но ничего не нашёл. На носу был хакатон, много разработчиков в одном месте, подумал я, если каждый поделится своими наработками, то сущностей наберётся на целую библиотеку. Так родилась идея для репозитория «библиотека сущностей».
Читать дальше →

Голосовой помощник для операций на Московской бирже: «Алиса, купи акции Яндекс»

Время на прочтение5 мин
Количество просмотров4K
— Алиса, купи одну акцию Яндекс.
— Заявка на покупку Яндекс по рыночной цене, тикер: YNDX, количество акций: 1, для подтверждения скажите «подтверждаю», для отмены скажите «нет».
— Подтверждаю.
— Заявка исполнена.


Я делаю голосовой интерфейс для совершения операций с ценными бумагами на Московской бирже с открытым исходным кодом. Идею вынашивал с детства. Помню, впервые увидел голосовой помощник в каком-то фильме около двадцати лет назад, в то время у меня даже проводного телефона не было в доме. А сейчас у меня безлимитное подключение к сети Интернет, брокерский счёт, которым я могу управлять через смартфон. За двадцать лет технологии стали доступнее.
Читать дальше →

Управление Яндекс.Станцией и другими колонками с Алисой из Home Assistant

Время на прочтение4 мин
Количество просмотров129K

Мы привыкли называть умными устройства, которыми можем управлять, не вставая с дивана. Включить лампочку, вентилятор, кофеварку или стиральную машину.


Колонки с Яндекс Алисой хоть и называются умными, но вы не можете изменить громкость не находясь рядом с колонкой (орать через всю комнату не считается). Вы не можете перемотать песню из мобильного приложения Яндекса. Или остановить сказку, запущенную на колонке в детской, из своей кровати в спальне.


В январе 2020 кто-то обнаружил, что Яндекс.Станция поддерживает некий локальный протокол. На GitHub начали появляться проекты по управлению Яндекс.Станцией. Мне хватило пару часов, чтоб разобраться и выпустить первую версию компонента для Home Assistant. Это достаточно популярная система домашней автоматизации, написанная на языке Python.


На сегодняшний день компонент поддерживает управление всеми колонками с Яндекс Алисой и при желании может выглядеть так:


Читать дальше →

Голосовые навыки с нуля: как Алиса учила песни Цоя, не давала уснуть за рулем и принесла мне шесть наград от Яндекса

Время на прочтение10 мин
Количество просмотров8.8K
Необязательно посвящать годы изучению разговорных интерфейсов, чтобы у тебя получился крутой голосовой навык. Меня зовут Сергей Кул, и я считаю, что каждый навык – это маленький стартап: либо выстрелит, либо нет. Я создал первый голосовой скилл меньше года назад, ничего не зная о разработке ботов и голосовом UX. Теперь у меня пять Премий Алисы и специальный приз от Яндекса. Рассказываю, как так вышло и чему я научился, осваивая вместе с Алисой JavaScript, формулу Видмарка и песни «Кино».



Как создавать навыки без специальных навыков


1 июля 2019 года я начал активно искать какое-то новое направление для бизнеса в интернете. Работа в IT приелась, хотелось сменить деятельность. И вдруг наткнулся на статью, что для голосового ассистента Алисы сторонние разработчики могут делать свои навыки. Это было озарение! Понял, что хочу освоить такую разработку и закрепиться в этой нише. Что на тот момент я знал про голосовые интерфейсы или разработку ботов? НИЧЕГО! Совершенно! Но решил в течение одного месяца всё изучить и сделать первый навык.

Что умеет Dialogflow?

Время на прочтение11 мин
Количество просмотров42K


26 ноября в Москве прошла третья в своей истории Conversations – конференция по разговорному искусственному интеллекту для разработчиков и бизнеса, на которой был представлен новый доклад компании «Аэроклуб ИТ». В прошлый раз речь шла об одном из наших исследовательских проектов, теперь же рассказ был сосредоточен вокруг инструмента, который мы применяем для чат-ботов. Сперва я планировал просто написать статью по мотивам доклада, но получился целый tutorial, так что под катом вас ждёт довольно подробное описание некоторых возможностей Dialogflow, и даже попадутся неочевидные «хаки».
Читать дальше →

Разработка приватных навыков для Алисы. О чём не учат в Школе Алисы

Время на прочтение4 мин
Количество просмотров10K
Каждый раз, когда заканчиваю генеральную уборку, то появляется ощущение, как будто что-то забыл. На прошлой недели я записал на бумаге все задачи, которые надо сделать, чтобы убрать квартиру полностью — получилось три листа формата А4.

список работ на трёх листах А4
Так выглядит список задач по уборке однокомнатной квартиры.

Я активный пользователь Яндекс.Станции, поэтому решил запихнуть этот огромный список в Алису, чтобы во время генеральной уборки спрашивать у «девчонки в коробчонке», что делать дальше. Варианты названия для навыка крутились вокруг слов прораб и дворецкий. Давно мечтал о доме с дворецким, поэтому остановился на названии «Мой Дворецкий» и активационной фразе: «Алиса, спроси у моего дворецкого, что делать дальше».
Читать дальше →

Рисуем речь: Software Automatic Mouth

Время на прочтение9 мин
Количество просмотров14K
Прошлогоднюю статью «Рисуем звук» я завершил признанием: «А можно ли нарисовать звук с чистого листа, не обводя спектрограмму аудиозаписи? Скажу честно, у меня не полу­чилось.» Но недавно я узнал про S.A.M. — выпущенный в 1982 г. компанией Don’t Ask Software, он стал первой коммерчески успешной программой для синтеза речи на ПК. В середине 2000-х немецкие демосценщики Tobias Korbmacher и Sebastian Macke взяли ассемблерный листинг S.A.M. для Commodore 64 и сконвертировали его в нечитаемый, но работоспособный код на Си; затем в 2014 г. британец Vidar Hokstad постарался привести код на Си в читаемый вид — вручную давая переменным осмыс­ленные названия и заменяя goto на циклы и ветвления; и наконец, в 2017 г. ещё один немец Christian Schiffler переписал код с Си на JavaScript. Испробовать его в действии как «чёрный ящик» можно на discordier.github.io/sam.

По-моему, примитивный синтезатор речи на JavaScript — самый удобный подопытный образец для тех, кто хочет разобраться, как в целом работает синтез речи. Мой форк S.A.M. с существенно почищенным кодом и комментариями доступен на github.com/tyomitch/sam. К сожалению, у предыдущих авторов интерес к S.A.M. успел угаснуть, и им сейчас не до разбора пулл-реквестов в хобби-проект многолетней давности.

S.A.M. состоит из четырёх функциональных компонентов:

  1. Reciter переводит текст на английском в фонемную запись: например, «A LITTLE TOO LOW» (пример из приложенной к S.A.M. демо-программы) превращается в «AH LIHTUL TUW5 LOW».
  2. Parser превращает фонемную запись в фонетическую: из «AH LIHTUL TUW5 LOW» получается "AH, ,L,IH,DX,AX,LX, ,T,*,*,UX,WX, ,L,OW,WX". Для каждого выводимого фона Parser задаёт также длительность и тон.
  3. Renderer строит по фонетической записи массив частот, амплитуд и прочих акустических характеристик;
  4. Последний, безымянный компонент (функция ProcessFrames) превращает массив частот и амплитуд в PCM-поток для аудиовывода.

В этой статье я разберу все четыре компонента по очереди.
Читать дальше →