Установка Mycroft A.I. на openSUSE Tumbleweed
KDE РоссияВы когда-нибудь хотели иметь виртуального голосового ассистента, который не делится вашей информацией с копрорациями и имеет открытый исходный код? С появлением Mycroft ваша мечта сбылась. В этой статье расскажем, как установить сам Mycroft A.I. и дополнение для удобного доступа к нему из KDE Plasma.
Установка
Для начала вам понадобится добавить репозиторий devel:languages:python
, который содержит пакеты, необходимые для запуска Mycroft A.I. и пока ещё не включенные в основной репозиторий Tumbleweed:
# sudo zypper ar -f https://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_Tumbleweed/devel:languages:python.repo
После этого добавьте ещё один репозиторий:
# sudo zypper ar -f https://download.opensuse.org/repositories/home:/alarrosa:/packages/openSUSE_Tumbleweed/home:alarrosa:packages.repo
Теперь вы готовы к установке самого Mycroft A.I! Для этого просто запустите следующую команду:
# sudo zypper in mycroft-core plasma-mycroft
На свежеустановленной Tumbleweed, помимо этих двух пакетов, устанавливается ещё 160, поэтому советуем запастись терпением. Когда установка будет завершена, добавьте плазмоид Mycroft на ваш рабочий стол Plasma:
Перед использованием потребуется небольшая настройка.
Обратите внимание, что при первом запуске Mycroft загружает более 30 стандартных навыков, так что плазмоид может выдать ошибку подключения. Просто подождите пару минут и перезапустите его через плазмоид.
Перед первым использованием Mycroft выдаст вам шестизначный код. Перейдите на home.mycroft.ai, создайте бесплатный аккаунт и зарегистрируйте своё "устройство", введя код. После этого запустите сервисы Mycroft и можете начинать пользоваться! Попробуйте, например, спросить "Сколько будет 2+2?":
Вы также можете установить дополнительные навыки (если вы, например, установите plasma-user-control-skill
и скажете "Заблокируй экран", Mycroft поймёт вас и сделает это). Посмотреть доступные навыки, установить новые или удалить ранее установленные можно при помощи плазмоида или утилиты msm
.
Примеры команд
К сожалению, Mycroft на данный момент поддерживает только английский язык.
Hey Mycroft ...
- What is 2 + 2?
- What is 21% of 314?
- What is the capital of Spain?
- When was Alan Parsons born?
- How high is the Eiffel Tower?
- Search the web for ethernet cables
- Set an alarm in 5 minutes (после того, как таймер сработал, скажите “Hey Mycroft, stop alarm”, чтобы остановить его)
- Remind me to watch the oven in 3 minutes (после того, как напоминание сработало, скажите “Hey Mycroft, stop reminder”, чтобы остановить его)
- Tell me a joke
- Tell me about the Solar System
- Play the news (если вы хотите остановить его, просто скажите “Hey Mycroft, stop”)
- Open Dolphin
- Close Firefox
- Decrease volume
- Show Activities
- What time is it?
- What’s the weather like?
- Will it rain?
- Type this is a test (он напишет “this is a test” в вашем текущем окне, как будто вы использовали клавиатуру)
Конфигурация
Разработчики рекомендуют хотя бы заглянуть в файл ~/.mycroft/mycroft.conf
и настроить ваш город, его координаты (вы можете найти их в Wikipedia) и временную зону (поле "offset").
При изменении конфигурационного файла будьте очень аккуратны и не оставляйте пустых строк или комментариев, поскольку на данный момент парсер очень чувствителен к синтаксическим ошибкам. И хотя об этих ошибках будет доложено, сделайте бэкап файла на всякий случай.
Известные ошибки
Обратите внимание на то, что работа над проектом ещё не завершена и некоторые функции могут не работать. Так, в пакетах были проделаны некоторые изменения, чтобы сделать возможным запуск без использования virtualenv.
Установка производится в /usr/lib/python3.6/site-packages
, а сама версия Mycroft является экспериментальным портом на Python 3 (cтабильные сборки исользуют вторую версию). Помимо этого, файл /etc/mycroft.conf
был перенесён в ~/.mycroft/mycroft.conf
, а директория для навыков - из /opt/mycroft/skills
в ~/.mycroft/skills
.
Иногда плазмоид не запоминает настройки: если вы не можете запустить или остановить сервисы Mycroft через GUI, перейдите в настройки и измените “Your Mycroft core installation path” на “Default Path” и обратно на “Installed using Mycroft Package”.
Если какой-то навык некорректно работает, проверьте файл ~/.mycroft/mycroft-python-modules.log
на наличие ошибок о недостающем модуле и, если необходимо, установите его через zypper
.
Некоторые навыки до сих пор не поддерживают Python 3, поэтому при обновлении через msm
, которое происходит напрямую из git-репозиториев, к ним применяются патчи.
При установке навыка (через виджет или msm
), иногда статус не обновляется на "Установлено". Проверьте директорию ~/.mycroft/skills
, чтобы узнать, какие именно навыки установлены.
Mycroft создаёт файлы в /tmp без необходимых флагов разрешений. Это позволительно на таких устройствах, как Mycroft Mark 1 или Mark II, но является угрозой безопасности на обычной Linux-системе.
Если у вас возникнут какие-либо проблемы с этими пакетами, напишите автору оригинальной статьи - именно он адаптировал Mycroft для openSUSE.