Linux & Co.Meinung

Freie Alexa-Alternative mit Jasper – oder auch nicht

Sprachsteuerung ist das Ding der Stunde – allen voran Amazons Echo und Dot mit Alexa, aber auch OK GOOGLE und SIRI spielen mit. Leider sind die Möglichkeiten beschränkt und die Anbieter hören zu. Wie wäre es mit einer schönen Open-Source-Alternative auf Raspberry-Pi-Basis? Mit Jasper lassen sich beliebige eigene Funktionen einbauen, beispielsweise um ein Mediacenter wie Kodi zu steuern. Leider ist Jasper ein Paradebeispiel für elende Kellerkinder …

35 Stunden für’n Arsch

UPDATE: Hier wird vor allem gemeckert – wenn Ihr eine freie Alexa-Alternative sucht, die funktioniert, haben wir hier eine Schritt-für-Schritt-Anleitung für den Raspberry Pi.

Ich lieben Open Source und Freie Software, ich frickel gerne und kann bisweilen auch einiges an Geduld aufbringen – aber die Jasper-Pfeiffen haben es tatsächlich geschafft, dass ich aufgebe, nach ca 35 Stunden. Open-Source- und Entwicklerstudien zeigen immer wieder, dass die Dokumentation eines der größten Probleme von Open-Source-Projekten ist. Und Jasper ist das perfekte Beispiel, wie eine versaute Dokumentation ein ganzes Projekt zerstören kann. Warum, werde ich nie verstehen: Es ist soooo viel Arbeit, ein Projekt wie Jasper zu programmieren, da muss doch Zeit sein, um sich jemanden zu suchen, der das Keller-Nerd-Gequatsche in Oberwelt-Normalo-Menschen-Sprache übersetzt …

jasper
Sieht einfach aus, oder? Abwarten!

Die Installation

Im Grunde sollte es ganz einfach sein: Man spielt ein vorbereitetes Image auf eine SD-Karte, lässt ein Konfigurationsskript laufen und legt dann direkt mit den ersten, eingebauten Interaktionen los: „Jasper – Beep – What’s the time? – Beep – It’s 14:30 p.m.“. Soweit die Theorie. Aber was genau befindet sich auf dem vorkompilierten Image? Keine Angabe. Nach dem Imaging soll man Jasper klonen und Python-Abhänigkeiten installieren, wie es in der Installations-Doku beschrieben wird, und dann direkt zur Konfiguration überspringen.

In der Konfigurationsanleitung wird man dann wieder zurückverwiesen an die Installation diverser Tools und Abhängigkeiten – müssen die nun tatsächlich installiert werden oder gilt das nur für die manuelle Installation ohne „fertiges“ Image? Keine Angaben. Da allerlei kompiliert werden muss, dauert der Vorgang dann rund 9 Stunden – nur um dann vor dem letzten kleinen Schritt zu sagen, dass nicht genügend Speicher vorhanden ist …

Also das Ganze Prozedere nochmal auf einer größeren SD-Karte – wieder 9 Stunden später: Kein Platz! Nun gut, Raspi-typisch muss das Dateisystem vorher über raspi-config erweitert werden – dazu keine Angabe. Wäre es zuviel verlangt, das mal zu erwähnen? Also erweitert, letzten Schritt ausgeführt und schon kann’s losgehen – oder auch nicht, es kommen nur Fehlermeldungen.

Erfreulicherweise lässt sich auf Github ein Installationsskript für ein normales Raspbian finden – wieder gut 9 Stunden später: Installation erfolgreich durchgelaufen! Jasper gestartet und siehe da: Neue Fehlermeldungen …

jasper
Die Konfiguration per Skript ist einfach – die Installation ein riesen Aufwand.

Die Auflösung

In den offiziell verlinkten Support-Foren findet sich dann eine mögliche Lösung: Die Dokumentation sei völlig veraltet, wird nicht mehr gepflegt und offenbar waren die „Hersteller“ nicht gewillt, daran irgendwas zu ändern – wie zumindest ein aktiver User mitteilt, der hier allerlei Ersatz-Doku schreibt. Zudem bietet er ein eigenes Image, mit wirklich vorinstalliertem Jasper – geil! Leider funktioniert der Download nicht …

