In diesem Blog schreibe ich regelmäßig zu Themen rund um Voice, Alexa & AI/KI. Zum Teil verweisen die Texte weiter auf englische Artikel oder Beispielprojekte in meinem Github-Account.


Echo Expert: KI-Assistent für Alexa Skill Entwickler

Bei Fragen rund um Alexa Skill Entwicklung inklusive APL (Alexa Presentation Language) und ISP (In-skill purchasing) hilft nun der KI-Assistent Echo Expert. Der Assistent unterstützt nicht nur mit Erklärungen und Code-Beispielen sondern bietet auch Code Review an, wenn es mal klemmt oder man als Entwickler einfach nur eine zweite Meinung wünscht.

Wer Echo Expert ausprobieren möchte, kann auf diesen Link klicken.

Hinweis: Zur Verwendung ist ein Zugang zu ChatGPT Plus erforderlich.

Echo Expert Application Logo


Darwin: Meine erster GPT Assistent für ChatGPT

Vergangene Woche hat OpenAI mit GPT Builder einen neuen Weg vorgestellt, eigene KI-Assistenten für ChatGPT zu erstellen.

Mit Darwin habe ich eine erste Version eines solchen Assistenten gebaut und veröffentlicht. Darwin ist für wissenschaftliche Themen rund um Genetik, Evolution und Biologie optimiert und verbindet aktuelle Forschung mit verständlichen Erklärungen.

GPT-Assistenten wie Darwin sind Variationen von ChatGPT, angepasst für spezifische Aufgaben oder Wissensbereiche. Sie nutzen AI-Modelle, um Nutzerfragen zu verstehen und darauf zu antworten, und können für spezielle Zwecke oder Fachgebiete maßgeschneidert sein.

Wer Darwin ausprobieren möchte, kann auf diesen Link klicken.

Hinweis: Zur Verwendung ist ein Zugang zu ChatGPT Plus erforderlich.

Darwin Application Logo


Olympus: Wie Amazon mit LLMs und Alexa den Markt erobern will

Da tut sich was: Amazon investiert mehrere Millionen in die Entwicklung eines neuen, ehrgeizigen Large Language Models (LLM), das den Codenamen “Olympus“ trägt. Ziel des Projekts ist es, mit führenden Modellen von OpenAI und Alphabet zu konkurrieren. Olympus soll eines der größten trainierten Modelle sein und verfügt über zwei Billionen Parameter, was es größer als das aktuelle GPT-4 Modell von OpenAI machen würde, wie TECHZINE und The Tech Portal berichten.

Das Projekt unterstreicht Amazons Investment im Bereich KI und zielt darauf ab, ein neues Gesprächs-KI-Tool zu entwickeln, das mit ChatGPT und Bard konkurrieren könnte. Quellen innerhalb des Unternehmens berichten, dass sowohl Ressourcen als auch Personal aus den Alexa KI- und Wissenschaftsteams zugeteilt wurden, um die Entwicklung von Olympus zu leiten (siehe Artikel auf ITPro.).

Darüber hinaus könnte das neue LLM von Amazon Funktionen in seinem Online-Handelsgeschäft, im Alexa-Sprachassistenten auf Geräten wie dem Echo und in seiner Amazon Web Services-Sparte antreiben (The Information).

Alle diese Informationen deuten darauf hin, dass Amazon seine Präsenz und Kapazitäten im Bereich der KI weiter ausbauen möchte. Alexa ist die logische Plattform, um damit viele Menschen zu erreichen, denn die Plattform ist bereits in vielen Haushalten präsent.


Alexa und Generative KI: Die Zukunft der Sprachinteraktion

Amazon hat Neuerungen rund um seine Sprachassistentin Alexa, vorgestellt. Bei der Vorstellung neuer Geräte wurde auch eine Vision präsentiert, mit Alexa zu interagieren, nämlich die Integration von einem Large Language Model (LLM). Einzelheiten zum verwendeten LL-Modell sind noch nicht bekannt. Dieser neue konzeptionelle Ansatz könnte die Art und Weise, wie wir mit Alexa interagieren, grundlegend verändern.

Amazon ermöglicht damit eine natürlichere Interaktion mit Alexa, bei der im Dialog das Aktivierungswort “Alexa“ entfällt. Das Gespräch beginnt mit “Alexa, let’s chat“ und endet mit “Exit“. Details zur Aktivierung (muss ich immer auf den blauen Balken/Ring warten, oder ist der fortdauernd aktiviert?) und möglichen Zeitbeschränkungen (gibt es weiter ein 8 Sekunden Zeitfenster?) bleiben aber noch unklar. In den beiden Videos in diesem Artikel kann man einen ersten Eindruck davon gewinnen, wie sich Dialoge anfühlen können, die nach dem neuen Modell umgesetzt sind.

Für Alexa-Entwickler und Agenturen eröffnen sich mit diesen Ankündigungen neue Perspektiven. Es wird möglich sein, individuelle Erweiterungen (werden die dann noch Skills heissen?) für Alexa zu entwickeln und eigene APIs und Backends zu integrieren. Dies stellt einen innovativen Ansatz für die Erstellung von Alexa-Skills dar, der aber leider vorerst nur in den USA verfügbar sein wird. Werden wir ISP in diesem Modell nutzen können, um Erweiterungen zu monetarisieren? Auch das wissen wir noch nicht.

Weitere Informationen zur Integration und den Entwicklungsaspekten finden sich in diesem Entwicklerbeitrag.

Die Zukunft der Sprachinteraktion mit Alexa wird sich mit diesem Schritt verändern. Mit der Integration von generativer KI und erweiterten Entwicklungsmöglichkeiten ergeben sich neue Chancen auch für Entwickler von Alexa Skills.


Alexa Skill “Kurznachricht” ist live

Mit meinem erfolgreichen Alexa Skill “MemoMail“ gab es leider mehr und mehr Probleme, die sich auch in den Bewertungen spiegeln. Was ist passiert? Der Invocation Name “Memo Mail” wurde sowohl in der deutschen wie auch in der englischen Fassung des Skill früher super erkannt, heute funktioniert es leider nur mit veränderter Betonung und oft braucht es dazu mehrere Versuche. Das macht den eigentlich sehr nützlichen Skill unbrauchbar. Irgendwas hat Amazon an der Spracherkennung geändert.

Leider erlaubt es Amazon nicht, den Namen von einem Skill nachträglich zu ändern. Deshalb führte der Weg zu einer besseren Version nur über eine komplette Neuinstallation unter einem anderen Skill-Namen. Dies habe ich zum Anlass genommen, den Skill komplett zu überarbeiten. In der deutschen Version ist er nun seit gestern unter dem Namen “Kurznachricht“ verfügbar. Auch APL wird bei Geräten mit Bildschirm unterstützt.

Worum geht es bei dem Skill? Im hektischen Alltag ist eine gut organisierte To-Do-Liste unverzichtbar, um den Überblick über Aufgaben und Erinnerungen zu behalten. Mit dem Alexa Skill “Kurznachricht” wird diese Organisation auf eine originelle Weise vereinfacht. Der Skill verwandelt deine gesprochenen Nachrichten in E-Mail-Betreffzeilen und schickt sie direkt an deine mit dem Alexa-Account verknüpfte E-Mail-Adresse.

Auch ein kompakter Aufruf wird unterstützt: “Alexa, öffne Kurznachricht und schicke mir den Text: Kuchen backen nicht vergessen.‘“ Schon steht der Eintrag in der E-Mail-Inbox – eine zeitsparende Lösung! Viele Formulierungen werden erkannt und unterstützt. Hier sind einige Beispiele:

  • Alexa, öffne Kurznachricht und schicke mir den Text Kuchen backen nicht vergessen.
  • Alexa, öffne Kurznachricht und erinnere mich an: Urlaubsbilder an Oma senden.
  • Alexa, öffne Kurznachricht und sende mir: Ideen für den Geburtstag von Tom: Wanderschuhe, Konzerttickets.
  • Alexa, öffne Kurznachricht und texte mir: Steuererklärung bis Ende des Monats abgeben.
  • Alexa, öffne Kurznachricht und sende mir den Text: Morgen um 10 Uhr Zahnarzttermin.

Tipp: Je prägnanter der gesprochene Text, desto genauer kann Alexa ihn erfassen und in eine E-Mail umsetzen. Beachte jedoch, dass die Textlänge aus technischen Gründen begrenzt ist, daher ist es ratsam, die Kurznachrichten kurz und präzise zu halten.

Tipp: Der Betreff der E-Mail enthält außerdem das Symbol ‘📎’ und den Tag [Kurznachricht]. Das erleichtert bei Bedarf das Erstellen von automatischen Filterregeln.

Neugierig geworden? Einfach mal ausprobieren: 🇩🇪 https://www.amazon.de/gp/product/B0CCSJHHX7 (de-DE)


Interview: Zu Gast im “Public Interest Podcast”

Der “Der Public Interest Podcast - mit Technologien für eine bessere Welt” hat mich eingeladen zu einem Gespräch zu dem Thema “Wie profitieren Freiberufler*innen von FOSS-Entwicklung?”. Daraus ist eine interessante Podcast-Folge geworden.

Die Gastgeber schreiben dazu selber: “Die Entwicklung von Open-Source-Software kann eine große Bereicherung darstellen, auch wenn man eigentlich freiberuflich geschlossenen Code schreibt. Doch wie bringt man closed und open source unter einen Hut? Und wie profitiert die eigene Arbeit vom Engagement in der FOSS-Community?

Wir haben mit Frank Börncke gesprochen. Frank ist freiberuflicher Softwareentwickler und wurde mit seinem Projekt Voice-QL vom Prototype Fund gefördert. Mit ihm haben wir uns darüber unterhalten, wie seine Erwerbsarbeit von seiner Erfahrung bei der FOSS-Entwicklung profitiert und welchen Nutzen er ganz persönlich aus der Auseinandersetzung mit der FOSS-Community zieht.

Mehr Informationen gibt es auf meiner Podcast-Seite mit zusätzlichen Informationen und Transkriptionen.

Frank Börncke im Interview beim Podcast "Public Interest Podcast"


Neustart bei “R2-D2” - Irgendwie auch eine KI

Alexa Skill Schlauberger

Irgendwie ist “R2-D2“ Alexa Skill ja auch eine künstliche Intelligenz. Kürzlich hat er ein Update erhalten: damit verfügt er jetzt zusätzlich über ein neues Icon und unterstützt endlich auch APL (Alexa Presentation Language). Dadurch wird die Nutzung des Sprachassistenten noch ansprechender als zuvor.

Mit dem neuen Icon wird der R2-D2 Skill visuell ansprechender und einprägsamer, während APL Support dafür sorgt, dass Benutzer auf jedem kompatiblen Gerät mit mehr Spaß interagieren können.

Im Skill Store gibt es “R2D2 - Ask me Anything!“ hier:


Alexa Skill “Schlauberger” fühlt sich an wie ChatGPT mit Voice

Alexa Skill Schlauberger

Der Schlauberger-Skill ist eine praktische Anwendung, die schnelle und unkomplizierte Antworten auf Fragen aus verschiedenen Themengebieten wie Wissenschaft, Geschichte, Technologie, Musik und Sport liefert. Der Schlauberger ist der ideale Begleiter für Nutzer, die sich für bestimmte Themen interessieren und Antworten auf ihre Fragen suchen. Die Anwendung bietet leicht verständliche Erklärungen zu Fachbegriffen und liefert Informationen über Geographie, Kultur, Sehenswürdigkeiten und Städtegeschichte.

Durch die Integration der KI-Schnittstelle von OpenAI eröffnen sich für Nutzer des Schlauberger-Skills zahlreiche Vorteile und Möglichkeiten. Die Technologie ermöglicht dem Skill, komplexe Themen verständlich zu erklären und schwierige Fragen schnell und zuverlässig zu beantworten. Nutzer profitieren von schnellen und präzisen Antworten auf ihre Fragen sowie leicht verständlichen Erklärungen zu komplexen Themen.

Der Skill kann Fachbegriffe und komplizierte Zusammenhänge in verständliche Sprache übersetzen und so das Verständnis für verschiedene Themengebiete erleichtern. Durch die Verbindung mit der KI-Schnittstelle von OpenAI eröffnen sich zudem neue Möglichkeiten, das Wissen auf eine neue Art und Weise zu erweitern.

Zusammenfassend bietet die Integration der KI-Schnittstelle von OpenAI Nutzern einen echten Mehrwert, indem sie ihr Wissen schnell, unkompliziert und auf eine leicht verständliche Art und Weise erweitern können.

Skill starten:
Alexa starte Schlauberger

Skill starten mit einer Frage:
Alexa frage Schlauberger bitte nach dem Unterschied zwischen Volt und Ampere

https://alexa-skills.amazon.de/apis/custom/skills/amzn1.ask.skill.f8eeef5d-c7f3-4940-b86c-0274b19c4a99/launch

Im Skill Store

🇩🇪 https://www.amazon.de/dp/B0C2VNVGLZ (de-DE)


Update beim Alexa Skill “Zeiterfassung”

Die nächste Version vom Alexa Skill Zeiterfassung ist live.

Der aktualisierte Alexa Skill “Zeiterfassung” von Lexware erleichtert die Erfassung und Verwaltung von Arbeitszeiten für alle, die im Home-Office arbeiten. Durch einfache Sprachbefehle kann man die Arbeitszeit starten, stoppen oder pausieren. Der Skill bietet auch Konzentrationsmusik und sendet ein Protokoll der erfassten Arbeitszeit per E-Mail zu. Der Skill verfügt nun über viele direkte One-Shot-Launch-Phrasen, mit denen man noch produktiver arbeiten kann.

