Anzeige
Anzeige
Analyse

User-Interfaces für Sprachassistenten: Die Magie von Alexa erklärt

Conversational-User-Interfaces (CUI) beziehungsweise Voice-User-Interfaces (VUI) sind Begriffe, die in der kommerziellen Softwareentwicklung zunehmend an Beliebtheit gewinnen. Mehr als nur ein Spielzeug?

Von Julian Wölk
5 Min.
Artikel merken
Anzeige
Anzeige
(Bild: Amedley / Shutterstock

Die Meinungen gehen auseinander. Fest steht: Damit diese Technologie von Usern angenommen wird, müssen die Anwendungen entsprechend entwickelt werden.

Was sind Voice-User-Interfaces und was war Conversational doch gleich? Mit Sicherheit hatte der ein oder andere von euch bereits ein Gespräch mit einem Sprachassistenten. Falls nicht, nehmt einfach mal euer Smartphone zur Hand und fragt Siri, S-Voice, Cortana und Co. nach dem Wetter. Damit diese Systeme auf die unterschiedlichsten Fragen und Formulierungen reagieren können, muss der Nutzungskontext entsprechend verknüpft werden. Genau das ist einer der grundlegenden Unterschiede eines CUIs zu einer grafischen Oberfläche (Graphical-User-Interface, kurz GUI).

Anzeige
Anzeige

Einem Conversational-UI könnt ihr eure Fragen stellen und bekommt die entsprechenden Antworten. Bei Verwendung eines GUIs dagegen, müsst ihr die Antwort suchen. Wie der Name schon sagt, spielt das Wort Konversation natürlich auch eine Rolle. Durch das Verständnis von natürlicher Sprache kann bei der Interaktion der Eindruck einer echten Konversation entstehen. Im Idealfall sind Voice-UIs Konversationsteilnehmer und haben Charakter.

Alexa

Eine der offenen Plattformen, welche die Entwicklung solcher CUIs ermöglicht, ist Amazons Alexa. Jeder mit einem Amazon-Account hat die Möglichkeit, dieses System über Anwendungen, sogenannten Skills, zu erweitern. Für die Nutzung benötigt ihr die entsprechende Hardware, zum Beispiel einen Amazon Echo. Auch bei diesem System wird die oben genannte Verknüpfung schnell deutlich.

Anzeige
Anzeige

„Alexa, brauche ich morgen in Nürnberg einen Regenschirm?“.


Bleiben wir bei dem „Wetter-Beispiel“. Stellt euch vor, ihr möchtet wissen, ob ihr morgen einen Regenschirm benötigt. Ihr müsst euch nicht den kompletten Wetterbericht ansehen oder anhören. Stellt ganz einfach die eigentliche Frage:

„Alexa, brauche ich morgen in Nürnberg einen Regenschirm?“.

Anzeige
Anzeige

Antwort:
„Morgen wird in Nürnberg kein Regen erwartet.“

Begrifflichkeiten rund um CUI

Zunächst gibt es ein paar Begrifflichkeiten zu klären, bevor wir uns ansehen, wie Alexa grundlegend funktioniert. Folgende sind auch immer Teil eines Skills.

Anzeige
Anzeige

Intent:

Technisch gesehen ist ein Intent eine Funktion. Im Wetter-Skill könnte es beispielsweise einen Intent geben, der für alle Anfragen bezüglich des Niederschlags zuständig ist. Semantisch ist ein Intent die Essenz der Konversation, oder auch die Absicht des Nutzers.

Utterance:

Utterances sind erwartete Formulierungen der Nutzer, über die ein Intent verwendet werden kann. Utterances werden explizit mit einem bestimmten Intent verknüpft. Bei unserem Wetterbeispiel wäre das „brauche ich morgen in Nürnberg einen Regenschirm?“. Genauso könntet ihr mit „wird es morgen in Nürnberg regnen?“ danach fragen. Zwei unterschiedliche Utterances, die den gleichen Intent ansprechen.

Slots:

Slots sind eine Art Parameter. Unter Angabe von Slots haben Nutzer die Möglichkeit, ihre Anfragen zu parametrisieren beziehungsweise zu spezifizieren. In unserer oben genannten Utterance sind „morgen“ und „Nürnberg“ Slots, die man durch andere Zeit- oder Ortsangaben ersetzen kann, zum Beispiel „brauche ich am 10. Juni in New York einen Regenschirm?“.

Anzeige
Anzeige

Jeder Skill ist aus zwei Komponenten zusammengesetzt, für die wir Entwickler selbst Hand anlegen müssen. Zum einen das Interaction-Model, in dem hauptsächlich die Intents, Utterances und Slots festgelegt und verknüpft werden. Darüber bildet das Interaction-Model das eigentliche User-Interface ab. Man kann diesen Teil auch als „CUI-Frontend“ bezeichnen. Es befindet sich innerhalb der Alexa-Plattform und hilft dabei, eingegangene Sprachbefehle entsprechend auszuwerten und zuzuordnen.

Wird eine Spracheingabe nun über das Echo-Gerät an die Alexa-Plattform gesendet, wird diese mit Hilfe von Natural-Language-Processing (NLP) in Text umgewandelt. Enthaltene Informationen werden analysiert und über das Interaction-Model ausgewertet.

Im Anschluss schickt Alexa diese Informationen in Textform an die im Model hinterlegte Serveradresse. Dort befindet sich der zweite Teil eines Skills, die eigentliche Logik beziehungsweise das „CUI-Backend“.

Amazon bietet mit Amazon-Web-Services (AWS) eine komfortable und schnelle Möglichkeit, diese Logik für einen eigenen Skill zu entwickeln und bereit zu stellen. Natürlich ist es auch möglich, benutzerdefinierte Server zu verwenden.

Anzeige
Anzeige

Die ausgewerteten Daten der Spracheingabe (wie zum Beispiel angesprochener Intent und Werte der Slots) müsst ihr hier verarbeiten. Je nachdem, was euer Skill tun soll, müsst ihr die entsprechenden Daten aufbereiten und ebenfalls in Textform zurück an die Alexa-Plattform senden. Diese wandelt den Text zurück in Audio und veranlasst das Alexa-Device, die Antwort über den Lautsprecher auszugeben.

Zusätzlich zur Sprachausgabe ist es auch möglich, visuelle Komponenten, sogenannte Skill-Cards, über die Alexa-App auf das Smartphone des Users zu senden. Diese Cards sind jedoch statisch und ihr habt nicht die Möglichkeit, die vordefinierten Amazon-Layouts dieser Cards zu ändern.

Anzeige
Anzeige

Denkanstöße für ein gutes CUI

Wie bei grafischen Oberflächen, gilt es auch bei der Entwicklung von VUIs einiges zu beachten. Klar, ihr könnt euch eine bestehende Smartphone- oder Web-App vornehmen und versuchen, alle Funktionen der grafischen Oberfläche eins zu eins durch ein Sprachinterface zu ersetzen. Spätestens beim ersten User-Test wird wahrscheinlich klar, dass das nicht funktionieren kann. VUIs bieten viele Möglichkeiten. Ihr solltet euch jedoch immer die Frage stellen, welchen Mehrwert ihr euren Usern mit einem Sprachinterface bieten könnt.

Noch wichtiger als bei der Entwicklung von GUIs ist hier das frühe Einbeziehen potentieller Nutzer in den Entwicklungsprozess. Ihr könnt euch viele Wochen den Kopf zerbrechen, welche Formulierungen (Utterances) User wohl für euren Skill verwenden. Fest steht, jeder Mensch denkt, spricht und formuliert unterschiedlich. Daher ist es wichtig, möglichst viele Eventualitäten abzudecken. Vielleicht fragt ihr euch, ob auch kleinste Wortunterschiede spezifiziert sein müssen, oder wie viele Utterances pro Intent nötig sind. Ich habe diese Frage während eines Amazon-Alexa-Workshops gestellt und bekam als Antwort „You can never have enough utterances“.

Frühe Userbefragungen und -Tests können nicht nur neue Formulierungen und Use-Cases erschließen. Wichtig ist auch festzustellen, was für eure Skills nicht funktioniert. Was wird von Usern schlecht oder überhaupt nicht angenommen – Stichwort „fail fast“.

Anzeige
Anzeige

Neben dem, was euer Skill akzeptieren und verstehen kann, ist es ebenfalls wichtig zu überlegen, wie ihr das Verstandene nutzt und eure Antworten zurückgebt. User sind schnell gelangweilt, wenn sie bei gleicher Fragestellung immer ein und dieselbe Antwort zu hören bekommen. Wird ein Skill regelmäßig verwendet, muss man dem User nicht bei jedem Start den kompletten Willkommensgruß ausgeben und die Beispielsätze vorkauen. Stattdessen könntet ihr je nach Regelmäßigkeit der Nutzung ein „Willkommen zurück“, oder „Lange nicht mehr gehört“ verwenden. Für mehr Abwechslung ist es beispielsweise möglich, mehrere Antwortsätze zu definieren, um für jeden Durchlauf einen der Sätze randomisiert auszugeben. Und: Verpasst eurem Skill Charakter! Lasst Witz, Sarkasmus und Ironie einfließen, wenn es die Zielgruppe erlaubt. Genauso gut könnt ihr das Humorlevel eures Skills für den User einstellbar machen (à la „TARS Humor Level runter auf 40 Prozent”), um darüber dynamisch Witz in eure Ausgaben einzubauen.

Steckt man etwas Aufwand und Kreativität in die Entwicklung, können selbst simple Skills dauerhaft begeistern. Nehmt euch die Zeit, eure Skills ansprechend zu gestalten und umzusetzen. Denn letzten Endes haben wir als Entwickler auch Einfluss drauf, wie gut diese Technologie angenommen wird.

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
Ein Kommentar
Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

David Karich

Schöner Artikel. Gerade bei der Konzeption der Sprachmodelle sollten Entwickler mindestens genauso viel Zeit investieren, wie in die eigentliche Programmierung. Denn dies ist am Ende meist das entscheidende Zünglein, ob der User einen Skill gut findet oder gar die ganze Plattform. Umgekehrt genauso, oft bekomme ich schlechte Bewertungen, weil die Alexa eigenen Intents nicht gut funktionieren, z.B. die Namenserkennung. Dass ich darauf keinen Einfluss habe, sieht der User nicht. Wie dem auch sei, dennoch laufen meine beiden Multiplayer Games sehr gut. Und Amazon honoriert dies auch regelmäßig. Unter den Top Spiele Skills in Deutschland habe ich direkt zwei platziert, Flaschendrehen – Wahrheit oder Pflicht und Shot oder Spott – Das Trinkspiel mit Mutprobe. Gern Mal ausprobieren: http://amzn.to/2p4N6G5 :)

Antworten

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Anzeige
Anzeige