Vous trouverez ici (espérons-le) tout ce que vous devez savoir pour démarrer avec SEPIA.
Aperçu de l'écosystème SEPIA (note : certaines parties sont encore dans les branches de développement).
Pour les attributions d'icônes d'image, veuillez consulter la page d'accueil
Consultez le wiki pour des descriptions détaillées : SEPIA Framework Wiki
Visitez Twitter ou Mastodon pour les dernières nouvelles : SEPIA Twitter Feed | Aliment pour mastodonte SEPIA
Visitez le blog pour des résumés et des guides : SEPIA Blog
SEPIA est l'acronyme de : assistant auto-hébergé, extensible, personnel et intelligent . Il s'agit d'un framework modulaire et open source équipé de tous les outils nécessaires pour créer votre propre assistant vocal numérique à part entière, y compris la reconnaissance vocale (STT), la détection de mots d'activation, la synthèse vocale (TTS), la reconnaissance vocale naturelle. -compréhension du langage, gestion des dialogues, SDK(s), une application client multiplateforme et bien plus encore.
Le framework se compose de plusieurs micro-services hautement personnalisables qui fonctionnent ensemble de manière transparente pour former SEPIA Open Assistant. Il suit le principe client-serveur en utilisant un serveur Java léger et une base de données Elasticsearch comme "cerveau" et un client basé sur Javascript qui fonctionne comme un haut-parleur intelligent, un écran intelligent, une application d'assistant mobile ou tout autre appareil intelligent que vous proposez ?. Tous les composants fonctionnent sous Linux, Windows et Mac et ont été optimisés pour fonctionner même sur un Raspberry Pi ? ?.
SEPIA propose actuellement des services intelligents prêts à l'emploi pour : les actualités, la musique (radio), les minuteries, les alarmes, les rappels, les listes de tâches et de courses, la maison intelligente (par exemple en utilisant des outils open source comme openHAB), la navigation, lieux, météo, Wikipédia, recherche sur le Web, résultats de football (Bundesliga), quelques bavardages et bien plus encore . Pour réaliser vos propres idées, vous pouvez utiliser des outils comme le SDK SEPIA et l'éditeur de code intégré au SEPIA Control HUB pour créer des services ou écrire des widgets HTML personnalisés ????!
Le framework SEPIA se compose de 2 parties principales : le client SEPIA et l'Assist-Server.
Client SEPIA : L'interface utilisateur qui gère les interactions vocales, textuelles ou tactiles et gère le « dialogue » avec le serveur SEPIA. Les réponses du serveur peuvent être présentées sous forme de texte (chat), d'éléments graphiques (cartes, boutons) et/ou sonores, y compris la synthèse vocale (texte-parole) et la musique (lecteur multimédia) . Le client s'occupe généralement de la reconnaissance vocale (sur l'appareil ou via le serveur SEPIA STT) pour transformer la voix en texte et peut même écouter des mots d'éveil comme Hey SEPIA (grâce à Porcupine de Picovoice). Il existe des clients pour le navigateur, Android, iOS et une version DIY qui fonctionne même « sans tête » par exemple sur un Raspberry Pi.
Assist-Server : le « cerveau » de SEPIA qui reçoit les requêtes du client via l'API HTTP REST et s'occupe de la compréhension du langage naturel (intention et NER), du flux de conversation, de l'intégration des services intelligents (comme une tâche à faire). liste ou service d'actualités), comptes d'utilisateurs, synthèse vocale (TTS) et plus encore. L'Assist-Server peut fonctionner sur son propre matériel par exemple sur des SBC comme un Raspberry Pi 3 ou parallèlement au client sur des systèmes plus puissants (RPi4, PC de bureau ect.).
Parce que la reconnaissance vocale est un sujet très délicat pour de multiples raisons (confidentialité, précision, performances, contrôle, etc.), le framework SEPIA comprend un autre composant majeur : le serveur Speech-To-Text (STT).
Serveur SEPIA STT : un serveur open source pour la reconnaissance vocale en temps réel qui fonctionne sur la plupart des systèmes (x86, ARM), y compris Raspberry Pi et prend en charge les modèles ASR personnalisés et dynamiques (grâce à d'excellents outils comme Kaldi, Vosk ou Zamia Speech) .
D'autres composants notables du framework SEPIA sont le Control HUB pour gérer le serveur, les clients « sans tête », Smart Home et plus encore, le serveur WebSocket pour les discussions multicanaux et le transfert de données duplex, le Teach-Server pour stocker les commandes personnalisées et un SDK Java. pour créer de puissants services personnalisés.
Actuellement, SEPIA fonctionne en allemand et en anglais avec une prise en charge de base pour créer des commandes personnalisées dans d'autres langues courantes. Certains services comme les actualités et les résultats de football sont optimisés pour l'allemand, ce qui signifie que vous obtiendrez une réponse en anglais, mais vous pourrez toujours voir un mélange de médias anglais et allemands ou des résultats de football de la Bundesliga. Les services intelligents s'améliorent constamment et vous pouvez facilement modifier vous-même la liste des points de vente.
Pour utiliser SEPIA votre assistant vocal personnel, numérique et open source, vous avez besoin de 2 choses :
Pour vous connecter à un serveur personnalisé, ouvrez simplement l'application, modifiez le « nom d'hôte » dans l'écran de connexion et redémarrez l'application. Un nom d'hôte typique pourrait être l'adresse IP du serveur, "raspberrypi.local", "my-server.example.org/sepia" ou simplement conserver "localhost" (pour les serveurs de test sur la même machine).
Étapes de base pour installer le serveur :
Des instructions et un script d'installation (presque) automatique pour Raspberry Pi peuvent être trouvés -ICI-
Les instructions pour l'installation de la pile serveur SEPIA sous Linux, Windows ou Mac peuvent être trouvées -ICI-
Si vous avez des questions, avez besoin d'aide ou souhaitez signaler un bug, rendez-vous ici ou démarrez une discussion ici.
Certains services intégrés dans SEPIA nécessitent une clé API pour fonctionner correctement (ex : navigation/géocodage inversé). Découvrez comment les obtenir (gratuitement) ici.
Si vous exploitez votre propre serveur et décidez de l'ouvrir au public ou à vos amis, assurez-vous qu'il est correctement sécurisé et informez les utilisateurs de votre politique de confidentialité des données, car vous exploitez une base de données contenant des informations personnelles potentiellement sensibles.