Es gibt viele nützliche Use-Cases für den Skill, zum Beispiel kann man durch die direkten One-Shot-Launch-Phrasen schnell zwischen verschiedenen Projekten wechseln und deren Zeiten separat erfassen. Auch ist es möglich, per Sprachbefehl eine Pause, Mittagspause oder Kaffeepause zu machen. Zudem kann man jederzeit den aktuellen Status abfragen und ein Protokoll per Sprachbefehl anfordern.

Eine weitere nützliche Funktion ist die Konzentrationsmusik, die man per Sprachbefehl aktivieren kann, um sich besser zu konzentrieren. Außerdem kann man mit dem Skill alle Benutzerdaten auf einmal löschen.

Insgesamt ist der Alexa Skill “Zeiterfassung” eine einfache und praktische Lösung für alle, die im Home-Office arbeiten und ihre Arbeitszeit effektiv und bequem verwalten möchten. Mit den neuen Funktionen und direkten One-Shot-Launch-Phrasen wird die Nutzung des Skills noch schneller und effizienter. Hier einige Beispiele, was nun zusätzlich möglich ist:

  • Alexa, öffne Zeiterfassung

  • Alexa, öffne Zeiterfassung und starte Projekt {nummer}

  • Alexa, öffne Zeiterfassung und starte die Uhr

  • Alexa, öffne Zeiterfassung und mache eine Pause / Mittagspause / Kaffeepause

  • Alexa, öffne Zeiterfassung und pausiere die Uhr

  • Alexa, öffne Zeiterfassung und arbeite weiter

  • Alexa, öffne Zeiterfassung und mache Feierabend

  • Alexa, öffne Zeiterfassung und beende die Uhr

  • Alexa, öffne Zeiterfassung und schicke mir ein Protokoll

  • Alexa, frage Zeiterfassung nach einem Protokoll

  • Alexa, öffne Zeiterfassung und spiele Musik / Konzentrationsmusik / Deep Work Musik

  • Alexa, frage Zeiterfassung nach Musik / Konzentrationsmusik / Deep Work Musik

  • Alexa, öffne Zeiterfassung und lösche alle Benutzerdaten

  • Alexa, frage Zeiterfassung nach dem aktuellen Status

Die Beispiele zeigen, dass nun auch zwischen mehreren Projekten unterschieden werden kann, deren Zeiten dann separat erfasst werden. Dazu kann man den Projekten eine Nummer geben. Auch die Auswertung im Report per E-Mail bieten in der Excel-Version separate Arbeitsblätter pro Projekt an.

Produktiv: Alexa Skill Zeiterfassung

Aufruf in Deutschland

"Alexa, starte Zeiterfassung"

Im Skill Store:

🇩🇪 https://www.amazon.de/gp/product/B0BHD9KVQJ (de-DE)

Oder einfach mit dem Quick Link.


Prototype Fund: Video zum Demo Day in Berlin

Zum Demo Day in Berlin - die Abschlußveranstaltung für Runde 12 vom Prototype Fund - gibt es nun auch ein Video, das die Stimmung der Veranstaltung sehr schön einfängt:

Der Prototype Fund, ein Förderprogramm des Bundesministeriums für Bildung und Forschung, unterstützt innovative Ideen aus den Bereichen Civic Tech, Data Literacy und Open Source. Am 28. Februar 2023 fand in Berlin der Demo Day der zwölften Förderperiode statt, auf dem die Teams ihre Projekte vorstellen konnten.

Das Video zur Abschlussveranstaltung zeigt nicht nur Auszüge von den Präsentationen der Teilnehmer, sondern auch die Atmosphäre und Begeisterung vor Ort. In der zwölften Runde des Prototype Fund wurden 21 Projekte gefördert. Die Teams hatten sechs Monate Zeit, ihre Projekte zu realisieren.

Die Abschlussveranstaltung des Prototype Fund ist eine einmalige Gelegenheit, die Ergebnisse der Förderung kennenzulernen und sich mit den Entwicklerinnen und Entwicklern auszutauschen. Wer sich für die Arbeit des Prototype Fund interessiert, kann sich auf der Website des Förderprogramms über die Teilnahmebedingungen und aktuelle geförderten Projekte informieren.

Mit dem Video zur Abschlussveranstaltung der zwölften Runde des Prototype Fund bekommt man einen guten Eindruck davon, was das Förderprogramm leistet und welche spannenden Projekte gefördert werden.

Video zum Demo Day in Berlin

Ganz besonders freut mich, dass ich in dem Video so viel Redezeit abbekommen habe 🙂


Vortrag beim Demo Day in Berlin

Letzte Woche war ich auf dem Demo Day in Berlin und hatte die Gelegenheit, über mein Projekt Voice-QLzu sprechen. Es war großartig, meine Ideen mit anderen Entwicklern und Technologie-Enthusiasten zu teilen und verschiedene Innovationen zu entdecken und zu bestaunen.

Voice-QL ist ein Projekt, das sich mit der Idee befasst, den Benutzer mit einer Tabelle sprechen zu lassen. Auf dem Demo Day konnte ich meine Vision von Voice-QL mit anderen teilen und erhielt viele positive Reaktionen auf das Projekt.

Der Demo Day war damit eine großartige Gelegenheit, um meine Arbeit zu präsentieren und Feedback von anderen zu erhalten. Hier noch einige Impressionen zu dem Tag:

Demo Day in Berlin zum Thema Voice-QL

Demo Day in Berlin zum Thema Voice-QL

Demo Day in Berlin zum Thema Voice-QL


Homepage für Voice-QL

Voice-QL ist ein neues Open-Source-Projekt, das die Entwicklung von Sprachanwendungen mit Hilfe des Frameworks Jovo deutlich vereinfachen soll. Endlich ist nun auch die Homepage für Voice-QL auf GitHub freigeschaltet.

Mit Hilfe von Voice-QL können Entwickler automatisch Anwendungen für verschiedene Ziel-Plattformen generieren lassen, die es möglich machen, dass ein Anwender mit einer Tabelle oder Datenbank sprechen und sich die Inhalte hands-free erschließen kann. Dies spart nicht nur Zeit, sondern verringert auch die Fehleranfälligkeit und macht die Entwicklung von Sprachanwendungen zugänglicher für Entwickler mit unterschiedlichen Erfahrungsgraden.

Interessierte Entwickler können Voice-QL auf GitHub herunterladen und in ihre eigenen Projekte integrieren. Die Nutzung ist kostenlos und es gibt keine Beschränkungen hinsichtlich der Anzahl der Anfragen oder der Anzahl der Benutzer.

Voice-QL Web Client.


Jovo Build Hook Magic Prototyper

Die Homepage für das Jovo Plugin Magic Prototyper ist nun freigeschaltet.

Mein Jovo V4 Community Hook Magic Prototyper ermöglicht es Entwicklern, Sprachprototypen schnell und einfach zu erstellen. Die Prototypen werden in einer zentralen JSON-Datei beschrieben und die Artefakte können auf verschiedene Sprachassistenten wie Alexa oder Google Assistant ausgeführt werden.

Das Projekt ist Open-Source und bietet Entwicklern die Möglichkeit, ihre eigenen Hooks hinzuzufügen oder zu modifizieren. Der Magic Prototyper ist für Entwickler konzipiert, die ihre Sprachprototypen schnell und effizient erstellen möchten und ist für die Integration in vorhandene Projekte geeignet.


Alexa Skill “Zeiterfassung”

Mit den Voiceagenten haben wir die nächste Version von dem Alexa Skill Zeiterfassung live gestellt.

Mit dem Alexa Skill “Zeiterfassung” kann jeder, der im Home-Office arbeitet, seine Arbeitszeiten einfach und bequem per Sprache erfassen und verwalten. Per Sprachbefehl kann der Benutzer die Messung der Arbeitszeit starten, stoppen oder pausieren.

Der Skill bietet außerdem Konzentrationsmusik an und sendet auf Wunsch ein Protokoll der erfassten Arbeitszeit per E-Mail zu.

Produktiv: Alexa Skill Zeiterfassung

Aufruf in Deutschland

"Alexa, starte Zeiterfassung"

Im Skill Store:

🇩🇪 https://www.amazon.de/gp/product/B0BHD9KVQJ (de-DE)

Oder einfach mit dem Quick Link.


Und noch einmal: Jovo Community Member of the Month

Zum zweiten Mal bin ich zum Community Member of the Month bei Jovo ernannt worden und habe mir damit eine weitere Krone verdient 😀

Jovo Community Member of the month


Jovo Build Hook Magic Model

Die Homepage für Magic Model ist nun freigeschaltet.

Magic Model ist ein Hook für das Jovo V4 Framework, welches die Wartung von Sprachmodellen erleichtert. Durch die Unterstützung von Jexl-Ausdrücken und einer Ausdruckssprache innerhalb von Phrasen wird die Erstellung von Sprachmodellen erheblich vereinfacht. Darüber hinaus ermöglicht die Integration von Spintax eine kompaktere Notation der Sprachmodelldateien und automatisches Aufräumen der generierten Dateien.

Die Erstellung und Wartung von Sprachmodellen ist oft eine mühsame und langwierige Aufgabe, besonders wenn diese komplexer werden und wachsen. Die Erweiterung Magic Model hilft dabei, indem sie eine kompaktere Notation und Unterstützung für Spintax bietet.

Spintax ist eine Technologie, die es ermöglicht, aus einer einzigen Phrase eine Vielzahl von verschiedenen Ausdrucksweisen zu generieren, indem bestimmte Worte oder Phrasen in einer Klammergruppierung aufgelistet werden, von denen eine zufällig ausgewählt wird. Beispielsweise kann die Phrase “Ich {mag|liebe} Hunde” mit Spintax so erweitert werden, dass sie “Ich mag Hunde” oder “Ich liebe Hunde” ausgibt. Spintax wird verwendet, um schnell viele verschiedene Varianten einer Phrase zu generieren, ohne jede einzelne Phrase manuell zu schreiben.

Ein Anwendungsbeispiel dafür wäre die HelpIntent-Definition im Sprachmodell. Statt einer einzigen Phrase kann durch die Verwendung von Spintax eine Vielzahl von Phrasen erstellt werden, indem man Ausdrücke wie | oder [ ] verwendet. Eine Spintax Definition kann aussehen wie folgt:

HelpIntent: {
    phrases: ["[ | [| would you ] please] [help|support|assist] [ | me [ | with this [| [|crazy|strange] [situation|problem] ] ]]"],
}

Das Projekt ist Open-Source und bietet Entwicklern die Möglichkeit, ihre eigenen Hooks hinzuzufügen oder zu modifizieren. Magic Model ist für Entwickler konzipiert, die ihre Sprachprototypen schnell und effizient erstellen möchten und ist für die Integration in vorhandene Projekte geeignet.


Jovo Hook Model Linter

Die Homepage für Model Linter ist nun freigeschaltet.

Mein Jovo V4 Community Hook Model Linter ermöglicht es Entwicklern, Sprachmodelle schon im Buildprozess zu validieren. “Model Linter” erleichtert und verbessert damit die Erstellung von Sprachmodellen.

Das Erstellen und Verwalten von Sprachmodell-Dateien kann eine Herausforderung sein, insbesondere wenn die Dateien größer werden und Veränderungen vorgenommen werden sollen. Dies kann unerwartete Seiteneffekte in einer Sprach-App auslösen. Das Model Linter ist eine Art “Linting” für Sprachmodelle und führt eine Analyse auf Codeebene durch, um offensichtliche und verdächtige Konstrukte im Sprachmodell aufzuspüren, noch bevor sie zur AUsführung kommen.

Durch das Hinzufügen von Model Linter in den Build-Prozess können die Sprachmodell-Dateien automatisch auf eine Reihe von Regeln hin überprüft werden. Die Philosophie ist es dabei, keine Build-Fehler zu verursachen, sondern aussagekräftige Warnungen auf der Konsole auszugeben, falls etwas auffällig ist. Dies erleichtert die Überprüfung von Sprachmodell-Dateien und verbessert deren Qualität.

Das Projekt ist Open-Source und bietet Entwicklern die Möglichkeit, ihre eigenen Hooks hinzuzufügen oder zu modifizieren. Der Model Linter ist für Entwickler konzipiert, die ihre Sprachprototypen schnell und effizient erstellen möchten.

Model Linter View in Console.


Voice-QL

Es geht voran: Die Projektbeschreibung für mein geförderten Projekt “Voice-QL“ ist jetzt online.

Worum geht es? Durch die Nutzung von Sprachbefehlen sollen Nutzer in der Lage sein, ihre Datenbankabfragen ohne umständliches Tippen von Suchanfragen durchzuführen. Die Technologie, die hinter “Voice-QL” steht, ermöglicht es, die Spracheingaben automatisch in Datenbankanfragen umzuwandeln und sie dann in Echtzeit zu verarbeiten. Die Ergebnisse werden vorgelesen oder - wie ein Prototyp zeigen wird - im Browser auf dem Bildschirm des Nutzers angezeigt.

Momentan befinden wir uns noch in der Entwicklungsphase, aber auf einem GitHub-Account von dem Projekt wird man bald den Stand der Dinge aktuell verfolgen können.

Voice QL - Executive Summary.


Zehn Empfehlungen für Sprach-Apps

