Здесь вы (надеюсь) найдете все, что вам нужно знать, чтобы начать работу с SEPIA.
Обзор экосистемы SEPIA (примечание: некоторые части все еще находятся в ветках разработки).
Чтобы узнать атрибуцию значков изображений, посетите домашнюю страницу.
Подробные описания можно найти в Wiki: SEPIA Framework Wiki.
Посетите Twitter или Mastodon для получения последних новостей: SEPIA Twitter Feed | SEPIA Корм для мастодонтов
Посетите блог, чтобы ознакомиться с краткими описаниями и руководствами: Блог SEPIA
SEPIA — это аббревиатура от «автономный, расширяемый, персональный, интеллектуальный помощник» . Это модульная платформа с открытым исходным кодом, оснащенная всеми необходимыми инструментами для создания собственного полноценного цифрового голосового помощника, включая распознавание речи (STT), обнаружение слов для пробуждения, преобразование текста в речь (TTS), естественное -понимание языка, управление диалогами, SDK(ы), кроссплатформенное клиентское приложение и многое другое.
Платформа состоит из нескольких легко настраиваемых микросервисов, которые органично работают вместе, образуя SEPIA Open Assistant. Он следует принципу клиент-сервер, используя легкий Java-сервер и базу данных Elasticsearch в качестве «мозга» , а также клиент на основе Javascript, который работает как интеллектуальный динамик, интеллектуальный дисплей, приложение для мобильного помощника или любое другое интеллектуальное устройство, которое вы придумаете? Все компоненты работают в Linux, Windows и Mac и оптимизированы для бесперебойной работы даже на Raspberry Pi . ?.
Готовая к использованию SEPIA в настоящее время имеет интеллектуальные сервисы для: новостей, музыки (радио), таймеров, будильников, напоминаний, списков дел и покупок, умного дома (например, с использованием инструментов с открытым исходным кодом, таких как openHAB), навигации, места, погода, Википедия, веб-поиск, результаты футбола (Бундеслига), немного светской беседы и многое другое . Чтобы реализовать свои собственные идеи, вы можете использовать такие инструменты, как SEPIA SDK и редактор кода, интегрированный в SEPIA Control HUB, для создания сервисов или написания пользовательских HTML-виджетов ????!
Платформа SEPIA состоит из двух основных частей: клиента SEPIA и вспомогательного сервера.
Клиент SEPIA: пользовательский интерфейс, который обрабатывает голосовое, текстовое или сенсорное взаимодействие и управляет «диалогом» с сервером SEPIA. Ответы сервера могут быть представлены в виде текста (чат), графических элементов (карточки, кнопки) и/или звука, включая синтез речи (текст в речь) и музыки (медиаплеер) . Клиент обычно заботится о распознавании речи (на устройстве или через сервер SEPIA STT), чтобы преобразовать голос в текст и даже может слушать слова-пробуждения, такие как «Эй, SEPIA» (спасибо Porcupine от Picovoice). Существуют клиенты для браузера, Android, iOS и DIY-версия, которая работает даже «без головы», например, на Raspberry Pi.
Assist-Server: «мозг» SEPIA, который получает запросы от клиента через HTTP REST API и отвечает за понимание естественного языка (намерение и NER), поток разговоров, интеграцию интеллектуальных сервисов (например, список дел). список или служба новостей), учетные записи пользователей, преобразование текста в речь (TTS) и многое другое. Assist-Server может работать на собственном оборудовании, например, на SBC, таком как Raspberry Pi 3, или параллельно клиенту в более мощных системах (RPi4, настольный ПК и т. д.).
Поскольку распознавание речи является очень деликатной темой по нескольким причинам (конфиденциальность, точность, производительность, контроль и т. д.), в состав SEPIA Framework входит еще один важный компонент: сервер преобразования речи в текст (STT).
Сервер SEPIA STT: сервер с открытым исходным кодом для распознавания речи в реальном времени , который работает на большинстве систем (x86, ARM), включая Raspberry Pi , и поддерживает пользовательские динамические модели ASR (благодаря таким замечательным инструментам, как речь Kaldi, Vosk или Zamia). .
Другими заметными компонентами SEPIA Framework являются Control HUB для управления сервером, «безголовыми» клиентами, «Умным домом» и т. д., сервер WebSocket для многоканальных чатов и дуплексной передачи данных, Teach-Server для хранения пользовательских команд и Java SDK. для создания мощных пользовательских сервисов.
В настоящее время SEPIA работает на немецком и английском языках с базовой поддержкой создания пользовательских команд на других распространенных языках. Некоторые сервисы, такие как новости и результаты футбола, оптимизированы для немецкого языка. Это означает, что вы получите ответ на английском языке, но при этом можете увидеть сочетание английских и немецких новостных агентств или результатов футбольных матчей Бундеслиги. Однако смарт-сервисы постоянно совершенствуются, и вы легко можете редактировать список торговых точек самостоятельно.
Чтобы использовать SEPIA, ваш личный цифровой голосовой помощник с открытым исходным кодом, вам нужны две вещи:
Чтобы подключиться к пользовательскому серверу, просто откройте приложение, измените «имя хоста» на экране входа в систему и перезапустите приложение. Типичным именем хоста может быть IP-адрес сервера: «raspberrypi.local», «my-server.example.org/sepia» или просто оставить «localhost» (для тестовых серверов на одной машине).
Основные шаги по установке сервера:
Инструкции и сценарий (почти) автоматической установки Raspberry Pi можно найти - ЗДЕСЬ-
Инструкции по установке стека серверов SEPIA на Linux, Windows или Mac можно найти -ЗДЕСЬ-
Если у вас есть какие-либо вопросы, вам нужна помощь или вы хотите сообщить об ошибке, перейдите сюда или начните обсуждение здесь.
Некоторым службам, интегрированным в SEPIA, для правильной работы требуется ключ API (например, навигация/обратное геокодирование). Узнайте, как их получить (бесплатно) здесь.
Если вы используете собственный сервер и решили открыть его для публики или для своих друзей, убедитесь, что он надлежащим образом защищен, и проинформируйте пользователей о вашей политике конфиденциальности данных, поскольку вы используете базу данных с потенциально конфиденциальной личной информацией.