Как создать голосовой помощник своими руками

Создайте свой первый Voice Assistant

Дата публикации Mar 28, 2019

В настоящее время неудивительно слышать, как кто-то говорит с кем-то, кого там нет. Мы просим Алексу узнать погоду и снизить температуру на термостате. Затем мы спрашиваем Сири, каково наше расписание на день, и звонить людям. Сейчас мы на связи больше, чем когда-либо, используя нашу технологию голосового и голосового интерфейса. Я не могу больше делать вещи вручную! Это действительно будущее.

Введение

Кто не хочет иметь роскошь иметь помощника, который всегда прислушивается к вашему звонку, предвидит все ваши потребности и при необходимости принимает меры? Эта роскошь теперь доступна благодаря голосовым помощникам на основе искусственного интеллекта.

Голосовые помощники поставляются в небольших упаковках и могут выполнять различные действия, услышав вашу команду. Они могут включать свет, отвечать на вопросы, играть музыку, размещать онлайн-заказы и делать все виды искусственного интеллекта.

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

Что такое голосовой помощник?

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

Позвольте мне привести вам примерBraina (мозг искусственный)который является интеллектуальным личным помощником, интерфейсом на человеческом языке, автоматизации ипрограммное обеспечение для распознавания голосадля ПК с Windows. Braina — это многофункциональное программное обеспечение для искусственного интеллекта, которое позволяет вам взаимодействовать с вашим компьютером, используяголосовые командына большинстве языков мира. Braina также позволяет точно преобразовывать речь в текст на более чем 100 разных языках мира.

История Голосовых Помощников

В последнее время голосовые помощники стали основной платформой после того, как Apple интегрировала самый удивительный Virtual Assistant — Siri, который официально является частью Apple Inc. уникальный аппарат под названием Shoebox. Это был фактический размер обувной коробки, он мог выполнять научные функции и мог воспринимать 16 слов, а также произносить их человеческим узнаваемым голосом с цифрами от 0 до 9.

В период 1970-х годов исследователи из Университета Карнеги-Меллона в Питтсбурге, штат Пенсильвания, — при значительной помощи Министерства обороны США и его Агентства перспективных исследований в области обороны (DARPA) — создали Harpy. Он мог понимать почти 1000 слов, что примерно соответствует словарному запасу трехлетнего ребенка.

Крупные организации, такие как Apple и IBM, рано, в 90-х годах, начали создавать вещи, использующие голосовое подтверждение. В 1993 году Macintosh начал создавать системы распознавания речи на своих компьютерах Macintosh с PlainTalk.

В апреле 1997 года Dragon NaturallySpeaking был первым продуктом с постоянной диктовкой, который мог охватить около 100 слов и преобразовать его в читаемый контент.

Сказав это, как здорово было бы создать простой голосовой помощник для рабочего стола / ноутбука, который имеет возможность: —

Читайте также:  Каре своими руками любимому

1. Откройте субреддит в браузере.
2. Откройте любой веб-сайт в браузере.
3. Отправьте электронное письмо своим контактам.
4. Запустите любое системное приложение.
5. Сообщает вам текущую погоду и температуру практически любого города
6. Сообщает вам текущее время.
7. Привет
8. Проиграйте песню на медиаплеере VLC (конечно, вам нужно иметьVLC медиаплеерустановлен на вашем ноутбуке / рабочем столе)
9. Изменить обои для рабочего стола.
10. Сообщает вам последние новостные ленты.
11. Рассказывает практически обо всем, что вы просите.

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

Новое видео от Нагеша Чаухана

Interaction_with_Sofia

photos.app.goo.gl

Надеюсь, вам, ребята, понравилось вышеупомянутое видео, в котором я общался с Софией. Теперь давайте начнем строить эту классную вещь .

Зависимости и требования:

Системные требования: Python 2.7, Spyder IDE, MacOS Mojave (версия 10 14)

Установите все эти библиотеки Python:

Давайте начнем создавать наш настольный голосовой помощник с использованием python

Начните с импорта всех необходимых библиотек:

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

Итак, наш первый шаг — создать метод, который будет интерпретировать голосовой ответ пользователя.

Затем создайте метод, который будет преобразовывать текст в речь.

Теперь создайте цикл, чтобы продолжить выполнение нескольких команд. Внутри метода assistant () передается пользовательская команда (myCommand ()) в качестве параметров.

Наш следующий шаг — создать несколько операторов if, соответствующих каждой функции. Итак, давайте посмотрим, как создать эти небольшие модули внутри оператора if для каждой команды.

  1. Откройте субреддит Redditв браузере.