Hier einige Empfehlungen zur Entwicklung von Sprachanwendungen aus einem Alexa Newsletter, die ich alle nur bestätigen kann:

  • Do one thing really well
  • Use a memorable invocation name and utterances
  • Focus on intents rather than commands
  • Simplify choices
  • Pass the one-breath test
  • Include a variety of responses
  • Handle the unexpected gracefully
  • Use analytics to make enhancements
  • Provide contextual help
  • Do beta testing

IHK-Magazin berichtet über die Voiceagenten

Lesetipp: Das aktuelle IHK-Magazin Wirtschaft (Ausgabe Juli-August 2022) berichtet mit einem Interview von Paulos Mesghina über die Voiceagenten und erwähnt dabei auch meine Mitarbeit bei Kundenprojekten:

IHK Magazin über Voiceagenten


Förderung durch den PrototypeFund

Diesmal hat es geklappt. Nach mehreren Anläufen freue ich mich sehr darüber, bei der 12-ten Runde vom PrototypFund als vom BMBF geförderter Teilnehmer mit dem Project “Voice-QL“ mit dabei sein zu können.

Wer noch nie davon gehört hat: Der Prototype Fund ist ein Förderprogramm des Bundesministeriums für Bildung und Forschung (BMBF), das von der Open Knowledge Foundation Deutschland betreut und ausgewertet wird. Einzelpersonen und kleine (interdisziplinäre) Teams können finanzielle und ideelle Unterstützung für die Erprobung von Ideen sowie die Entwicklung von Open-Source-Anwendungen in den Bereichen Civic Tech, Data Literacy, IT-Sicherheit und Software-Infrastruktur erhalten.

Prototype Fund Logo


NPM Package: Jexl Expression Language Plugin für Jovo

Jexl ist eine JavaScript Expression Language, die leicht in eigene Anwendungen eingebettet werden kann. Mit meinem Jexl Plugin für Jovo können Jexl-Expressions nun auch in Alexa Skills oder Google Actions verwendet werden.

Den Quelltext gibt es auch auf github.

Jexl Output Plugin für Jovo V4


AI mit BLOOM - (M)eine Anleitung für Einsteiger

Die Welt der künstlichen Intelligenz (KI) ist für viele Menschen noch immer ein schwer zugängliches Terrain, das nur von Experten und Spezialisten betreten werden kann. Doch das ändert sich allmählich, und das liegt nicht zuletzt an neuen Entwicklungen wie dem System BLOOM. BLOOM ist ein AI-Modell, das auf der Transformer-Architektur basiert und von der Open-Source-Plattform Hugging Face bereitgestellt wird. Mit diesem System wird es für jeden theoretisch möglich, mit AI-gestützter Textgenerierung zu experimentieren – ohne dass dafür besondere Vorkenntnisse oder technisches Know-how erforderlich wären.

Wie es sich anfühlt, mit BLOOM und AI gestützter Textgenerierung zu experimentieren - und wo die Grenzen sind - darüber habe ich basierend auf meinen Erfahrungen mit GPT-3 einen Artikel auf LinkedIn veröffentlicht.

Der Artikel ist bewusst nicht so technisch gehalten und sollte es jedem Einsteiger ermöglichen, schnell mit eigenen Experimenten zu starten.

AI with BLOOM for everybody - a not so technical introduction for the rest of us


AI mit BLOOM - Wie man die API über Node.JS benutzt

Wenn Du BLOOM über eine API programmatisch aufrufen möchtest, bietet die Verwendung von Node.js viele Vorteile. Zum einen kannst Du dank der plattformübergreifenden Eigenschaften von JavaScript sicherstellen, dass Deine Anwendung auf allen Betriebssystemen einheitlich funktioniert. Zum anderen ermöglicht Node.js eine hohe Skalierbarkeit und eine effektive Handhabung von gleichzeitigen Anforderungen. Dies ist besonders für Anwendungen mit hohem Datenverkehr oder hoher Last unerlässlich.

Wer nun BLOOM nicht über eine Weboberfläche bedienen möchte, sondern lieber programmatisch auf eine API zugreift, für den habe ich die nötige Vorgehensweise Schritt für Schritt auf GitHub dokumentiert. Wenn Ihr der Anleitung folgt, habt Ihr zügig eine erste Lösung am Laufen:

A simple starter for AI with BLOOM using Node.js


“Zu Gast” im Podcast von “Between Two Beans”

In der Episode 23 vom Podcast “Between Two Beans” diskutieren William Rongholt und Kevin Evans über meine Arbeit, meine Alexa Skills und unsere gemeinsamen Erwartungen an die Alexa Live 2022:

Zu Gast im Podcast "Between two Beans"

Mehr Informationen gibt es auf meiner Podcast-Seite mit zusätzlichen Informationen und Transkriptionen.


Mein Wunschzettel zur Alexa Live 2022

Seit der Alexa Live 2021 ist bald ein Jahr vergangen. Damals habe ich vor der Veranstaltung einen Wunschzettel Alexa Live 2021 mit meinen Erwartungen veröffentlicht.

Was ist seitdem passiert, welche Wünsche haben sich erfüllt und welche sind neu dazu gekommen?

Dazu findet Ihr einen neuen Artikel “Alexa Live 2022 Wishlist” auf LinkedIn.

Alexa Live 2022 Wishlist


Jovo Community Member of the Month

Nun ist es raus: jetzt darf ich mich auch “Community Member of the Month“ für Jovo nennen 😀

Jovo Community Member of the month


NPM Package: Spintax Plugin für Jovo

Es gibt nichts, was man nicht noch besser machen kann. Deshalb habe ich für Jovo ein Spintax Plugin geschrieben und per NPM allgemein und frei verfügbar gemacht. Damit wird es leichter, für Alexa Skills und Google Actions Dialoge zu implementieren, die abwechslungsreich und damit natürlich klingen. Den Quelltext gibt es auch auf github.

Spintax Output Plugin für Jovo V4


Ganz offiziell: Jovo empfiehlt mein Master-Template “Pizza Party”

Die Webseite jovo.tech empfiehlt nun ganz offiziell meine Master-Template-Anwendung “Pizza Party“, die demonstriert, wie man das Projekt für eine Jovo-Sprachanwendung aufsetzen kann, die dann auf mehreren Plattformen wie Alexa und Google Assistant ausführbar ist.

Empfehlung: "Pizza Party" für Alexa und Google Assistant


Smarthome Assistant schreibt über “Mein Dashboard”

Das Online Magazin “Smarthome Assistant“ hat einen schönen Artikel über “Mein Dashboard” geschrieben und dabei über eine “Widget Alternative für Echo Show“ gesprochen:

Artikel über "Mein Dashboard"


“Mein Dashboard” für Amazon Fire Tablets

Wer noch ein Fire 10” Tablet mit Alexa-Unterstützung in der Schublade hat, der kann nun auch auf diesem den Alexa Skill “Mein Dashboard” starten.

Endlich wird auf diesem Gerät auch der Hochkantmodus unterstützt:

Mein Dashboard - Porträt-Modus

In der dreizeiligen Ansicht wird in der Mitte ein Livestream abgespielt (Radio oder TV), während oben und unten nützliche Informationen angezeigt werden.

Hängt Euch das Tablet an die Wand und ihr habt einen - zugegeben einfachen - Ersatz für einen Echo Show 15. Wirklich vergleichen kann man diese beiden Lösungen nicht, aber das darf am Ende natürlich jeder für sich selbst entscheiden.

Achtung: um den Skill auf einem Fire Tablet zu starten, muss der Aufruf mit “_Alexa, starte Mein Dashboard Skill_“ erfolgen. Das “_Skill_“ am Ende des Aufrufs ist wichtig! Läßt man das Wort weg, dann versucht Alexa, eine App auf dem Tablet zu starten - und das ist sehr wahrscheinlich nicht das, was man möchte.


“Pizza Party” - Sprachanwendungen mit Jovo

Mit dem Framework Jovo können wir Sprachanwendungen schreiben, die auf mehreren Plattformen funktionieren. Zum Beispiel können aus einer Codebasis heraus alle nötigen Artefakte für Alexa und Google Assistant generiert werden.

Für den Einstieg in die damit verbundenen Konzepte sollte man aber etwas Zeit einplanen. Damit es für interessierte Entwickler schneller geht, habe ich auf Github ein umfassendes Repository “Pizza Party“ erstellt, in dem ich viele Beispiele aus Forenbeiträgen, Chats und der offiziellen Dokumentation zu einer lauffähigen Anwendung zusammengefügt habe. Unter anderem werden Features wie Stages, i18n, mehrere Plattformen und APL out-of-the-box unterstützt.

Schließlich demonstriert das Template auch, wie all die vielen Settings für die Shop/Store-Einträge von einer Dateibasis aus konfiguriert werden können. Insbesondere dann, wenn man mit mehreren Locales arbeitet, spart dieser Ansatz sehr viel Zeit bei der Wartung der Anwendung.

Die Funktionalität wird fortlaufend erweitert. Es lohnt sich also, regelmäßig vorbeizuschauen:

Plattformunabhängige Anwendungen mit Jovo


Neue Widgets für “Mein Dashboard” / “My Dashboard”

Seit dieser Woche gibt es neue Widgets im Alexa Skill “Mein Dashboard” / “My Dashboard”:

  • ISS Tracker mit Landkarte und automatischer Aktualisierung
  • Würfel: zufällige Zahl zwischen 1 und 6 anzeigen (mit Animation)
  • Wirf eine Münze / “Ja” oder “Nein” (mit Animation)
  • Bitcoin Tracker: Anzeige der Werte für Euro und Dollar
  • System: zeige eine Reihe von Systemeigenschaften von dem verwendeten Gerät an
  • Einstellungen: Das ist noch experimentell. Bis jetzt ist nur die Auswahl einer Hintergrundfarbe möglich. Der Wert wird auch noch nicht gespeichert.

Commodore 64 Emulation auf einem Echo Show

Einen anderen Computer auf einem Echo Show emulieren - geht das? Wenn man die vorhandenen losen Enden richtig zusammenführt, dann bekommt man so etwas tatsächlich zum Laufen, inklusive einer akzeptablen Performance und Soundchip-Emulation.

Hier ist das Rezept:

  • Verbinde in den Systemeinstellungen vom Echo Show ein Bluetooth Keyboard mit dem Gerät (ja, das geht wirklich!)
  • Wir suchen uns eine Internetseite, die es ermöglicht, C64-Spiele online zu spielen.
  • Von einem APL Dokument aus kann mit dem Befehl “OpenURL“ diese Internetadresse geladen und in dem eingebauten Browser dargestellt werden.
  • Wir schreiben einen Skill, der das APL Dokument darstellt.

Falls Ihr keine Lust habt, dass alles selber zusammenzuschrauben, dann hier ein Tipp: in dem Alexa Skill “Mein Dashboard“ ist alles schon fertig vorbereitet. Ihr müsst den Aktionsknopf nur antippen.

Nachfolgend findet Ihr einen Film, auf dem Ihr zusehen könnt, wie ich Frogger auf einem C64 spiele:
Artikel über "Mein Dashboard"


Alexa Skill “Mein Dashboard” / “My Dashboard”

Seit der Alexa Live 2021 stehen APL Widgets ganz weit oben auf dem Wunschzettel vieler Benutzer. Aber nicht jeder hat einen Echo Show 15 bei sich daheim stehen - vorausgesetzt man lebt überhaupt in einem Teil der Welt, in dem das Gerät schon verfübar ist.

Diese Situation hat mich zu der Frage geführt, wie weit man bei dem Thema Widgets kommen kann, wenn man mit dem arbeitet, was APL von Haus aus mitbringt.

Ein erstes Ergebnis ist der Alexa Skill “Mein Dashboard” / “My Dashboard”. Folgendes ist dabei herausgekommen:

My Dashboard

Eine alternative Ansicht mit weniger Widgets gibt es auch:

My Dashboard

Ein ausführliche Anleitung zu dem Skill findet Ihr hier (deutsch) und hier (englisch).

Der Skill ist für alle deutschen und englischen Locales verfügbar:

Oder einfach per QuickLink.


Arabische Alexa Skills

Ganz klar: ich spreche kein Arabisch. Aber wenn Alexa das nun gelernt hat, dann sollte es doch nicht so schwierig sein, einen einfachen Skill wie “APL Doctor“ auf Arabisch zu übersetzen? Dachte ich mir jedenfalls. Aber im Detail stößt man dann doch - natürlich - auf viele Schwierigkeiten, bei denen Google-Translate einem nicht helfen kann 🙂

Heute habe ich mein erstes “Certification Feedback“ bekommen, das sieht dann so aus:

Arabic Certification Feedback

Was steht da drin? Die Mail enthält weiter unten auch eine englische Version, die weiter hilft. Dort lerne ich: “Certification Failed“, weil es mit dem Launch Request nicht klappt.

“اليكسا افتحي مفتش الجهاز”

Das ist in der Tat schwierig zu testen, wenn man selber nicht Arabisch spricht. In der Developer Console klappt es, wenn man es textuell eingibt.

Nun beginnt die Fehlersuche. Ich bleibe am Ball und werde berichten …


“GPT-3” und Alexa

Es gibt keinen Zweifel daran, dass GPT-3, die neueste und leistungsstärkste Version der Natural Language Processing (NLP) Technologie von OpenAI, die Welt der künstlichen Intelligenz revolutioniert hat. Die Wartezeit, um Zugang zu dieser bahnbrechenden Technologie zu erhalten, hat viele Entwickler und Unternehmen dazu veranlasst, ungeduldig darauf zu warten, dass ihre Anwendungen und Projekte durch die Leistungsfähigkeit von GPT-3 unterstützt werden.

