Technologien

DK
Last updated 5 months ago

Amazon Echo

Unter Amazon Echo versteht man eine Reihe an Sprachgesteuerter Assistenzsysteme. Folgende Geräte werden von dem entwickeltem Skill unterstützt:

  • Amazon Echo Dot

  • Amazon Echo

  • Amazon Echo Plus

  • Amazon Echo Spot

  • Amazon Echo Show

Dabei unterscheiden sich die Geräte insbesondere in Form, Größe und Preis. Die neuen und teuren Echo-Systeme haben zusätzlich eine Videokamera und einen Bildschirm integriert.

Amazon Echo ist somit die Schnittstelle zwischen dem Mensch und dem Sprachsteuerungsservice von Amazon.

Einige Funktionen werden zum Überblick im Folgenden dargestellt:

  • Anrufe tätigen

  • Wetter, Verkehrslage und Sportergebnisse abfragen

  • To-Do und Einkaufslisten zu verwalten

  • Kompatibel mit Smart-Home Geräten

  • Nachrichten und E-Book wiedergeben.

So wie viele weitere Funktionen. Weitere Informationen zu Features und Funktionen lassen sich aus folgenden Webseiten entnehmen:

Alexa Voice Service (AVS)

Der digitale und intelligente Sprachassistent AVS lässt sich durch die Stimme des Anwenders steuern. Der Anwender kann durch Zuruf des Namens "Alexa" anfangen, Informationen (wie bspw. das Wetter, die Verkehrslage etc. siehe Oben) abzufragen.

Alexa Skill

Durch die Skills, die Alexa den Anwendern zur Verfügung stellt, können die oben genannten Funktionen ausgeführt werden. Darüberhinaus lassen sich anhand von Alexa Skills Kit weitere Skills entwickeln und anderen Nutzern zur Verfügung stellen.

Die Alexa Skill Entwicklung lässt sich in zwei Schichten unterteilen. Einmal das Frontend (Interation Model) und auf der anderen Seite das Backend (Hosted Service). Die Beiden Schichten werden durch den Alexa Voice Service, welche bereits beschrieben wurde, miteinander verbunden.

Interaction Model

Das Interaction Model beschreibt die Kommunikation zwischen dem User und dem Alexa Voice Service. Da Alexa keine Deep Learning Technologie ist und somit keine kontextabhängigen und grammatikalischen Analysen durchführen kann, muss die Kommunikation immer einem bestimmten Schema entsprechen. Kleinere Abweichungen vom definierten Schema können toleriert werden.

Schema

Beschreibung

Wake Word

Das Wake Word startet die Konversation und weckt Alexa aus dem Ruhezustand auf.

Starting Phrase

Die Starting Phrase sind ein oder mehrere Wörter, welche vom AVS vorgegeben werden. Dabei kann die Interaktion nach zwei Arten verlaufen: #1: Skill wird durch die Phrasen "starte", "öffne", "lade" oder "frage" gestartet. Dadurch greift Alexa sofort auf die Funktion zurück (Launch Request). #2: Skill wird aufgerufen und die Anforderung wird kommuniziert. Alexa startet den Skill und gibt die Anforderung direkt mit. Zum Beispiel "frage... nach...".

Invocation Name

Ist der Aufrufname des Skills. Der Name muss somit eindeutig sein.

Intent

Ein Intent ist wie eine Schaltläche auf einer Webseite und verbirgt eine Action. Das Intent nimmt eine Benutzeranfrage auf und führt den darauf basierenden Code (AWS Lambda) aus. Da unterschiedliche Benutzer unterschiedlich sprechen, gibt es sogenannte Utterances. Utterances sind verschiedene Wörter und Satzstellungen, welche den gleichen Intent ausführen.

Hosted Service

Unter dem Hosted Service versteht man das Backend. Hier wird der Funktionscode in einer von Amazon zugelassenen Programmiersprache geschrieben.

Um zu einem späteren Zeitpunkt den Quellcode ausführen zu können, bedient sich der Alexa Skill an dem Amazon Web Service Lambda.

Ablauf und Architektur eines Alexa Skills

Folgende Grafik zeigt den Ablauf eines typischen Alexa Skills. Besonders gut an der Grafik ist die Zuordnung zu den einzelnen Architecture-Bestandteilen. Der User kann somit sehr gut erkennen, welcher Bestandteil welche Aufgaben übernimmt und wie die einzelnen Bestandteile miteinander kommunizieren.

Amazon Web Services (AWS) Lambda

Lambda ist der von Amazon bereitgestellter Datenverarbeitungsservice, welcher den Code beim Start des Skills ausführt und die Datenverarbeitungsressourcen automatisch verwaltet und skaliert. Kosten entstehen nur dann wenn der Code ausgeführt wird. Es ist somit ein Pay-Per-Use Modell.