Пользователь даст любую команду, чтобы открыть любой subreddit из Reddit, и команда должна быть «Эй, София! Можешь пожалуйстаоткрыть Reddit subreddit_name». только жирным курсивом следует использовать как есть. Вы можете использовать любой вид префикса, просто позаботьтесь о выделении жирным курсивом.

Как это работает :Если вы сказали фразуоткрыть Redditв вашей команде он будет искать имя subreddit в пользовательской команде, используя re.search (). Субреддит будет найден с помощьюwww.reddit.comи откроется в браузере с помощью модуля pybons Webbrowser.Веб-браузерМодуль предоставляет высокоуровневый интерфейс, позволяющий отображать веб-документы пользователям.

Таким образом, приведенный выше код откроет нужный вам Reddit в браузере по умолчанию.

2. Откройте любой веб-сайт в браузере.

Вы можете открыть любой веб-сайт, просто сказав «open website.com» или «open website.org».

Например: «Пожалуйста, откройте facebook.com» или «Эй, вы можете открыть linkedin.com», как это, вы можете попросить Софию открыть любой веб-сайт для вас.

Как это работает :Если вы сказали словооткрытов вашей команде он будет искать имя веб-сайта в пользовательской команде, используя re.search (). Затем он добавит название сайта к https: // WWW.и используявеб-браузерМодуль полный URL открывается в браузере.

3. Отправить письмо.

Вы также можете попросить вашего настольного помощника отправить электронное письмо.

Как это работает :Если вы сказали словоЭл. адресв вашей команде тогда бот спросит о получателе. Если мой ответ rajat, бот будет использовать библиотеку pthons smtplib.модуль smtplib Определяет объект сеанса клиента SMTP, который можно использовать для отправки почты на любой компьютер в Интернете с демоном прослушивателя SMTP или ESMTP. Отправка почты осуществляется с помощью smtplib Python с использованием SMTP-сервера. Сначала он инициирует SMTP с помощью Gmail.smtplib.SMTP ()затем идентифицируйте сервер, используяEHLO ()функция, а затем кодирование сеансаSTARTTLS (),затем войдите в свой почтовый ящик, используяавторизоваться(), а затем отправив сообщение с помощьюОтправить письмо().

4. Запустите любое системное приложение.

Читайте также:  Оборудование для химчистки авто своими руками

Скажите «Календарь запуска» или «Можете ли вы запустить Skype» или «Поиск запуска Софии» и т. Д., И София запустит это системное приложение для вас.

Как это работает :Если вы сказали словозапускв вашей команде он будет искать имя приложения (если оно присутствует в вашей системе) в пользовательской команде, используя re.search (). Затем он добавит суффикс «.app» к имени приложения. Теперь ваше приложение называется, например, calender.app (в macOS исполняемые файлы заканчиваются расширением .app, в отличие от Windows, который заканчивается на .exe). Таким образом, имя исполняемого приложения будет запущено с использованием функции Popen () подпроцесса python.подпроцессМодуль позволяет запускать новые приложения из вашей программы Python.

5. Сообщает вам текущую погоду и температуру практически любого города.

София также может сказать вам погоду, максимальную и минимальную температуру любого города по всему миру. Пользователь просто должен сказать что-то вроде «какая сейчас погода в Лондоне» или «скажите мне текущую погоду в Дели».

Как это работает :Если вы сказали фразутекущая погодав вашей команде он будет искать название города с помощью re.search (). Я использовал питоновpyowmбиблиотека, чтобы узнать погоду любого города. get_status () расскажет вам о погодных условиях, таких как дымка, облачность, дождь и т. д., а get_tempera () расскажет о максимальной и минимальной температуре города.

6. Сообщает вам текущее время.

«София, вы можете сказать мне текущее время?» Или «который сейчас час?», И София скажет вам текущее время вашего часового пояса.

Как это работает: это довольно просто

7. Привет / оставить

Скажите «Здравствуй, София», чтобы поприветствовать своего голосового помощника, или, когда вы хотите, чтобы программа завершилась, произнесите что-то вроде «выключите Софию» или «София, пожалуйста, выключите» и т. Д.

Как это работает :Если вы сказали словоЗдравствуйтев вашей команде, то в зависимости от времени суток, бот будет приветствовать пользователя. Если время больше 12 часов, бот ответит «Здравствуйте, сэр. Добрый день », а также, если время превышает 6 часов вечера, бот ответит« Здравствуйте, сэр. Добрый вечер». И когда вы даете команду, как выключение,sys.exit ()будет вызван для завершения программы.