Nach über einem Jahr Wartezeit habe ich nun endlich auch Zugriff auf GPT-3 bekommen und konnte mit den Möglichkeiten experimentieren. Interessiert hat mich dabei auch, wie man diese Technologie vielleicht im Zusammenhang mit Alexa nutzen kann.

Unter anderem habe ich GPT-3 dazu benutzt, einen “Alexa APL Chatbot” zu bauen oder automatisch Anwendungsfallbeschreibungen für Alexa Skills zu generieren. Zu dem zweiten Szenario habe ich einen Artikel auf LinkedIn veröffentlicht.

So sehr ich davon beeindruckt bin, wie man mit GPT-3 korrekt ausehende Strukturen erzeugen kann, so sehr ist bei meinen Experimenten auch deutlich geworden, dass die Semantik der syntaktisch korrekten Sätze in der Regel völlig kaputt ist: Natürlich hat GPT-3 keine Ahnung davon, was es da sagt. Und so kann es dann eben passieren, dass das System schön verpackten Unsinn generiert.

Was für Anwendungsfälle kommen einem für so eine Technologie in den Sinn?

  • Eine “Bullshit Bingo” Matrix mit Inhalt füllen
  • Testdaten generieren
  • Zufällige Fake-Profile für eine Webseite generieren
  • Redemanuskripte für Politiker verfassen
  • Massenhaft Inhalt für Honeypot-Webseiten generieren, die wie echte Seiten aussehen, aber eigentlich nur zufällige Texte enthalten.
  • Fake Blogs erstellen mit vielen Artikeln zum Beispiel zu einem Thema wie “Alexa”.
  • Eine “Inspirationsmaschine” bauen, die (vielleicht) neue Ansätze und Ideen für bekannte Probleme formuliert.

Artikel auf LinkedIn über “Voice Model Expression Language”

Über mein Alexa Tool “voicemodel.applicate.de“ habe ich einen Artikel auf LinkedIn veröffentlicht und auf verschiedenen Kanälen dafür eine Menge Zuspruch bekommen.

Mit der Expression Language für Voicemodels werden lange Dateien wieder wartbar. Auch für die Lokalisierung bietet dieser Ansatz Vorteile. Bei der Übersetzung vom Alexa Skill Universallexikon auf Spanisch habe ich diesen Ansatz zusammen mit Xavier Portilla Edo erfolgreich verwendet.

Wer diese Funktion nicht nutzen möchte, der kann das Tool aber auch einfach nur als “Pretty Printer” verwenden, um in seinen gewachsenen JSON-Files aufzuräumen. Das erleichtert den Durchblick enorm.


Jetzt auch Spanisch: Alexa Skill ‘Enciclopedia Universal’

Meine eigenen Spanischkenntnisse sind bestenfalls rudimentär. So freue ich mich sehr, dass ich mit der großartigen Unterstützung von Xavier Portilla Edo meinen Skill “Universallexikon” nicht nur in Deutsch und English sondern nun auch in Spanisch veröffentlichen kann. Dort hört er auf den Invocation Name “Enciclopedia Universal“.

Das ist mein erster spanischer Alexa Skill.
Danke Xavier!

Hier der QuickLink:
https://alexa-skills.amazon.com/apis/custom/skills/amzn1.ask.skill.901f981c-7dba-4c62-97a5-262da8dd5ebc/launch


Wunschzettel zur Alexa Live 2021

Bald ist Alexa Live 2021. Einen Wunschzettel dazu mit meinen Wünschen und Erwartungen habe ich bei LinkedIn veröffentlicht. In den Kommentaren dort könnte Ihr Eure eigenen Punkte ergänzen. Oder einfach auf das Bild klicken:

Alexa Live 2021 Wishlist


RSS Feed eingerichtet

Das war schon lange überfällig: dieser Webauftritt hat nun auch endlich einen RSS-Feed.


Update Alexa Skill “R2D2” nun für englische Locales

Einer meiner ersten (und von der Implementierung her einfachsten) Alexa Skills ist einR2D2-Zwitscherer. Aus irgendwelchen Gründen war dieser jahrelang nur in Deutschland verfügbar, jetzt habe ich ihn auch für englische Locales portiert:

Im Skill Store gibt es “R2D2 - Ask me Anything!“ hier:


Neuer Alexa Skill “Trek Base”

Alexa Skill Trek Base

Dieser Skill beantwortet Fragen zu Protagonisten, Filmen, Serien, außerirdischen Völkern und Technologien aus dem Star Trek Universum. Die Informationen stammen aus dem Korpus von Wikipedia.

Der Skill ist derzeit ausschließlich in englischer Sprache verfügbar.

Beispiele:

  • “_Search for Jean-Luc Picard_“
  • What is Star Trek Voyager
  • Tell me something about the movie ‘First Contact’

Im Skill Store:

🇺🇸 https://www.amazon.com/gp/product/B095K6N8SS (en-US)
🇬🇧 https://www.amazon.co.uk/gp/product/B095K6N8SS (en-GB)
🇨🇦 https://www.amazon.ca/gp/product/B095K6N8SS (en-CA)
🇮🇳 https://www.amazon.in/gp/product/B095K6N8SS (en-IN)
🇦🇺 https://www.amazon.com.au/gp/product/B095K6N8SS (en-AU)


“ToolBox” kann jetzt “Pong”

Alexander Martin (der Erfinder von APL.Ninja) hat mir erlaubt, einige seiner APL Dokumente mit in ToolBox einzubinden. Damit ist es nun unter anderem auch möglich, bei einer Programmierpause das Spiel “Pong“ auf einem Echo Show zu starten. Gleichzeitig demonstrieren diese Beispiele, was alles mit Hilfe von APL realisiert werden kann. Zu Pong hat Alexander einen lesenswerten Artikel veröffentlicht, den ich zugleich jedem Einsteiger in das Thema APL mit gutem Gewissen empfehlen kann.

Aufruf in Deutschland:

"Alexa, starte ToolBox und spiele Pong"

Im Skill Store:


Neuer Alexa Skill “Cinema Space”

Alexa Skill Cinema Space

Die NASA verwaltet ein umfangreiches öffentliches Videoarchiv mit Material aus den letzten Jahrzehnten. Das ist eine echte Fundgrube für alle, die sich für die Themen Weltraum und Raumfahrt interessieren. Mit “Cinema Space“ kann man das Archiv nach gesprochenen Suchbegriffen durchforsten und die Videos direkt auf dem Gerät ansehen.

Aufruf:

"Alexa, open Cinema Space"

Im Skill Store:

🇺🇸 https://www.amazon.com/gp/product/B094NMZW3M (en-US)
🇬🇧 https://www.amazon.co.uk/gp/product/B094NMZW3M (en-GB)
🇨🇦 https://www.amazon.ca/gp/product/B094NMZW3M (en-CA)
🇮🇳 https://www.amazon.in/gp/product/B094NMZW3M (en-IN)
🇦🇺 https://www.amazon.com.au/gp/product/B094NMZW3M (en-AU)

Tipp: Da die Skill-Zertifizierungsstelle keine englischen Inhalte in deutschen Skills mag, kann ich den Skill nicht für Deutschland anbieten. Workaround: Ihr könnt einer deutsche Alexa in den Einstellungen beibringen, sowohl auf englische wie auch auf deutsche Befehle zu hören. Dann klappt es auch in “DE” mit “Cinema Space“. Leider werden die englischen Texte dann unter Umständen mit deutschem Akzent vorgelesen, aber damit kann man vielleicht leben 🙂


Update Alexa Skill “ToolBox”

Der Alexa Skill “ToolBox“ hat dazu gelernt. In der neuen Version können Stand-alone-APL-Dokumente wie Plugins eingebunden werden, um die Funktionalität des Skills zu erweitern. Zu den ersten Plugins zählen auch der “APL Doktor“.

Mit verschiedenen Sound-Tests ist es nun einfach möglich, sein Audio-Setup zu testen und zwei neue Slot-Type-Tests wurden auch ergänzt.

ToolBox


Chatbot mit APL visualisieren

Einen Chatbot in Alexa zu implementieren ist eine Sache, aber wie kann man einen Dialog visualisieren?

Eine passenden Style dazu habe ich unter APL.Ninja veröffentlicht. Der Text wird wie bei einer Schreibmaschine animiert, die Geschwindikeit der Animation kann über Parameter konfiguriert werden:

Alexa CHatbot


Update Alexa Skill “Universallexikon” / “Universal Explainer”

Der Alexa Skill “Universallexikon“ ist jetzt auch in englischer Sprache verfügbar und hört dort auf den Namen “Universal Explainer“.

Wie man den Skill verwendet, welche Tricks es gibt und was der Skill anders macht als andere Wikipedia-Skills, das kann man auf einer deutschen Informationsseite oder alternativ auch in englischer Sprache erfahren.

Im Skill Store:

🇩🇪 https://www.amazon.de/gp/product/B07166W6VL (de-DE)
🇺🇸 https://www.amazon.com/gp/product/B07166W6VL (en-US)
🇬🇧 https://www.amazon.co.uk/gp/product/B07166W6VL (en-GB)
🇨🇦 https://www.amazon.ca/gp/product/B07166W6VL (en-CA)
🇮🇳 https://www.amazon.in/gp/product/B07166W6VL (en-IN)
🇦🇺 https://www.amazon.com.au/gp/product/B07166W6VL (en-AU)


Update Alexa Skill “APL Doktor” / “APL Doctor”

Mit der Einführung von “APL 1.6” und der Definition von zusätzlichen Geräteprofilen war es überfällig, den Alexa Skill “APL Doktor“ / “APL Doctor“ zu aktualisieren.

Das neue Design sieht nun so aus:

APL Doctor

Aktualisiert wurde auch die englische Beschreibung von dem SKill.


Zu Gast im Podcast “Voice Tech Talk”

Vergangene Woche war ich zusammen mit Alexander Martin zu Gast bei Daniel Mittendorf im Podcast “Voice Tech Talk“ von beyond touch. Wir reden über Voice, Alexa, APL, Multimodalität und APL Ninja:

Pocdast mit Daniel Mittendorf, Alexander Martin und Frank Börncke

Mehr Informationen gibt es auf meiner Podcast-Seite mit zusätzlichen Informationen und Transkriptionen.


Update Alexa Skill “Universallexikon”

Alexa Skill Universallexikon

Den Alexa Skill “Universallexikon“ habe ich lange nicht mehr angefasst, nun ist er in einer überarbeiteten Version live gegangen. Es gibt nun zahlreiche zusätzliche Anwendungsbeispiele und Vorschläge. Das Sprachmodell wurde deutlich verfeinert und erfasst nun viel mehr Abfragen, als zuvor. Die Ergebnisse werden nun auch etwas schneller vorgelesen.

Das besondere an diesem Skill ist, dass nicht nur nach einem Stichwort, sondern auch nach Kontext gesucht werden kann.

Hier einige Beispiele:

"Alexa, frage Universallexikon, was ist Titanic als Schiff"

==> gefunden wird eine Artikel über das Schiff “RMS Titanic”

"Alexa, frage Universallexikon, was ist Titanic als Film"

==> gefunden wird eine Eintrag zu dem Film “Titanic” von 1997

"Alexa, frage Universallexikon, was ist Titanic als Zeitschrift"

==> gefunden wird eine Eintrag zum Satire-Magazin “Titanic”

Aufruf in Deutschland mit dem Sprachbefehl:

"Alexa, starte Universallexikon"

Im Skill Store:

🇩🇪 https://www.amazon.de/gp/product/B07166W6VL (de-DE)


Update Alexa Skill “Campus Voice”

Alexa Skill Universallexikon

Den Alexa Skill “Campus Voice“ gibt es jetzt in einer überarbeiteten Version. Mal eben die letzten Folgen der “Office Hours“ oder “Alexa & Friends“ auf Twitch ansehen? Das geht jetzt ganz einfach per Sprachbefehl. Nach dem Aufruf von Campus Voice erscheint eine Übersicht mit interessanten Links für Entwickler (siehe Bild oben) und per Touch kann man dann die Inhalte direkt auf dem Echo Show benutzen.

Aufruf in Deutschland mit dem Sprachbefehl:

"Alexa, starte Campus Voice"

Aufruf international:

"Alexa, open Campus Voice"

Im Skill Store:

🇩🇪 https://www.amazon.de/gp/product/B08C9KMVCG (de-DE)


Erstes Treffen von #VoiceLunch DACH

Am 14.4.2021 fand das erste Online-Treffen von #VoiceLunch DACH statt mit über 30 Teilnehmern aus Deutschland, Österreich und der Schweiz.

Wer den Kick-Off-Termin verpasst hat und beim nächsten Treffen mit dabei sein möchte, der kann sich hier anmelden - oder einfach unten auf das Bild klicken:

Anmeldung Voice Lunch


Neuer Alexa Skill “ToolBox”

Alexa Skill ToolBox

Der Alexa Skill “ToolBox“ sammelt viele Funktionen, die einem Alexa-Skill Entwickler die tägliche Arbeit erleichtern.

Von der Oberfläche her im Stil einer klassischen Kommandozeile gehalten kann der Benutzer nützliche Eigenschaften zu Geräten ermitteln und zusätzlich auch Zugriffszahlen zu den eigenen produktiven Skills abfragen (für die Analytics/Metrics-Funktion ist Account-Linking erforderlich).

Der Skill wird nach und nach erweitert und auch internationalisiert werden.

Aufruf in Deutschland

"Alexa, starte ToolBox"

Im Skill Store:

🇩🇪 https://www.amazon.de/gp/product/B091L5WB5S (de-DE)

