SEPIA: Difference between revisions
(Added some internal links.) |
(updated SEPIA version info) |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{Infobox Voice Assistant | |||
| Url = https://github.com/SEPIA-Framework/ | |||
| License = MIT License | |||
| InternetRequired = No, but services like weather and Wiki won't work | |||
| SupportedLanguages = en, de + partial support for 15 more (beta) | |||
| WakeWord = Hey SEPIA, customizable | |||
| DefaultTTS = eSpeak, picoTTS, MBROLA, MaryTTS + compatible APIs | |||
| SupportedOS = Windows, Linux, Mac OS X, Raspberry Pi | |||
| CodeLanguage = Java (Assist-Server), HTML/Javascript (Client), Python (STT-Server) | |||
| LatestVersion = 2.6.2 | |||
| LatestReleaseDate = 2022-05-08 | |||
}} | |||
== Introduction: S.E.P.I.A. Open Assistant Framework == | == Introduction: S.E.P.I.A. Open Assistant Framework == | ||
S.E.P.I.A. is an acronym for: '''s'''elf-hosted, '''e'''xtendable, '''p'''ersonal, '''i'''ntelligent '''a'''ssistant. It is a modular, open-source framework equipped with all the required tools to build your own, full-fledged digital voice-assistant, including speech recognition ([[:Category:STT|STT]]), wake-word detection, text-to-speech ([[:Category:TTS|TTS]]), natural-language-understanding ( | [https://sepia-framework.github.io/ S.E.P.I.A.] is an acronym for: '''s'''elf-hosted, '''e'''xtendable, '''p'''ersonal, '''i'''ntelligent '''a'''ssistant. It is a modular, open-source framework equipped with all the required tools to build your own, full-fledged digital voice-assistant, including [[:Category:STT|speech recognition]] ([[:Category:STT|STT]]), [[:Category:Wake words|wake-word]] detection, [[:Category:TTS|text-to-speech]] ([[:Category:TTS|TTS]]), [[Natural language understanding|natural-language-understanding (NLU)]], dialog-management, SDK(s), a cross-platform client app and much more. | ||
The framework consists of several, highly customizable micro-services that work together seamlessly to form the SEPIA Open Assistant. It follows the '''client-server principle using a lightweight Java server and Elasticsearch DB as "brain"''' and a | The framework consists of several, highly customizable micro-services that work together seamlessly to form the SEPIA Open Assistant. It follows the '''client-server principle using a lightweight Java server and Elasticsearch DB as "brain"''' and a JavaScript based client that works for example as '''smart-speaker, smart-display or full-fledged digital assistant app'''. | ||
All components work on Linux, Windows and Mac and have been optimized to even '''run smoothly on a Raspberry Pi'''. | All components work on Linux, Windows and Mac and have been optimized to even '''run smoothly on a Raspberry Pi'''. | ||
Out-of-the-box SEPIA currently has smart-services for: news, music (radio), timers, alarms, reminders, to-do and shopping lists, smart home (e.g. using open-source tools like openHAB), navigation, places, weather, Wikipedia, web-search, soccer-results (Bundesliga), a bit of small-talk and more. To build custom services there is a Java SDK and a code editor integrated into the SEPIA Control HUB web-app. The client can be extended with custom HTML widgets. | Out-of-the-box SEPIA currently has smart-services for: news, music (radio), timers, alarms, reminders, to-do and shopping lists, smart home (e.g. using open-source tools like openHAB), navigation, places, weather, Wikipedia, web-search, soccer-results (Bundesliga), a bit of small-talk and more. To build custom services there is a Java SDK and a code editor integrated into the SEPIA Control HUB web-app. The client can be extended with custom HTML widgets.<ref>https://github.com/SEPIA-Framework/sepia-docs</ref> | ||
==Components== | |||
Some of the core SEPIA framework components: | |||
*[https://github.com/SEPIA-Framework/sepia-assist-server SEPIA Assist-Server] - The "brain" of SEPIA responsible for: user-accounts, database integration, [[Natural language understanding|NLU]], dialog-management, open-source [[:Category:TTS|TTS]], smart-services (weather, navigation, alarms, news etc.), remote actions and more<ref>https://github.com/SEPIA-Framework/sepia-assist-server</ref>. | |||
*[https://github.com/SEPIA-Framework/sepia-websocket-server-java SEPIA Chat-Server] - A [[wikipedia:WebSocket|WebSocket]] based Chat-Server that takes care of real-time, asynchronous user-to-user and user-to-assistant communication<ref>https://github.com/SEPIA-Framework/sepia-websocket-server-java</ref>. | |||
*[https://github.com/SEPIA-Framework/sepia-html-client-app SEPIA Cross-Platform Client] - The primary SEPIA client based on HTML5 web technology that runs on all modern browsers (mobile and desktop) and communicates with other SEPIA components via HTTP or WebSocket connections<ref>https://github.com/SEPIA-Framework/sepia-html-client-app</ref>. It supports headless- and kiosk-mode via [https://github.com/bytemind-de/nodejs-client-extension-interface CLEXI server] to build independent smart-speaker or smart-display like devices<ref>https://github.com/SEPIA-Framework/sepia-installation-and-setup/tree/master/sepia-client-installation</ref>. The client is available as Android app as well via [https://play.google.com/store/apps/details?id=de.bytemind.sepia.app.web Play Store] or [https://github.com/SEPIA-Framework/sepia-installation-and-setup/releases direct download]. | |||
*[[SEPIA Speech-To-Text Server|SEPIA STT-Server]] - A WebSocket based, full-duplex Python server for real-time [[:Category:STT|automatic speech recognition]] (ASR) supporting [https://github.com/SEPIA-Framework/sepia-stt-server multiple open-source ASR engines]. It can receive a stream of audio chunks via the secure WebSocket connection and return transcribed text almost immediately as partial and final results<ref>https://github.com/SEPIA-Framework/sepia-stt-server</ref>. | |||
There are many more SEPIA components and tools to discover on the [https://github.com/SEPIA-Framework official GitHub project page]. | |||
== | ==Installation== | ||
The [https://github.com/SEPIA-Framework/sepia-docs official documentation page] has the most recent installation guides. | |||
[[Category:Open Voice Assistants]] | [[Category:Open Voice Assistants]] | ||
[[Category:Project]] | |||
<references /> |
Latest revision as of 09:50, 13 May 2022
SEPIA | |
---|---|
Website | https://github.com/SEPIA-Framework/
|
License | MIT License
|
Internetaccess required | No, but services like weather and Wiki won't work
|
Supported Languages | en, de + partial support for 15 more (beta)
|
Default Wakeword | Hey SEPIA, customizable
|
Default TTS Engine | eSpeak, picoTTS, MBROLA, MaryTTS + compatible APIs
|
Operating System | Windows, Linux, Mac OS X, Raspberry Pi
|
Programming Language | Java (Assist-Server), HTML/Javascript (Client), Python (STT-Server)
|
Latest Version | 2.6.2
|
Latest Update | 2022-05-08 |
Introduction: S.E.P.I.A. Open Assistant Framework[edit | edit source]
S.E.P.I.A. is an acronym for: self-hosted, extendable, personal, intelligent assistant. It is a modular, open-source framework equipped with all the required tools to build your own, full-fledged digital voice-assistant, including speech recognition (STT), wake-word detection, text-to-speech (TTS), natural-language-understanding (NLU), dialog-management, SDK(s), a cross-platform client app and much more.
The framework consists of several, highly customizable micro-services that work together seamlessly to form the SEPIA Open Assistant. It follows the client-server principle using a lightweight Java server and Elasticsearch DB as "brain" and a JavaScript based client that works for example as smart-speaker, smart-display or full-fledged digital assistant app.
All components work on Linux, Windows and Mac and have been optimized to even run smoothly on a Raspberry Pi.
Out-of-the-box SEPIA currently has smart-services for: news, music (radio), timers, alarms, reminders, to-do and shopping lists, smart home (e.g. using open-source tools like openHAB), navigation, places, weather, Wikipedia, web-search, soccer-results (Bundesliga), a bit of small-talk and more. To build custom services there is a Java SDK and a code editor integrated into the SEPIA Control HUB web-app. The client can be extended with custom HTML widgets.[1]
Components[edit | edit source]
Some of the core SEPIA framework components:
- SEPIA Assist-Server - The "brain" of SEPIA responsible for: user-accounts, database integration, NLU, dialog-management, open-source TTS, smart-services (weather, navigation, alarms, news etc.), remote actions and more[2].
- SEPIA Chat-Server - A WebSocket based Chat-Server that takes care of real-time, asynchronous user-to-user and user-to-assistant communication[3].
- SEPIA Cross-Platform Client - The primary SEPIA client based on HTML5 web technology that runs on all modern browsers (mobile and desktop) and communicates with other SEPIA components via HTTP or WebSocket connections[4]. It supports headless- and kiosk-mode via CLEXI server to build independent smart-speaker or smart-display like devices[5]. The client is available as Android app as well via Play Store or direct download.
- SEPIA STT-Server - A WebSocket based, full-duplex Python server for real-time automatic speech recognition (ASR) supporting multiple open-source ASR engines. It can receive a stream of audio chunks via the secure WebSocket connection and return transcribed text almost immediately as partial and final results[6].
There are many more SEPIA components and tools to discover on the official GitHub project page.
Installation[edit | edit source]
The official documentation page has the most recent installation guides.
- ↑ https://github.com/SEPIA-Framework/sepia-docs
- ↑ https://github.com/SEPIA-Framework/sepia-assist-server
- ↑ https://github.com/SEPIA-Framework/sepia-websocket-server-java
- ↑ https://github.com/SEPIA-Framework/sepia-html-client-app
- ↑ https://github.com/SEPIA-Framework/sepia-installation-and-setup/tree/master/sepia-client-installation
- ↑ https://github.com/SEPIA-Framework/sepia-stt-server