8. Воспроизведение песни на медиаплеере VLC

Эта функция позволяет вашему голосовому боту проигрывать нужную песню в медиаплеере VLC. Пользователь скажет «София, сыграй мне песню», бот спросит: «Какую песню мне сыграть, сэр?». Просто скажите название песни, и София загрузит песню с youtube на ваш локальный диск, воспроизведите эту песню на медиаплеере VLC, и если вы снова воспроизведете песню, ранее загруженная песня будет автоматически удалена.

Как это работает :Если вы сказали фразусыграй мне песнюв вашей команде, то он спросит вас, какую видео песню для воспроизведения. Песня, которую вы попросите, будет найдена на youtube.com. Если найденная песня будет загружена в ваш локальный каталог с помощью библиотеки pythons youtube_dl.YouTube-DLэто программа командной строки для загрузки видео с YouTube.com и еще нескольких сайтов. Теперь песня будет проигрываться, как только она будет загружена с помощью питоновБиблиотека VLCи модуль play (path_to__videosong) фактически воспроизводит песню.

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

Читайте также:  Недоуздок для крс своими руками

9. Изменить обои для рабочего стола.

Вы, ребята, также можете изменить обои для рабочего стола, используя эту функцию. Когда вы говорите что-то вроде «поменяйте обои» или «София, пожалуйста, поменяйте обои», бот загрузит случайные обои сunsplash.comи устанавливает его в качестве фона рабочего стола.

Как это работает :Если вы сказали фразуизменить обоипо вашей команде программа загрузит случайные обои с unsplash.com, сохранит их в локальном каталоге и установит в качестве обоев рабочего стола с помощью subprocess.call (). Я использовал unsplash API, чтобы получить доступ к его содержимому.

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

10. Сообщает вам последние новостные ленты.

София также может рассказать вам последние новости. Пользователь просто должен сказать «София, какие новости сегодня самые популярные?» Или «Скажите мне новости на сегодня».

Как это работает :Если вы сказали фразуновости на сегодняв вашей команде, то он будет очищать данные с помощьюКрасивый супиз Google News RSS () и прочитайте его для вас. Для удобства я установил ограничение на количество новостей до 15.

11. Рассказывает практически обо всем, что вы просите.

Ваш бот может получить подробную информацию практически обо всем, что вы у нее спросите. Например, «София расскажи мне о Google» или «Пожалуйста, расскажи мне о суперкомпьютерах» или «Пожалуйста, расскажи мне об Интернете». Итак, как вы можете видеть, вы можете спросить о чем угодно.

Как это работает :Если вы сказали фразуРасскажи мне ов вашей команде он будет искать ключевое слово в пользовательской команде, используя re.search (). Используя библиотеку pythons wikipedia, она будет искать эту тему и извлекать первые 500 символов (если вы не укажете ограничение, бот будет читать всю страницу за вас).Википедиябиблиотека Python, которая позволяет легко получать доступ и анализировать данные из Википедии.

Давайте сложим все вместе

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

Помните, что, как только вы начнете выполнять свою программу, будьте громкими и ясными, когда вы общаетесь с голосовым помощником, потому что может случиться так, что, если ваш голос нечеткий, ваш голосовой помощник не сможет правильно вас интерпретировать.

Вывод: что ждет нас в будущем

На протяжении всей истории вычислений пользовательские интерфейсы стали все более естественными в использовании. Экран и клавиатура были одним шагом в этом направлении. Мышь и графический интерфейс пользователя были другой. Сенсорные экраны являются самой последней разработкой. Следующий шаг, скорее всего, будет состоять из смеси дополненной реальности, жестов и голосовых команд. В конце концов, часто легче задать вопрос или поговорить, чем набрать что-то или ввести несколько деталей в онлайн-форме.

Чем больше человек взаимодействует с устройствами, активируемыми голосом, тем больше трендов и паттернов, которые система идентифицирует на основе получаемой информации. Затем эти данные можно использовать для определения пользовательских предпочтений и вкусов, что является долгосрочным преимуществом для того, чтобы сделать дом умнее. Google и Amazon стремятся интегрировать голосовой искусственный интеллект, способный анализировать человеческие эмоции и реагировать на них

Надеюсь, вам, ребята, понравилось читать эту статью. Поделитесь своими мыслями / комментариями / сомнениями в разделе комментариев. Вы можете связаться со мной черезLinkedIn,

Источник

Оцените статью
Своими руками