Hinweis 1: Die Abfrage von Metrics-Zahlen ist dahingehend eingeschränkt, dass die API nur begrenzt viele Zugriffe pro Zeiteinheit erlaubt. Aus diesem Grund kann es passieren, dass Zahlen manchmal nicht ermittelt werden können, dies eine Minute später aber problemlos funktioniert.

Hinweis 2: Eine neue und erweiterte Version von ToolBox befindet sich bereits in der Zertifizierung. Wer neugierig ist und vorab schon einmal sehen möchte, was die nächste Version an neuen Funktionen bringt, der mag sich vielleicht die deutsche Dokumentation oder die englische Variante dazu ansehen.


Gender Bias bei Google Translate

Zugegeben, Google Translate ist schon eine praktische Sache. Aber wenn der Eingabetext zu wenig Kontext liefert, dann muss die KI im Hintergrund mit Annahmen über die reale Welt arbeiten, um eine möglichst korrekte Übersetzung zu finden.

Was soll sie zum Beispiel machen, wenn das ungarische “Ő” sowohl “er”, wie auch “sie” bedeuten kann? Bezieht sich das Adjektiv danach dann eher auf einen Mann oder eine Frau?

Schauen wir uns mal an einigen Beispielen an, wie Google entscheidet:

Gender Bias Examples

Wer selber einmal damit herumspielen möcht, der findet nachfolgend die Wortliste zu diesem Beispiel:

  • Ő csúnya

  • Ő szép

  • Ő édes

  • Ő vonzó

  • Ő sovány

  • Ő széles

  • Ő kicsi

  • Ő magas

  • Ő erős

  • Ő kövér

  • Ő kedves

  • Ő beteges

  • Ő depressziós

  • Ő mérges

  • Ő őrült

  • Ő hülye

  • Ő energikus

  • Ő beszédes

  • Ő határozott

  • Ő empatikus

  • Ő barátságos

  • Ő energikus

  • Ő kapzsi


#VoiceLunch Developers zum Thema “Jovo”

VoiceLunch Framework Jovo

Beim #VoiceLunch haben wir heute über das Jovo-Framework diskutiert. Jan König hat “Jovo for Web“ vorgestellt und für den Sommer den Sprung auf die Versionsnummer 4 angekündigt.


Neuer Alexa Skill “Mission Perseverance”

Alexa Skill Mission Perseverance

Der Alexa Skill “Mission Perseverance“ ermöglicht es, das öffentliche Film-Archiv der NASA zu der Mars-Mission Perseverance zu durchsuchen. Die Suchergebnisse können dann direkt auf einem Gerät mit Bildschirm angesehen werden.

Den Skill gibt es nur in englischer Sprache, weil die Zertifizierung es nicht mag, wenn ein deutscher Skill englische Inhalte transportiert.

So erging es mir im letzten Jahr bei der Zertifizierung von “Sky Pix“. Dieser Skill setzt auf dem Angebot von “APOD” (Astronomy Picture of the Day) auf. Dort musste ich den englischen Beschreibungstext der Bilder in der deutschen Version künstlich entfernen.

Bei alten Echo-Show Geräten kann es vorkommen, dass bestimmte Videos nicht abgespielt werden können.


Alle zwei Wochen am Donnerstag: #VoiceLunch for Developers

VoiceLunch

Achtung Technik: während man bei anderen #VoiceLunch Veranstaltungen nur selten eine Zeile Code zu sehen bekommt, sieht es bei VoiceLunch for Developers anders aus. Hier blickt man über den Tellerrand, geht tiefer in die Materie und teilt sein Wissen.

Wann und Wo?: Alle zwei Wochen am Donnerstag. Registrieren kann man sich hier


ShowTime!

Neuer Alexa Skill “ShowTime!”

Der Alexa Skill “ShowTime!“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Sendungen über die Themen Live-Konzert, Kabarett und Theater optimiert ist. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert, besonders lange Beiträge bevorzugt dargestellt.

Mehr über diesen Skill erfahrt Ihr hier.


Power Booster

Neuer Alexa Skill “Power Booster”

Der Alexa Skill “Power Booster“ schenkt Dir einen kurzen Moment Entspannung, um Deine Batterien wieder aufzuladen. Benötigt wird ein Gerät mit Bildschirm. Einfach mal ausprobieren: danach fühlst Du Dich garantiert besser!


“VoiceLunch for Developers” zum Thema “Bixby”

VoiceLunch

Beim ersten VoiceLunch for Developers erzählt uns Roger Kibbe etwas über Bixby. Wir haben viel gelernt in einer Stunde und es blieb noch Zeit, um Fragen zu stellen. Zwei Handys von Samsung wurden am Ende auch noch verlost - aber die haben schließlich andere Teilnehmer bekommen.

Wer in Zukunft keinen VoiceLunch-Termin verpassen möchte, der kann sich hier anmelden


Rosenzeit

Neuer Alexa Skill “Rosenzeit”

Der Alexa Skill “Rosenzeit“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Sendungen über die Themen Herz & Schmerz & Schlager optimiert ist. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert.

Mehr über diesen Skill erfahrt Ihr hier.


Naturzeit

Neuer Alexa Skill “Naturzeit”

Der Alexa Skill “Naturzeit“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Sendungen über die Themen Erde, Natur und Tierwelt optimiert ist. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert, der Sender KiKa wird nicht berücksichtigt.

Mehr über diesen Skill erfahrt Ihr hier.


Zweiter Platz bei Hackathon für Smart Speaker der DT

Darüber habe ich mich gefreut: nach 16 Tagen und mehreren Auswahlrunden hat die Jury beim Hackathon “Remote Rhapsody“ für den Smart Speaker “Hallo Magenta“ der Deutschen Telekom meinen Beitrag “Virtual Help Desk“ auf den zweiten Platz gewählt.

Zweiter Gewinner im Hackathon

Eine Beschreibung des Projekts inklusive Präsentation und Quelltext können auf “github“ eingesehen werden.

Zweiter Platz im Hackathon


Raumzeit

Neuer Alexa Skill “Raumzeit”

Der Alexa Skill “Raumzeit“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Sendungen über die Themen Geschichte, Schience und Fiction optimiert ist. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert, der Sender KiKa wird nicht berücksichtigt.

Mehr über diesen Skill erfahrt Ihr hier.


Smart Speaker “Hallo Magenta” der Deutschen Telekom (DT)

Durch meine Teilnahme beim Hackathon “Remote Rhapsody“ hatte ich ausführlich Gelegenheit, mich intensiv mit dem Smart Speaker “Hallo Magenta“ der Deutschen Telekom zu beschäftigen.

Durch die Brille eines Alexa-Entwicklers gesehen sind mir die folgenden Punkte aufgefallen:

  • Für Custom Skills ist kein “Invocation Name” erforderlich, da im Hintergrund mit einem einheitlichen großen Sprachmodell gearbeitet wird. Das Trainieren dieses Modells dauert lange und es drohen Seiteneffekte, wenn ein neuer Skill dazu kommt. Deshalb bin ich etwas skeptisch, inwiefern dieser Ansatz gut skalieren kann, wenn mehr und mehr Skills dazu kommen. Für den Anwender ist es aber natürlich eine tolle Sache, wenn er sich den Namen eines Skills nicht mehr merken muss und er einfach danach fragen kann, was ihn interessiert.

  • Es gibt vordefinierte Domänenmodelle zum Beispiel für Wetter-Skills. Mehrere Custom Skills können so ein und dasselbe Domänenmodell implementieren und der Benutzer hat dann die Wahl, welchen Skill er zum Beispiel zum Thema “Wetter” einsetzen möchte.

    Das macht es möglich, so etwas zu fragen wie “Magenta, wie wird das Wetter in München?“ statt “Magenta, frage Big Sky wie wird das Wetter in München?“.

  • Ein eingebauter DECT Chip macht es möglich, das Gerät mit einem Telefon-Router zu verknüpfen. Bei mir hat es mit einer FritzBox erfolgreich funktioniert. Damit ist es mir möglich, ein Telefongespräch anzustoßen oder einen Anruf auf meiner Festnetznummer entgegenzunehmen.

  • Eine API für Telefonie macht es möglich, native Anrufe auch von einem Skill aus anzustoßen. Ein möglicher Anwendungsfall ist zum Beispiel ein Help Desk Skill, der den Benutzer nach seiner Situation fragt und dann einen Anruf zu einer passenden Hotline auslöst.

  • Alexa ist in die Geräte “eingebaut”. Abhängig vom Wake-Word werden die Requests zu unterschiedlichen Endpunkten weiter geleitet.

  • Für die Implementierung von Custom Skills ist ein Python SDK verfügbar (es soll auch ein JAVA API existieren, das habe ich aber nicht testen können). Das SDK nimmt einem die Arbeit mit der JSON-Kommunikation zwischen Gerät und Skill ab. Ein SDK für Node.JS ist (noch?) nicht verfügbar.

  • Um einen Custom Skill zum Laufen zu bringen, muss manuell mit unterschiedlichen Artefakten (Code und JSON)hantiert werden. Eine einheitliche Oberfläche, wie wir sie im Zusammenhang mit Alexa Hosted Skills kennen, existiert für Magenta derzeit nicht

  • Eine Integration in Visual Studio Code existiert nicht.

  • Der Skill kann irgendwo gehostet werden, so lange er nur über eine öffentliche URL erreichbar ist.

  • Besser als bei Alexa: Die Companion App unterstützt “Cards”, bei denen URLs angeklickt werden können.

  • Zum Testen existiert ein Command Line Tool, mit dem ein “Chat” mit dem eigenen Skill ermöglicht wird.


Krimizeit

Neuer Alexa Skill “Krimizeit”

Der Alexa Skill “Krimizeit“ ist eine spezielle Version von dem Skill “Meine Mediathek“, die für den Zugriff auf Krimisendungen optimiert ist. Tipps, Filter und Suchfunktion sind für diesen Zweck angepasst. Höchstwahrscheinlich irrelevante Beiträge wie Nachrichtensendungen werden aus den Ergebnislisten herausgefiltert, die Sender KiKa und Phoenix gar nicht erst berücksichtigt.

Mehr über diesen Skill erfahrt Ihr hier.


Neu: Generator für APL Grid Layout mit Container-Elementen

Immer wieder stehe ich vor der Aufgabe, mit den Containerlementen von APL eine Gitterstruktur aufbauen zu müssen. Da das wenig Spaß macht, habe ich einen Generator geschrieben, der den langweiligen Teil dieser Arbeit übernimmt. Danach bleibt dann mehr Zeit übrig, sich um den interessanten Teil der Arbeit zu kümmern.

Auf Wunsch werden Container für Kopf- und Fußzeilen angelegt. Nach Bedarf kann das Tool auch eindeutige Ids und Styles anlegen, mit denen wiederkehrende Layouts ausgelagert werden können.

Achtung: technisch ist es möglich, sehr große Gitterstrukturen mit dieser Anwendung generieren zu lassen. In der Praxis muss man aber darauf achten, dass eine Response nicht größer als “24 kilobytes“ (kein Scherz) sein darf (siehe hier auch die entsprechende Stelle in der Developer Dokumentation).

Das Tool kann man hier aufrufen: aplgrid.applicate.de.

APL Container based grid layout

Wie sieht das Ergebnis aus? Hier ein Beispiel für ein 5 x 7 Gitter (5 Zeilen und 7 Spalten) mit Kopf- und Fußzeilen:

APL Container based grid layout

Auf dieser Grundlage kann man dann schneller mit der Feinarbeit beginnen und sich um die Inhalte des Layouts kümmern.


Neu: Expression Language für Alexa Sprachmodelle

Wenn die JSON Beschreibungsdateien für Alexa wachsen, wird es immer unhandlicher, diese zu pflegen. Zu diesem Zweck arbeite ich selber mit einer Beschreibungssprache, die es mir erlaubt, dynamische Ausdrücke kompakt zu schrieben. Mit dem folgenden Ausdruck habe ich mal eben so zwölf verschiedene “sample utterances“ notiert:

"Wie [geht|läuft|funktioniert|macht man] das [ | jetzt | hier]"

Mit einem Tool kann ich mir dann aus dieser Notation heraus die JSON Dateien generieren, die in der Alexa Developer Console verwendet werden. Durch den Einsatz von Variablen kann ich mir das Vorgehen weiter vereinfachen.

Dieser Ansatz macht es einfacher, Sprachmodelle zu pflegen und wieder zu verwenden. Vielleicht ist das auch für andere Alexa Entwickler nützlich. Deshalb habe ich eine Webseite geschrieben, die diese Toolchain für jeden Benutzer zugänglich macht: interactionmodel.applicate.de.

Click here to find a detailed English description about the approach.

Voice Model Expression Language


TV Live Streams auf dem Echo Show ansehen

Wer sich für eigene Zwecke selber einen Skill schreiben möchte, um “mal eben so” eine Webseite auf dem Echo Show zu öffnen, der kann sich den Code von meinem Alexa Skill “News Flash” auf github ansehen.

Der Skill startet einen Browser und öffnet eine Webseite, die im dargestellten Fall einen CNN-Livestream anbietet. Die URL für die Webseite könnt Ihr natürlich einfach anpassen.

Dieser Ansatz taugt sicher für eigene Anwendungsfälle, durch die Zertifizierung wird er es so aber nicht schaffen.

Was habe ich bei der Entwicklung gelernt:

  • Das Verhalten des Geräts unterscheidet sich abhängig vom eingestellten Browser (Silk oder Firefox). Schaut selber, was für Euch am besten funktioniert.

  • Auf einem Echo Spot funktioniert dieser technische Ansatz nicht. Dieses Gerät unterstützt zwar APL, aber keinen Browser.