Nach weiterer Sucherei findet sich auch hierzu eine Lösung: Der werte User ist gerade mit Privatdingen beschäftigt und kommt nicht zu seinem neuen Image – das alte ist leider nicht verlinkt. Stattdessen soll künftig ein grafischer Installer folgen – man muss wohl hoffen. Auch auf die Doku darf man vielleicht hoffen: Vor ein paar Monaten ist zumindest an den Installationsteil doch nochmal Hand angelegt worden, einige Installationsquellen wurden beispielsweise aktualisiert – aber auch egal, denn funktionieren tut es dennoch nicht.

Pfeiffen …

Im Endeffekt habe ich nun rund 35 Stunden Zeit investiert, davon rund 27 Stunden warten auf das Kompilieren – und nichts läuft. Jasper hätte das Potenzial ein wirklich großes Ding zu werden – zumal als Spracherkennung neben Offline-Diensten sogar Google genutzt werden könnte! Offline-Betrieb, kein lauschender Anbieter, relativ simples Anlegen eigener Befehle/Interaktionen, Spotify-Integration und etliche Features mehr, würden wohl den einen oder anderen Nutzer und Entwickler interessieren. Und doch werden die Tausenden Stunden Programmierarbeit durch die beschissene Dokumentation völlig zu nichte gemacht – oder habt Ihr schonmal von Jasper gehört? Oder im Zusammenhang mit der Alexa-Berichterstattung davon gelesen? Nein? Eben!

Dass Programmierer Probleme mit der Außenwelt-API haben, ist nicht neu – und liebe Coder, dafür gibt es ja Menschen wie mich, die Frickelsoftware einrichten und dann normalen Menschen erklären, wie das geht. Im Fall von Jasper ist die Dokumentation nicht geradlinig (drei Wege und Rückverweise), nicht vollständig (Image-Inhalte, Raspi-Konfiguration), nicht völlig korrekt (einige Verzeichniswechseln in den Installations-Code-Schnippseln funtionieren nicht) und vermutlich in Teilen veraltet – von Umsetzbarkeit für Otto Normalverbraucher muss man sowieso nicht reden.

Otto will auch spielen!

Warum gibt es für diesen Otto kein fix und fertiges Image? Hier wird ein System mit einer Standardkonfiguration für ein ganz bestimmtes Stück Hardware, hier den Raspberry Pi Modell B+, aufgesetzt – da wäre Plug&Play nun wirklich kein Problem. Klar, bestimmt lässt sich Jasper irgendwie zum Laufen bringen. Es gibt auch eine Anleitung zum komplett manuellen Installieren – geschätzte Zeit: 11 Stunden – und da habe selbst ich jetzt keinen Bock mehr drauf.

Schade Jasper-Entwicker, Ihr versaut etwas wirklich Tolles durch ein eigentlich völlig läppisches Problem – so wird Jasper vermutlich auf ewig ein Spielzeug für sehr, sehr wenige Nerds und vermutlich ein paar professionelle Anwender bleiben. Entschuldigt das einleitende „Pfeiffen“, aber es nervt einfach, immer wieder über die immer wieder selben Dinge zu stolpern. Man hat das Gefühl, Ihr lauft erfolgreich einen Ultra-Marathon und bleibt dann vor der Ziellinie stehen, weil Ihr nicht wisst, wie Ihr durch das Band kommt – das muss Euch doch selber ärgern, oder?

Nun, vielleicht habe ich irgendwann die Muße, es nochmal zu probieren, so ist es irgendwie unbefriedigend …

Mirco Lang

Freier Journalist, Exil-Sauerländer, (ziemlich alter) Skateboarder, Dipl.-Inf.-Wirt, Einzelhandelskaufmann, Open-Source-Nerd, Checkmk-Handbuchschreiber. Ex-Saturn'ler, Ex-Data-Becker'ler, Ex-BSI'ler. Computer-Erstkontakt: ca. 1982 - der C64 des großen Bruders eines Freunds. Wenn Ihr hier mehr über Open Source, Linux und Bastelkram lesen und Tutonaut unterstützen möchtet: Über Kaffeesponsoring via Paypal.freue ich mich immer. Schon mal im Voraus: Danke! Nicht verpassen: cli.help und VoltAmpereWatt.de. Neu: Mastodon

