Выпуск Dragonfire 1.0, виртуального голосового помощника для Linux
Как сообщает opennet.ru после трех лет разработки подготовлен релиз виртуального голосового помощника Dragonfire 1.0, позволяющего организовать управление рабочим столом при помощи голосовых команд. Проект написан на языке Python и распространяется под лицензией MIT. Поддерживается работа в Linux-дистрибутивах на базе Ubuntu (в том числе KDE neon и elementary OS), дополнительно подготовлен мобильный клиент для платформы Android.
Для разбора голосовых команд применяется система распознавания речи Mozilla DeepSpeech, построенная на платформе машинного обучения TensorFlow. Для синтеза речи задействован пакет Festival. Интерфейс в форме вопрос/ответ базируется на библиотеке распознавания текста на естественном языке spaCy и данных из Wikipedia. Ответ формируется с применением нейронной сети seq2seq, натренированной по базе диалогов из фильмов (Cornell Movie-Dialogs Corpus).
Программа может работать в режиме с графической анимацией, при котором на экран выводится полупрозрачный силуэт, визуализирующий работу приложения (на выбор можно выбрать мужской или женский персонаж или вообще отключить анимацию). При помощи голосового управления можно осуществлять операции поиска встроенных команд, запускать приложения, вычислять математические выражения и задавать произвольные вопросы. Например, можно скомандовать запустить офисный пакет, продиктовать текст и попутно спросить какой крупнейший город в Турции.
Система также может запускаться в серверном режиме, предоставляя RESTful API для создания диалоговых чатботов. В поставку входит готовый пример чатбота для Twitter. Для оптимальной работы желательно наличие в системе GPU с поддержкой CUDA и 2 Гб свободной оперативной памяти. Опционально предусмотрен режим использования вместо встроенного движка распознавания речи внешнего API Google Speech, который можно использовать при необходимости экономии ресурсов.
Голосовой помощник Dragonfire развивается как разработка, сопутствующая проекту по созданию мотоциклетного шлема дополненной реальности Dragon Armor. Изначально проект был нацелен на создание диалогового интерфейса безклавиатурного управления, который мог бы использоваться во время вождения мотоцикла. CAD-файлы для 3D-печати шлема доступны под свободной лицензией MIT. Электронная начинка шлема основана на применении четырех плат Raspberry Pi 3, камеры Pi Camera, камеры-детектора объектов Pixy (CMUcam5), GSM-модуля от Arduino, микрофона, двух громкоговорителей и мини-проектора DLP LightCrafter Display 3010 EVM. Для шлема развивается специализированный дистрибутив DragonOS на основе Ubuntu.