Online JSON Formatter

Da ich so etwas im Zusammenhang mit Alexa häufiger brauche, habe ich mir so ein Tool nun selber geschrieben und mache es gerne öffentlich: unter der Adresse jsonformatter.applicate.de gibt es ab sofort einen Online-JSON-Formatter.

JSON online formatter tool


Neue Benutzerführung bei “Meine Mediathek”

Die Oberfläche von “Meine Mediathek“ habe ich gründlich überarbeitet, die Ergebnisse werden jetzt anders präsentiert. Auch der Pause-Dialog bei der Filmwiedergabe wurde mit einer kleinen Animation “aufgehübscht”.

Wer den Skill auf verschiedenen Geräten benutzt, der wird bemerken, dass sich das Erscheinungsbild abhängig vom Device unterscheidet. Das System dahinter ist: bei Geräten mit schwacher Hardwareleistung wird weniger Video und mehr Text gezeigt. Das soll den Skill bedienbar halten.


Neu: Alexa Arcade Game “Garten Party”

Der Alexa Arcade Skill “Garten Party“ ist mein Beitrag zum ‘Amazon Alexa Hackathon at VOICE 2020’. Er ist in einer deutschen und englischen Variante verfügbar. Als Erläuterung habe ich eine englische Beschreibung erstellt.

Alexa Skill Garten Party

Worum geht es? Als Spieler hilfst Du “Frank dem Frosch” dabei, möglichst viele Blumen auf der Wiese zu sammeln. Außerdem muss der Frosch die anderen Tiere mit seiner langen Zunge schnappen, bevor diese schneller sind. Mit Sprachbefehlen wie ‘links’, ‘rechts’, ‘oben’, ‘unten’ oder ‘Feuer!’ kannst Du den Frusch durch die Blumenwiese steuern.

Ein Level ist abgeschlossen, wenn weder Blumen noch andere Tiere übrig sind. Dabei muss ein Level muss beendet werden, bevor Zeit und Energie verbraucht sind. Das Einsammeln von Blumen bringt mehr Energiepunkte als das Schnappen mit der Zunge. Das Spiel wird mit der Zeit schneller und es krabbeln pro Level mehr Tiere über die Wiese.

Wer es ausprobieren mag: Das Programm hört in Deutschland auf den Namen Garten Party und international auf Garden Party:


Meine Mediathek: “Der beste Alexa Skill im Bereich Unterhaltung”

Das freut mich sehr: mein Alexa Skill “Meine Mediathek“ wurde von der Webseite “HouseControllers“ in der Rubrik “Die besten Alexa Skills 2020“ nominiert für “Der beste Alexa Skill im Bereich Unterhaltung”“.


Buchempfehlung “Did you mean Camel Lion?”

Aus der Reihe “Books we will likely never see in print“:

Rebuilding Large Language Models.


Neu: Kostenloser Kurs “Zero To Hero” direkt auf dem Echo

Wer lernen möchte, wie man einen Alexa Skill programmiert, für den stellt Amazon viel kostenloses Material zur Verfügung, unter anderem auch den Videokurs “Zero To Hero“, der auf YouTube verfügbar ist. Wer sich den Kurs direkt auf einem Echo Show ansehen möchte, kann ihn nun direkt per Sprache aufrufen. Wer es ausprobieren mag: Das Programm hört in Deutschland auf den Namen Entwickler Tutorial und international auf Developer Tutorial:

Alexa Skill Zero To Hero

Aufruf in Deutschland

"Alexa, starte Entwickler Tutorial"

Aufruf International (click here for an english homepage)

"Alexa, open Developer Tutorial"

🇩🇪 https://www.amazon.de/gp/product/B08L6LQJQ3 (de-DE)
🇺🇸 https://www.amazon.com/gp/product/B08L6LQJQ3 (en-US)
🇬🇧 https://www.amazon.co.uk/gp/product/B08L6LQJQ3 (en-GB)
🇨🇦 https://www.amazon.ca/gp/product/B08L6LQJQ3 (en-CA)
🇮🇳 https://www.amazon.in/gp/product/B08L6LQJQ3 (en-IN)
🇦🇺 https://www.amazon.com.au/gp/product/B08L6LQJQ3 (en-AU)


Mehr Suchergebnisse bei “Meine Mediathek”

Der Skill “Meine Mediathek“ hat wieder etwas dazu gelernt: Es werden nun nicht mehr nur maximal sechs Suchergebnisse auf einem einzigen Bildschirm dargestellt, sondern insgesamt bis zu drei Bildschirme mit jeweils sechs Ergebnissen, zwischen denen dann per Wischgeste auf dem Bildschirm oder mit Sprachbefehl gewechselt werden kann.

Auch im barrierefreien Betrieb gibt es nun bis zu 18 Ergebnisse. Vorgelesen werden aber nur die ersten drei davon. Die Inhaltsbeschreibungen der anderen Ergebnisse können bei Bedarf direkt per Sprachbefehl abgefragt werden.

Meine Mediathek zeigt mehr Ergebnisse


Buchempfehlung “Rebuilding Large Language Models”

Aus der Reihe “Books we will likely never see in print“:

Rebuilding Large Language Models.


Alexa Skill “Stadtplan” / “Metropolis” ist live

Stadtpläne interaktiv mit Sprache aufrufen. So etwas hatte ich schon einmal implementiert. Aber das Programm ist in die Jahre gekommen und so habe ich den Code und die Darstellung noch einmal gründlich überarbeitet. Statt der Lösung von Open Street Maps benutze ich nun Karten von Nokia HERE Maps. Damit gelingt die Benutzererfahrung deutlich schneller.

Auf einem Echo Show, Echo Spot und einem Fire TV werden die Ergebnisse unterschiedlich angepasst dargestellt und fallweise zusätzliche Bildschirmelemente zur Navigation angeboten.

Innerhalb der Karten kann per Sprachbefehl navigiert werden:

  • Zoom In
  • Zoom Out
  • Nach Norden
  • Nach Süden
  • Nach Westen
  • Nach Osten
  • Gehe nach London / Paris / New York / Sidney

Start:

  • Alexa, öffne Stadtplan
  • Alexa, frage Stadtplan nach einer Karte von Berlin

Wer es ausprobieren mag: Das Programm hört in Deutschland auf den Namen Stadtplan und international auf Metropolis.

Alexa Skill Metropolis

Erhältlich im Skill Store:

🇩🇪 https://www.amazon.de/gp/product/B07NY8BJY9 (de-DE)
🇺🇸 https://www.amazon.com/gp/product/B07NY8BJY9 (en-US)
🇬🇧 https://www.amazon.co.uk/gp/product/B07NY8BJY9 (en-GB)
🇨🇦 https://www.amazon.ca/gp/product/B07NY8BJY9 (en-CA)
🇮🇳 https://www.amazon.in/gp/product/B07NY8BJY9 (en-IN)
🇦🇺 https://www.amazon.com.au/gp/product/B07NY8BJY9 (en-AU)


Buchempfehlung “Memorable Invocation Names”

Aus der Reihe “Books we will likely never see in print“:

Finding Memorable Invocation Names.


Bessere Screenshots für Alexa Skills

Bildschirmfotos oder auch Videos von Alexa Skills zu erstellen, ist nicht immer ganz einfach. Eingebaute Funktionen gibt es keine und das Abfilmen mit der Handykamera gerät in der Regel zur echten Wackelpartie.

Etwas einfacher ist die Situation nun mit einem praktischen Tool von Alexander Martin (@xeladotbe), geworden, das es komfortabel ermöglicht, APL-Dokumente auf verschiedenen Geräten darzustellen:

APL Simulator für bessere Screenshots


Englische Inhalte in deutschen Alexa Skills

Schon häufiger bin ich über dieses Thema gestolpert: bei der Zertifizierung von deutschen Alexa Skills sieht man den Bezug zur englischen Sprache kritisch. So wurde schon einmal ein Skill abgelehnt, der zu öffentlichen Bildern der NASA englische Bildbeschreibungen vorlas. Auch mit englischen Invocation Names kann man Probleme bekommen.

Aktuell habe ich Schwierigkeiten, weil mein Sprachmodell auch auf die Befehle “Zoom In“ und “Zoom out“ hört. Das mögen die Prüfer gar nicht. Da hilft es wenig, dass im Deutschen DUDEN das Wort “Zoom” sowohl als Verb wie auch als Substantiv enthalten ist.


Alles hat einen Anfang: Zeitreise in das Jahr 1987

Wenn man bei Google seinen eigenen Namen eingibt, dann stößt man manchmal auf seltsame Dinge aus der eigenen Vergangenheit: In einem C64-Wiki bin ich auf einen Eintrag aus meiner Zeit als C64-Entwickler gestoßen. Dort hat sich jemand wirklich die Mühe gemacht, ein über 30 Jahre altes Programm von mir nachträglich zu dokumentieren, dass einmal bei “INPUT 64“ erschienen ist.

Ich selber konnte mich an dieses Werk “PLH” gar nicht mehr erinneren. Dank an den unbekannten Autor, der sich die Mühe gemacht hat, diesen Moment wieder zurück in die Gegenwart zu holen!

Commodore 64 - PLH


Textvariationen für bessere Alexa Skills

Alexa Skills, die immer dasselbe sagen, wirken schnell langweilig und eintönig. Mit wenigen Zeilen Code kann man aber einfach Abwechlung und Vielfalt in der Äußerungen eines Skills zu bringen.

Alles was man braucht, ist eine Hilfsfunktion wie im folgenden Beispiel:

function unwrap(text) {
    var matches, options, random;
    var regEx = new RegExp(/{([^{}]+?)}/);
    while ((matches = regEx.exec(text)) !== null) {
        options = matches[1].split("|");
        random = Math.floor(Math.random() * options.length);
        text = text.replace(matches[0], options[random]);
    }
    return text;
}

Diese Funktion verwende ich in mehr oder weniger allen meinen Alexa Skills. Was die Methode macht und wie sie funktioniert, erkläre ich auf GitHub.


Akustische Verzerrung und Echoeffekte mit APLA

Von einem Gerät, dass ECHO im Namen trägt, sollte man eigentlich erwarten, dass es einfach ist, für Sprachausgaben Echo-Effekte oder Verzerrungen zu konfigurieren. Out-of-the-box ist das aber überaschenderweise nicht der Fall.

SSML bietet hier nur wenig Unterstützung. Wie man eine mit SSML verzerrte Stimme in der Praxis einsetzen kann, kann man sich bei meinem Arcade-Skill “Commander Speedo“ anhören.

Mit der Einführung von “APLA“ haben wir nun aber ganz neue Möglichkeiten bekommen. Eine “Mixer“ genannnte Funktion erlaubt es, Sprachausgaben mit Zeitversatz parallel abzuspielen. Damit bekommen wir einen Echo-Effekt hin und haben sogar viele Schrauben, an denen wir zum Feintuning drehen können. Wie das genau funktioniert, könnt Ihr Euch auf meinem Github-Account ansehen.


Mehr “Barrierefreiheit” für Alexa Skill “Meine Mediathek”

Der Alexa Skill “Meine Mediathek“ hat wieder etwas dazu gelernt. Im aktuellen Update wird insbesondere das Thema “Barrierefreiheit” addressiert, was durch die Erweiterung der Funktionalität auf bildschirmlose Geräte und die Unterstützung von “VoiceView” zum Ausdruck kommt:

Hier eine Liste mit neuen Funktionen und Änderungen:

  • Neu: Barrierefreiheit - Einsatz von VoiceView auf Geräten mit Bilschirm
  • Neu: Barrierefreiheit - Funktioniert auch auf Geräten ohne Bildschirm wie Echo Dot
  • Auf Geräten ohne Bildschirm sagt Alexa mehr, als auf Geräten mit Bildschirm
  • Neu: Das Angeobt vom Saarländischen Rundfunk fehlte noch in der Ergebnisliste und wurde ergänzt
  • Neu: Zur Vermeidung von doppelten Ergebnissen werden - wenn nicht explizit gesucht - solche Sendungen mit dem Merkmalen “Hörfassung” und “Audiodeskription” nicht angezeigt
  • Neu: Die explizite Suche nach Sendungen mit “Hörfassung” findet automatisch auch Filme mit dem Merkmal “Audiodeskription”
  • Neu: Die Anwendung merkt sich den zuletzt verwendeten Suchbegriff für den nächsten Start
  • Neu: Die Episodensuche findet nun noch mehr Schreibweisen für Episoden
  • Neu: unaussprechliche Sonderzeichen werden aus der Filmbeschreibung herausgefiltert
  • Neu: Wenn die Wiedergabe pausiert wird, dann wird der Skill erst nach 10+ Minuten abgebrochen und nicht schon nach 30 Sekunden
  • Die Performance der Wiedergabe auf einem “Fire TV” wurde verbessert
  • Ein Fehler in der Sortierung von Filmen wurde behoben
  • Die gesprochenen Hilfetexte wurden verbessert

Achtung: Während der Tonwiedergabe von Filmen auf einem Gerät ohne Bildschirm wie zum Beispiel dem Echo Dot ändert sich teilweise die Art der Aufrufe von Funktionen. Dies ist dann der Fall, wenn während der Wiedergabe der Tonspur eine Aktion ausgelöst werden soll. Dann muss der Name “Meine Mediathek“ mit im Befehl verwendet werden.