21 Kommentare

  1. Haha. Da ging es ja wohl mehreren wie mir!

    Habe mich vor zwei oder drei Jahren mit Jasper beschäftigt und bin nach einigen Tagen gescheitert. Wirklich schade!

    Habe jetzt aus Spaß und Neugier mal wieder nach Jasper gegoogelt um den Projektstatus zu checken und finde das hier. :D

    Danke für die Vorschläge bezüglich der Alternativen.

  2. Ich persönlich bin mittlerweile im Dauer-Internet-Frust-Modus, weil die meisten Kollegen sich zwar seitenweise über alle möglichen Themen auslassen, ES ABER NOCH NICHT EINMAL SCHAFFEN EIN DATUM IN IHREN ARTIKEL ZU SCHREIBEN

      1. Aber nur, wenn man JavaScript zuläßt. Was der sicherheitsbewußte Nutzer heute lieber nicht mehr standardmäßig tun sollte…

  3. Naja. Jasper ist wahrlich kein Musterbeispiel wie man es richtig macht.
    Aber 27 Stunden warten auf den compiler ist.. naja.. selbst schuld ;) Man muss nicht alles direkt auf dem lahmen Pi compilen.

    Bei mir hat sich das mit cross-compiling auf dem i7 wunderbar in kürzester Zeit erledigt.. Wobei.. „wunderbar“ auch nicht. Der Frust kommt dann halt 25 Stunden früher ;)

    Es ist wahrlich viel Frickelei bis es mal läuft. Aber leider wird es ja eh nicht mehr so recht maintained.

    1. Ja, das hätte ich wohl cleverer anstellen können ;)
      Allerdings: Zum einen ist Kompilieren weit, weit entfernt von meinem Arbeitsalltag und mit cross-compiling hätte ich mich überhaupt erstmalig beschäftigen müssen. Zum anderen ist für mich bei derlei Projekten eines klar: Ich mache ALLES exakt so, wie es die Entwickler vorgeben, selbst wenn es blödsinnig klingt. Und zwar, um genau sowas wie hier eigentlich zu vermeiden … Mit dem ähnlich gelagerten Projekt Jarvis hat’s zum Beispiel gut geklappt und doch wieder sinnlos Zeit gekostet: Vorgegeben wurde eine alte OS-Version – also habe ich auch die genutzt, wer weiß schon, ob das Projekt nicht irgendwelche alten Abhängigkeiten benötigt. Und dann: Volles Upgrade während der Installation, auf dem Raspi … Aber der Gedanke „Ach, das kriege ich schneller hin als so, wie die Entwickler es empfehlen“, hat mich früher vermutlich noch viel mehr Zeit gekostet.

      1. Hat denn nicht vielleicht jemand Lust einen aktuellen und funktionierenden Docker Container dafür zu bauen?

      2. Schöne Idee! Aber ich befürchte, es ist einfacher auf Projekte wir Jarvis auszuweichen – ich war jedenfalls ziemlich zufrieden und erstaunt, wie reibungslos dabei alles lief. Gut, eine Website fast ausschließlich auf Französisch ist nicht unbedingt der Renner … Aber wir haben ja hier Anleitungen auf Deutsch und auf Englisch.

        Mal abgesehen davon: Meinen wenigen Erfahrungen nach, ist der Umgang mit Docker auch nicht so ganz trivial – für Otto Normalverbraucher imho absolut keine Alternative.

      1. Stimmt, ums Englische kommt man allerdings in der Welt der Entwicklung nicht wirklich herum. Selbst viele Projekte, die komplett von einer rein deutschsprachigen Community gepflegt werden, werden bisweilen nur und ausschließlich englisch dokumentiert und sogar verwaltet/supportet.

        Und bei jedem auch nur etwas komplexeren Open-Source-Projekt sieht es auch für Endanwender kaum anders aus (unter anderem deshalb, weil Übersetzungsprojekte aus dem Englischen immer wieder daran scheitern, dass die einen aus „you“ ein „Du“, die anderen ein „Sie“ machen wollen – und sich dann gegenseitig so lange korrigieren, bis keiner mehr Bock hat. Ich habe selbst einige Male frustriert aufgegeben, nachdem mühselige Übersetzungen einfach gelöscht wurden).

  4. Hallo,

    Unzulänglichkeiten bei Dokumentationen können ärgerlich sein – aber:
    Haben die Entwickler von jasper mit ihrer Software und einer guten Doku / einem guten Handbuch als Ist-Zustand geworben? Wenn ja, kann ich vielen Aussagen des Artikelschreibers zustimmen, wenn nein, liegt die Sache schwieriger.
    Die Haltung der Entwickler „Wir wollen mit dem Kram unseren Spaß, stellen es zwar zur Verfügung, aber kommt irgendwie damit klar“ ist genauso aus Sicht freier Lizenzenen in Ordnung wie ein „wir wollen, dass möglichst viele – auch nur Anwender – mit der Software klar kommen“.
    Es gibt Leute, die ihre Kompetenzen elitär pflegen und solche, die sie gerne anderen einsteigerfreundlich vermitteln, warum sollte das beim Bereich „Freier Software“ anders sein?

  5. Ich habe mich mittlerweile auch schon 3 mal ein paar Tage mit jasper befasst. Und ich bin wahrlich kein Anfänger. Aber ich bin genauso wie du immer wieder daran gescheitert.

  6. Moin,

    ich bin selbst Entwickler von freier* Software und achte darauf mich soweit als irgendwie möglich auf freie Software zu stützen.
    Ja die klassischen Argumente Coden ist viel geiler als Dokumentieren greifen aber eigentlich nicht.
    Wenn man ein etwas größeres Projekt angeht dokumentiert man bereits bevor man eine Zeile Code produziert. Leider beherzigen dies nicht alle und häufig geht allein deswg. schon das Projekt den Bach runter :-(

    Aber, wie so häufig sollte man auch hier nicht nur in Einsen und Nullen denken. Dreht den Spieß um und unterstützt die Developer. Fangt im Zweifel – wie der im Forum erwähnte Nutzer – selbst an zu dokumentieren. Nehmt Kontakt zu der Communit(!) und den Entwicklern auf. Viele freuen sich über Unterstützung. Lasst euch von auch nicht in abschrecken, wenn Ihr mal was nicht versteht. Schliesslich haben Sie die Entwickler die „Begrifflichkeiten“ und Arbeitsweise ausgedacht. Niemand ausser denen kennt diese erstmal…
    auch empfinde ich schlecht – oder gar nicht dokumentierte – Software (als auch Quelltext) ähnlich unangenehm wie proprietäre Software. Wo sind meine Freiheiten* hin, wenn ich diese Nutzung eines Programmes erst mühseelig „reverse engenieren“ muss ?
    Versucht euch – gerade als Erfahrener Nutzer – in der Mitte zu treffen.

    Grüße und frohe Festtage

    *https://fsfe.org/about/basics/freesoftware.de.html

  7. Hm… Erklärversuch: Neues Coden ist viel geiler als (langweilige) Doku zu schreiben – über etwas, das sich ein anderer ausgedacht hat. OpenSource, oft freiwillig, da fehlt die „leitende Hand“ bzw. hierarchische Struktur von oben. Bei allen Vorteilen von OS hier ein Nachteil ggü. Anwendungen, die von einem Unternehmen (für Geld) bereitgestellt werden.
    Kritik an die Jasper-Entwickler schicken halte ich für eine große, richtige und wichtige Geste [oder lesen die hier mit?], denn wie sollen sie’s erfahren. Sicher geht’s anderen „Ottos“ – wie ich auch einer bin ;-) – ähnlich.

Schreibe einen Kommentar zu Manu Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Schaltfläche "Zurück zum Anfang"
Schließen

Ooopsi!

Bitte deaktiviere Deinen Adblocker.