An einem Beispiel wird das verständlicher. Eine Beispielsitzung auf einem Echo Dot könnte folgendermaßen aussehen:

  • Alexa öffne Meine Mediathek
  • Alexa öffne Meine Mediathek und suche nach Tatort Hörfassung“ (findet auch Filme mit “Audiodeskription!”)
  • Alexa, lies die Beschreibungen noch einmal
  • Alexa, worum geht es in Film Nummer 2?
  • Alexa spiele Film Nummer 2
  • Alexa, Pause
  • Alexa, fortsetzen
  • Alexa, frage Meine Mediathek: was läuft gerade?
  • Alexa, öffne Meine Mediathek und gehe zum Anfang.
  • Alexa, öffne Meine Mediathek und spule vor.“ (es wird 30 Sekunden vorgespult)
  • Alexa, öffne Meine Mediathek und spule zurück.“ (Die Sendung wird 30 Sekunden zurück gespielt)
  • Alexa, öffne Meine Mediathek und suche nach Krimis Hörfassung
  • Alexa, öffne Meine Mediathek und gehe zurück zur Übersicht
  • Alexa, öffne Meine Mediathek und suche nach Sturm der Liebe

Das ist zum Teil etwas umständlich. Beim Einsatz des Alexa AudioPlayers führt aber technisch leider kein Weg daran vorbei, den Namen des Skills während der Wiedergabe noch einmal nennen zu müssen.

Hier findet Ihr mehr zu dem Skill “Meine Mediathek” inklusive einer ausführlichen Befehlsliste.

Alexa aktiviere den Skill Meine Mediathek


Update für Alexa Skill “Meine Mediathek” bringt Episodensuche

Der Alexa Skill “Meine Mediathek“ hat wieder etwas dazu gelernt. Wenn nach Serien wie “Sturm der Liebe” oder “Huber und Staller” gesucht wird, kann gezielt nach einer Episodennummer gesucht werden. Ein Dialog könnte dann folgendermaßen aussehen:

  • Alexa, öffne Meine Mediathek und suche nach Sturm der Liebe
  • Alexa, suche nach Episode 2000

Oder

  • Alexa, öffne Meine Mediathek und suche nach Hubert und Staller
  • Alexa, suche nach Folge Nummer 12

Hier findet Ihr mehr zu dem Skill “Meine Mediathek” inklusive einer ausführlichen Befehlsliste.


“Commodore 64” Emulator für Alexa / Echo Show

Noch so ein Experiment: Durch Einsatz der “Web API for Games“ ist es möglich, einen Emulator für den Commodore 64 auf einem Echo Show zu booten:

Commodore 64 - Beispielprogramm

Wenn man den Echo Show mit einem Bluetooth Keyboard verbindet, dann können wir sogar Programme im Commodore Basic V2 schreiben:

Commodore 64 - Bluetooth Keyboard

Leider ist es sehr ungewiss, ob so ein Ansatz es durch die Zertifizierung schaffen würde. Das lässt mich zögern, aus diesem Ansatz einen vollwertigen Skill zu machen.


“Quick Links” für Alexa Skills

Quick Links“ sollen dem Benutzer eines Browsers den schnellen Zugriff auf einen Alexa Skill per Link ermöglichen. Leider ist dieses Feature noch nicht für Deutschland verfügbar. Folgt man der Anleitung und erstellt manuell einen Quick Link für einen deutschen Skill, dann erscheint im Browser einen Fehlermeldung.

Das kann man zum Beispiel beim Skill Meine Mediathek sehen. Hier lautet der Quick Link:

https://alexa-skills.amazon.com/apis/custom/skills/amzn1.ask.skill.8872472e-9436-4e9e-887c-5a936f8191d8/launch

Was aber passiert, wenn man den Quick Link für einen Skill erstellt, der sowohl für “en-US” wie auch “de-DE” verfügbar ist?
Im Falle von “Commander Speedo” lautet der Link:

https://alexa-skills.amazon.com/apis/custom/skills/amzn1.ask.skill.08488df0-fe4f-4d4e-a749-eb0d1603bae7/launch

Der Request wird dann weitergeleitet auf die deutsche Skill Store Seite von dem Skill. Das ist doch schon einmal etwas.

Wer das für “Commander Speedo” schon einmal ausprobieren möchte, hier ist der Link:


Erfahrungsbericht: APL “Document Link” im Einsatz

Mit APL 1.4 haben wir nun die Möglichkeit, APLA und APL Dokumente zu hosten um dann über eine URI vom Skill Code aus auf diese Dokumente zu verlinken.

Wie sich der Einsatz dieser neuen Funktionalität in der Praxis anfühlt, darüber habe ich einen Artikel zu Document Links mit Codebeispielen auf Github veröffenticht.

return handlerInput.responseBuilder
  .addDirective({
    type: "Alexa.Presentation.APL.RenderDocument",
    token: "someToken",
    document: {
      src: "doc://alexa/apl/documents/some-apl-template-name",
      type: "Link",
    },
    datasources: {},
    packages: [],
  })
  .speak(speakOutput)
  .reprompt(speakOutput)
  .getResponse();
}

Das Node.js-Codebeispiel zeigt, wie man vom Code aus auf ein abgelegtes Dokument verweist.


Alexa Sounds mischen mit “APLA” (APL for Audio)

Die Alexa Live 2020 hat uns als Neuerung auch APLA (APL for Audio) gebracht. Damit können Töne und Sprache bei der Ausgabe gemischt werden, um besondere Effekt zu erzielen. Das ist schon bei einfachen Beispielen ein effektvoller Fortschritt.

Mir kam der Gedanke, mit diesem Feature einen Alexa DJ Skill zu erstellen, der als “Soundmaschine“ vom Benutzer über die Toucheingabe von einem Echo Show gesteuert wird.

Bei den ersten Experimenten mit dieser Idee kam aber schnell heraus, dass APLA nicht so präzise arbeitet, wie es für so eine Idee nötig wäre.

So ist zum Beispiel das Kommando “Mixer“ dazu da, Töne und Sprachausgaben parallel zu mixen. Im Idealfall sollte man also bei zwei gleichen Ausgaben und perfektem Timing überhaupt nichts bemerken.

Tatsächlich hört man aber einen kräftigen Echo-Effekt. Wer es selber einmal ausprobieren möchte:

{
  "type":"Mixer",
  "items":[
      {
        "type":"Speech",
        "contentType":"PlainText",
        "content":"Tell me why the echo"
      },
      {
        "type":"Speech",
        "contentType":"PlainText",
        "content":"Tell me why the echo"
      }
  ]
}

Nachtrag: Wie sich nachträglich herausgestellt hat, war dies tatsächlich ein Bug, der mittlerweile gefixt wurde. Nun funktioniert es wie dokumentiert.


“Device Log”: Fehlersuche in der Developer Web Console

Wenn es bei der Skill-Entwicklung klemmt, dann beginnt in de Regel die leidige Arbeit mit dem Durchsuchen von Logfiles, auf die wir über CloudWatch zugreifen können. Das erweist sich oft als mühselig.

Wenn das Fehlerverhalten von einem Skill auch auf der Testseite der Developer Web Console reproduziert werden kann, dann gibt es noch eine weitere Möglichkeit zur Analyse, die häufig übersehen wird:

Der Knopf “Device Log“ eröffnet uns Einblick in einige Fehlermeldungen, die wir niemals in CloudWatch zu sehen bekommen. Falls gar nichts mehr geht, dann ist dies zumindest einen Versuch wert:

Web Console


Multimodale Alexa-Skills: APL oder Web-Technologie?

Mit der offiziellen Freischaltung der “Web API for Games“ hat der Entwickler nun zwei ganz unterschiedliche Technologien zur Auswahl, wenn es darum geht, grafische Inhalte auf dem Bildschirm darzustellen:

  1. Web-API for Games - frei verfügbar sein Alexa Live 2020
  2. Alexa Presentation Language (APL) - seit Alexa Live 2020 verfügbar in der Version 1.4

Für welchen Ansatz soll man sich entscheiden? An einem Punkt ist es einfach: Wenn der Skill nicht mit einem Spiel zu tun hat, bleibt einem nur der Weg über APL. Der Einsatz von Web-API for Games ist eingeschränkt auf den Einsatz in Spiele-Skills. Obwohl der Ansatz auch in einem anderen Kontext technisch funktionieren würde, bringt man ihn nicht durch die Zertifizierung.

Schwieriger wird es, wenn man ein Spiel implementieren möchte. Hier hat man die Qual der Wahl, die folgenden Kriterien helfen vielleicht bei der Entscheidung:

Web API for Games

  • PRO
    • Vertraute Technologie
    • Viele Tools existieren
    • eventuell existierende Codebase kann angepasst werden
    • Entwickler mit Know-How sind leicht am Markt zu finden
  • CONTRA
    • nicht alles funktioniert wie im Browser
    • Startup der Engine dauert länger als bei APL

Alexa Presentation Language:

  • PRO
    • Schnelleres Startup
    • Grundsätzlich bessere Performance: Die Technologie ist näher an der Hardware dran
  • CONTRA
    • Lernkurve für Einsteiger, (nicht mehr ganz so) neue Technologie
    • Tooling noch nicht so komfortabel wie bei HTML, aber es wird besser (seit Alexa Live 2020 gibt es Preview in Visual Studio Code)
    • Entwickler mit entsprechendem Know How gibt es (noch) nicht so viele.

Alexa APL: Autoscrolling von Texten mit String.slice()

Auf github zeige ich an einem Beispiel, wie man durch Kombination der Funktionen Time() und String.slice() in APL Texte dazu bringen kann, von selber zu scrollen.

Das ist hilfreich, wenn man viel Information auf wenig Platz unterbringen will.

Es gibt da aber aktuell eine Einschränkung: Wie sich bei der Entwicklung zeigte, bringt die Funktion String.slice() ein APL zum Absturz, wenn sie auf einen Umlaut angewendet wird.

Der Bug ist gemeldet und in Arbeit.


Alexa Live: Alexa Conversations ausprobiert

Alexa Live“ hat uns vergangene Woche mit “Alexa Conversations“ ein neues Feature freigeschaltet, welches verspricht, Alexa Skills mit deutlich weniger Code zu implementieren. Die Anzahl verstandener Äußerungen soll gleichzeitig sehr viel umfangreicher und flexibler sein.

Das klingt vielversprechend und deshalb habe ich es selber einmal ausprobiert. Erster Eindruck: Unabhängig von dem, was “Alexa Conversations” in der Spracherkennung leistet, verändert sich der Entwicklungsprozeß. Zumindest Teile der Konfiguration werden nicht auf Code-Artefakte abgebildet, wenn wir mit den Ask-Tools von der Kommandozeile arbeiten. Ohne Web-Developer-Console geht es also nicht. Das ist schade.

Deployment-Zyklen beim Ändern des Sprachmodells werden sich deutlich verlangsamen: ich selber habe schon beim Ändern eines “invocation names” Zeiten von 7,5 Minuten für einen Rebuild gemessen. Die offizielle Dokumentation von Amazon nennt “15 Minuten” realistisch.

In anderen Worten bedeutet dies, dass man damit rechnen muss, nicht mehr als vier Änderungen pro Stunde durchzubringen. Das ist nicht viel, wenn man mit einer neuen Technologie erst einmal warm werden muss.


Alexa Live: Web API für Games nun frei verfügbar

Die Alexa “Web API for Games“ ist nun für jeden Entwickler frei verfügbar. Damit ist es möglich, auf Geräten mit einem Bildschirm Spiele zu implementieren, die Webtechnologien verwenden.

Wie die Einbindung von Webinhalten in einen Skill funktioniert, kann man sich auf meiner Github-Seite an einem sehr einfachen Beispiel ansehen. Der Launch-Request wird dort direkt an eine existierende Webseite weiter geleitet und das Ergebnis auf dem Bildschirm dargestellt.

Nicht alles, was im Web geht, funktioniert auch auf den Echo-Geräten. Wer den Einsatz der Web API in seinem Projekt plant, sollte vorher die offizielle Liste der Einschränkungen konsultieren. Außerdem pflegt Amazon eine Liste mit “Known Issues“.

Die aus meiner Sicht wichtigste Einschränkung ist nicht technischer Natur. Amazon untersagt den Einsatz dieser Technologie für solche Alexa Skills, die nichts mit Spielen zu tun haben. Nachvollziehbar finde ich das nicht:

Das Web ist der alltägliche Beweis dafür, dass es viele Anwendungsgebiete gäbe, bei denen der Einsatz der Web API auch für andere Zwecke eine gute Idee wäre. Aber auch wenn es technisch funktioniert: die Regeln zur Zertifizierung von Alexa Skills werden streng gelebt und ich würde nicht dazu raten, diese Einschränkung bei einer Technologieentscheidung zu ignorieren.


Alexa Skills einfacher testen mit “Tap to Alexa”

Die “Acessibility Tools“ von einem Echo Show sollen den barrierefreien Zugang zu dem Sprachassistenten erleichtern. Die Optionen, die wir hier bei den Einstellungen finden, bieten mit “Tap to Alexa“ aber auch eine Funktion, die uns Entwicklern die Arbeit erheblich erleichtern kann.

Werden die Funktionen grundsätzlich aktiviert, dann erscheint zunächst ein “schwebender” Knopf auf dem Bildschirm, der in gewissem Rahmen frei verschoben werden kann. Bei mir hat er oben rechts auf dem Bildschirm ein Zuhause gefunden:

Tap to Alexa - Activation Button

Wozu ist das gut? Wer beim Testen einen Skill nicht immer wieder per Sprachbefehl aktivieren mag, hat nun alternativ die Möglichkeit, eine Art Makro zu definieren, die mit einem Knopf verknüpft wird, dessen Funktion per Touch aktiviert werden kann. Damit läßt sich dann ein “stummer Aufruf” von einem Alexa Skill realisieren:

Tap to Alexa - Menu


APL 1.4: Hinweise auf ein Update?

Der “APL Doctor“ zeigt auf meinem Echo Show für die Alexa Presentation Language die Versionsnummer APL 1.4 an (siehe unten). Auch die Testumgebung der Developer Console steht mittlerweile auf der Versionsnummer 1.4, von der wir offiziell noch gar nichts wissen. Vielleicht erfahren wir demnächst bei der Alexa Live!-Konferenz Neuigkeiten zu diesem Thema?

[APL 1.4 coming soon]


Update für Alexa Skill “Meine Mediathek”

Der Alexa Skill “Meine Mediathek“ hat dazu gelernt. Da aus Platzgründen stets nur bis zu sechs Ergebnisse auf dem Bildschirm angezeigt werden, gibt es noch die Möglichkeit, das Suchergebnis zu filtern:

  • Alexa, suche nach langen Filmen
  • Alexa, suche nach kurzen Filmen
  • Alexa, suche nach aktuellen Filmen

Hier findet Ihr mehr zu dem Skill Meine Mediathek inklusive einer ausführlichen Befehlsliste.


APL 1.3: Die Timer API für andere Zwecke verwenden

Auf github.com habe ich anhand mehrere Beispiele erläutert, wie es möglich ist, die Time-API von APL 1.3 für ganz andere Zwecke zweckzuentfremden. Mit ihrer Hilfe lassen sich einfache Animationen erstellen, die im Hintergrund laufen und auch nicht durch Spracheingabe unterbrochen werden.

APL 1.3 Time API


Alexa Skill “Memo Mail” ist live

Wer seine Mailbox gerne auch als Aufgaben/ToDo-Liste verwendet, der wird diesen Skill nützlich finden: “Memo Mail“ schickt einen kurzen gesprochenen Text an die Mailadresse, die mit dem Account des Echo-Geräts verknüpft ist.

Zum Aufruf gibt es zwei Möglichkeiten:

Aufruf in einem Kommando:
Alexa starte Memo Mail und schicke mir den Text: Milch und Brot einkaufen“ (das funktioniert nur mit kurzen Texten)

Verwendung in zwei Schritten:
Alexa starte Memo Mail“ (Alexa fragt danach nach dem zu versendenden Text, der dann auch länger sein darf)

Tipp: Je kürzer der gesprochene Text ist, um so besser kann Alexa ihn verstehen

Tipp: Das Subject von der Mail enthält das Symbol ‘📎’ und am Ende ein Tag mit dem Namen [MemoMail]. Das erleichtert bei Bedarf das Erstellen von automatischen Filterregeln.

Zur Erläuterung habe ich auch eine englische Beschreibung erstellt.

Memo Mail


Alexa Skill “Sky Pix” ist live

Der Alexa Skill “Sky Pix“ zeigt auf einem Echo-Gerät mit Bildschirm zufällige Bilder von der NASA-Webseite “Astronomy picture of the day” (APOD) an.

Zur Erläuterung habe ich eine englische Beschreibung erstellt.

Sky Pix


Linux und X Windows auf einem Echo Show

Basierend auf der großartigen Vorarbeit von Fabrice Bellard (bellard.org) ist es möglich, ein komplettes Linux-System inklusive X Windows auf einem Echo Show zu booten. Auch die Erkennung vom Touch-Bildschirm funktioniert:

Echo Show running Linux and X Windows

Das ganze passiert allerdings “nur” innerhalb von einem Browserfenster. Aber es zeigt, was die Hardware von einem Echo Show technisch hergibt.


Alexa Skill “Meine Mediathek” ist live

Der Alexa Skill “Meine Mediathek“ bietet Zugriff auf Inhalte von Mediatheken der Öffentlich-rechtlichen Sender in Deutschland. Mit einem Suchbefehl können alle Mediatheken auf einmal durchsucht und Filme auf Zuruf abgespielt werden.

Hier findet Ihr mehr zu dem Skill Meine Mediathek.

Meine Mediathek

Der Skill ist ausschließlich in deutscher Sprache verfügbar:


Echo Show mit Tastatur

Man muss nicht alles machen, was machbar ist. Es ist auch nicht immer sinnvoll, aber Spaß macht es vielleicht trotzdem:

So ist es zum Beispiel technisch möglich, einen Echo Show per Bluetooth mit einer externen Tastatur zu verbinden. Wenn man dann noch im Echo Show einen Browser öffnet, dann kann man dieses Setup als Entwicklungsumgebung benutzen, wie folgendes Foto zeigt:

Echo Show mit Tastatur

So gezeigt, ist das eher eine Machbarkeitsstudie, aber vielleicht gibt es für dieses Setup ja auch sinnvolle Use Cases?


Alexa Skill “Campus Voice” ist live

Der Alexa Skill “Campus Voice“ bietet schnellen Zugriff auf freie und kostenlose Dienste, die den Alexa Skill Entwickler bei seiner Arbeit unterstützen. Enthalten sind zum Beispiel Zugriffe auf Twitch-Vorträge, Video-Kurse, Vorträge, Diskussionsforen und Beispielprojekte auf GitHub.

Zur Erläuterung habe ich eine englische Beschreibung erstellt.

Campus Voice


Alexa Arcade Skill “Commander Speedo” ist live

Der Alexa Arcade Skill “Commander Speedo“ ist live in einer deutschen und englischen Variante! Zur Erläuterung habe ich eine englische Beschreibung erstellt.

Als Spieler hilfst Du dabei “Commander Speedo”, das Universum zu retten. Sammle Energiekristalle und schieße alle Monster auf dem Bildschirm ab, bevor sie Dich erwischen. Mit Sprachbefehlen wie ‘links’, ‘rechts’, ‘oben’, ‘unten’ oder ‘Feuer!’ kannst Du die Rakete steuern.

Ein Level ist abgeschlossen, wenn weder Monster noch Edelsteine übrig sind. Dabei muss ein Level muss beendet werden, bevor Zeit und Energie verbraucht sind. Das Einsammeln von blinkenden Edelsteinen bringt mehr Energiepunkte als das Abschießen. Das Spiel wird mit der Zeit schneller und es treten pro Level mehr und mehr Monster gegen Dich an.

Der Skill wurde auch live im “Alexa Game Chat” gespielt und besprochen:

Commander Speedo on Twitch


Auf Wiedersehen “Echo Buttons”

Amazon hat angekündigt, dass die “Echo Buttons Skill API” ab 1. Dezember 2020 “deprecated” wird.

Die Idee von Echo Buttons hat mir gefallen, aber Skills dafür zu programmieren hat wenig Spaß gemacht.

Sechs Buttons habe ich daheim, aber bis auf einen Button, der auf Knofdruck alle Smart-Home-Lampen in der Wohnung abschaltet, warten die anderen in einer Schublade auf einen Aufgabe.


Alexa Skill “APL Doktor” ist live

Auf Alexa Geräten mit Bildschirm werden vom “APL Doctor“ gerätespezifische Daten angezeigt, die für die Entwicklung von Alexa Skills mit APL (Alexa Presentation Language) hilfreich sind.

Fun fact: Amazon hat mich im Rahmen der Zertifizierung gebeten, deutlich zu machen, dass dies eine privat entwickeltes Tool und kein offizieller Amazon Skill ist.

Zur Erläuterung habe ich eine englische Beschreibung erstellt.


Alexa Skill “Sternzeit” / “Starfield Clock” ist live

Auf Alexa Geräten mit Bildschirm zeigt dieser Skill eine Analoguhr vor einem animierten Hintergrund an. Im deutschsprachigen Raum hat der Skill den Namen “Sternzeit“, im englischsprachigen Raum hört der Skill auf “Starfield Clock“.

Starfield Clock

Zur Erläuterung habe ich eine englische Beschreibung erstellt.


Alexa Skill “Corona Monitor” nicht zertifizierbar

Aus aktuellem Anlaß habe ich einen Skill geschrieben, der auf Zuruf zu genannten Ländern die aktuellen Corona-Fallzahlen auf einer Weltkarte anzeigt und vorliest.

Leider hat es der Skill aus konzeptionellen Gründen nicht durch die Zertifizierung geschafft:

Skills zum Thema “Corona” wolle man grundsätzlich nicht im Skill Store haben, weil man gegenüber dem Benutzer nicht sicher stellen könne, dass die genannten Zahlen fundiert sind. Ich habe beobachtet, dass auch andere Skills mit Bezug zu Corona, die gelistet waren, nachträglich wieder verschwunden sind.


Prototyping mit APL (Alexa Presentation Language)

Vor der Implementierung kommt die Konzeptarbeit: aktuell arbeite ich mit APL (Alexa Presentation Language) an der GUI Gestaltung für einen neuen Skill:

Commander Speedo

Wenn alles klappt, wird das einmal ein sprachgesteuertes Arcade-Spiel werden.


Alexa Skill: S.O.S. als Morsezeichen

Ein kleiner Skill von mir, der das Signal S.O.S. als Morsezeichen abspielt, hat es nicht durch die Zertifizierung geschafft:

Man wolle vermeiden, dass ein Benutzer den Skill irrtümlicherweise dazu benutzt, einen echten Notruf absetzen zu wollen …


Einstieg in die Skill Entwicklung mit Minimal Viable Product (MVP)

Mittlerweile bin ich seit mehreren Jahren bei dem Thema Alexa dabei. Da ist es Zeit für einen Blick auf die Zugriffs- und Nutzerzahlen. Es gibt Skills von mir, die an einem Tag entstehen und solche, in denen sehr viel Arbeit steckt (Wikipedia, Landkarten, Bewegungstrainer).

Ernüchternd ist die Erkenntnis, dass die aufwendigen Skills eher diejenigen sind, die nicht so häufig benutzt werden.

Für mich ist das ein starkes Argument dafür, beim Einstieg in das Thema mit einem minimal viable product (MVP) zu beginnen und erst einmal Erfahrung damit zu sammeln, ob und wie die Kunden einen Skill benutzen.


Richtlinien zur Zertifizierung

Manchmal wundert man sich, an welcher Vision für “gute” Alexa-Skills sich der Zertifizierungsprozeß orientiert:

  • Ein Skill von mir, der die Ballade “Erlkönig“ von Johann Wolfgang von Goethe vorliest, wurde aus konzeptionellen Gründen abgelehnt. Man hätte Zweifel an der Benutzererfahrung, so hieß es sinngemäß.

  • Ein anderer Skill von mir, der auf den Namen “Manamana“ hört, daraufhin mit “Bidibidibi“ antwortet und sonst gar nichts macht, hat es dagegen problemlos durch die Zertifizierung geschafft.

Was sagt das über den Zertifizierungsprozeß aus?


Skill Entwicklung anders mit Litexa

Das Team von Litexa stellt ein Framework vor, mit dem sich Alexa Skills mit deutlich weniger Aufwand entwickeln lassen. Es werden längst nicht alle Features unterstützt, die Alexa bietet, deshalb sollte der Einsatz vor Projektbeginn gründlich geprüft werden.

Vor allem der Deployment-Prozeß verringert - wenn einmal eingerichtet - den nötigen Zeitaufwand für die Livestellung ganz erheblich.

Erstaunlich ist, wie der Umfang an Code, der für die Entwicklung nötig ist, auf einen Bruchteil schrumpft im Vergleich zum klassischen Ansatz.

Mittlerweile habe ich mehrere Skills auf diesem Weg erstellt und bin jedes Mal erstaunt darüber, wie schnell ich fertig bin. Dieser Ansatz hat sicher Zukunft!


Liste meiner Alexa Skills

Eine Liste meiner veröffentlichten Alexa Skills findet man bei amazon.de.


Durcheinander bei der Skill Prüfung

Szenario: Ein Kunde leitet mir einen Fehlerbericht von Amazon weiter mit der Aufforderung, dass ein Fehler im Skill korrigiert werden soll. Andernfalls droht dem Skill die Abschaltung.

Seltsam: Die Fehlerbeschreibung aus der Abteilung “Zertifizierung” passt überhaupt nicht zu dem Skill, den ich implementiert habe.

Lösung: Es gibt einen anderen Skill mit demselben Namen von einem anderen Anbieter. Die Tester haben Skills und die dazugehörigen Herausgeber miteinander verwechselt. Das sollte eigentlich nicht passieren.


Alexa friendly mp3-Files erzeugen

Alexa ist sehr wählerisch damit, was die Aufbereitung von mp3-Dateien angeht.

Unter Linux ist das Thema mit einem Einzeiler erledigt:

1
ffmpeg -i [input-file] -ac 2 -codec:a libmp3lame -b:a 48k -ar 16000 [output-file.mp3]

Wer das ganze lieber interaktiv im Browser erledigt, dem empfehle ich die Webseite https://www.jovo.tech/audio-converter#


Amazon empfiehlt meinen R2 D2 Skill

Im wöchentlichen Alexa-Newsletter hat Amazon den Nutzern meinen R2-D2-Skill empfohlen:

.

Danach gingen dann die Zugriffe und Aufrufzahlen für den Skill unmittelbar durch die Decke. Aber wie man sieht, normalisiert sich das über die Zeit wieder:

.

Amazon hat mir einige Tage später eine Warnung zugeschickt, dass durch den intensiven Aufruf des Skills Kosten durch die Nutzung der AWS-Infrastruktur entstehen können. Dabei geht es allerdings um einen Betrag < 1 €. Ich denke, damit kann ich leben. :-)

Wer es selber einmal ausprobieren will: R2D2 im Alexa Skill Store