NEWS
[Aufruf] Adapter: Snips - Offline Speak2Text
-
Hmm. Ich mach immer nur "Sam update-assistant". Da wird der ganze Assistent neu eingerichtet. Da geht es wunderbar.
-
sorry das ich da jetzt jetzt so rum-mülle … (darf noch keine PN schreiben)
Hmm. Ich mach immer nur "Sam update-assistant". Da wird der ganze Assistent neu eingerichtet. Da geht es wunderbar. `
egal wie oft ich den Assi update oder neu deploye .. es wird nix mit meinen Interpreten oder Genres …
ich hab leider keine Ahnung welche Datei für was zuständig ist, aber seh ich mir die folgenden Datein an, steht dort auch interpret/genre ohne (s)
pi@raspberrypi:/usr/share/snips/assistant/custom_asr $ cat config.json { "entityNameToFilename": { "snips/duration": "e_5.snips", "de.iobroker.expletive": "e_3.snips", "de.iobroker.interpret": "e_12.snips", "de.iobroker.broadcaster": "e_9.snips", "snips/number": "e_11.snips", "de.iobroker.genre": "e_10.snips", "de.iobroker.boolean": "e_6.snips", "de.iobroker.devices": "e_1.snips", "de.iobroker.colors": "e_0.snips", "de.iobroker.mediacommands": "e_2.snips", "de.iobroker.rooms": "e_4.snips", "de.iobroker.unit": "e_8.snips", "snips/datetime": "e_7.snips" },
ebenso in
pi@raspberrypi:/usr/share/snips/assistant/custom_asr/inj_v2 $ cat config_inj_v2.json { "snips/duration": { "vanilla": "e82acd23-b24a-4ebe-af07-5b013a22add2.vanilla", "ngram": false, "added": "e82acd23-b24a-4ebe-af07-5b013a22add2.added", "pruningThresholds": [], "order": 0 }, .... .... .... "de.iobroker.interpret": { "vanilla": "2c8815bf-be42-4d23-b1f7-3ec3063db76d.vanilla", "ngram": true, "added": "2c8815bf-be42-4d23-b1f7-3ec3063db76d.added", "pruningThresholds": [], "order": 3 }, "de.iobroker.genre": { "vanilla": "c1a032ec-6b26-446f-a417-ef2d64838896.vanilla", "ngram": true, "added": "c1a032ec-6b26-446f-a417-ef2d64838896.added", "pruningThresholds": [], "order": 3 },
der Adapter würd zwar gerne in "de.iobroker.genres" injecten, aber der Assi weiss scheinbar nicht das es den gibt.
Fehlermeldung:
Jan 31 17:57:33 raspberrypi snips-injection[1839]: INFO:snips_asr_injection : ASR Injections started Jan 31 17:57:34 raspberrypi snips-injection[1839]: ERROR:snips_injection_hermes : injection failed for injection: Injection { root_dir: "/var/lib/snips/injections/20190131T155545781415112/inj_20190131T165733733272227.Vo5pUsuc2TWr", date: 2019-01-31T16:57:33.733272227Z } Jan 31 17:57:34 raspberrypi snips-injection[1839]: -> caused by: Entity de.iobroker.genres doesn't exist. The entities available in the assistant are: ["de.iobroker.expletive", "de.iobroker.colors", "de.iobroker.boolean", "de.iobroker.unit", "de.iobroker.mediacommands", "de.iobroker.rooms", "de.iobroker.genre", "snips/duration", "snips/number", "de.iobroker.devices", "de.iobroker.interpret", "de.iobroker.broadcaster", "snips/datetime"]
assi is übrigens der
hab ich da irgendwo wieder eine Kleinigkeit übersehen ??
lg
Andi
-
Adapter passt und Fehler ist auch nachvollziehbar. Ich denke, dass es evtl. mit dem manuellen Update irgendwie nicht geht. Hast du Sam auf dem Rechner? Damit klappt es bei mir.
-
Adapter passt und Fehler ist auch nachvollziehbar. Ich denke, dass es evtl. mit dem manuellen Update irgendwie nicht geht. Hast du Sam auf dem Rechner? Damit klappt es bei mir. `
pi@raspberrypi:~ $ sudo rm /usr/share/snips/assistant/ -R pi@raspberrypi:~ $ sam login ? Enter email used on the console: xxx.xxx@gmail.com ? Enter password used on the console: [hidden] ✔ Logged in pi@raspberrypi:~ $ sam install assistant Fetching assistants done Found 1 assistant named Iobroker Downloading assistant Fetching assistants done NLU training done ASR training done ✔ Deploying assistant to raspberrypi.local... Checking for actions ✔ Snips assistant is now running. Say hey_snips to start! i Run sam watch to see the logs pi@raspberrypi:~ $ sam update-assistant Updating assistant NLU training done ASR training done ✔ Deploying assistant to raspberrypi.local... Checking for actions ✔ Snips assistant is now running. Say hey_snips to start! i Run sam watch to see the logs pi@raspberrypi:~ $ sam watch [09:27:06] Watching on localhost:1883 (MQTT) [09:27:30] [Injection] an injection of 1 words for 1 entities has been requested
Syslog dazu
pi@raspberrypi:/usr/share/snips $ tail -f /var/log/syslog Feb 1 09:27:30 raspberrypi snips-injection[1055]: INFO:snips_asr_injection : ASR Injections started Feb 1 09:27:31 raspberrypi snips-injection[1055]: ERROR:snips_injection_hermes: injection failed for injection: Injection { root_dir: "/var/lib/snips/injections/20190201T082649543507869/inj_20190201T082730721263859.FF2Q6il1ZDBw", date: 2019-02-01T08:27:30.721263859Z } Feb 1 09:27:31 raspberrypi snips-injection[1055]: -> caused by: Entity de.iobroker.genres doesn't exist. The entities available in the assistant are: ["de.iobroker.colors", "de.iobroker.boolean", "de.iobroker.devices", "snips/datetime", "de.iobroker.broadcaster", "snips/duration", "de.iobroker.genre", "de.iobroker.expletive", "de.iobroker.interpret", "snips/number", "de.iobroker.rooms", "de.iobroker.unit", "de.iobroker.mediacommands"]
mqtt am Snips
{"operations":[["add",{"de.iobroker.genres":["TestGenres"]}]]}
ich mach den Raspi jetzt nochmal platt …. die Hoffnung stirbt zuletzt -> erledigt ... selbes Ergebniss :?
-
@ unltdnetworx,
in deinem Assistenten auf snips.ai gibt es die Slots genres, interprets u.s.w nicht, habe mir das gerade angeschaut. Da ich das noch nicht nutze, ist mir das noch nicht aufgefallen.
AndiM hat da sehr gute Infos gesendet:
Feb 1 09:27:31 raspberrypi snips-injection[1055]: -> caused by: Entity de.iobroker.genres doesn't exist. The entities available in the assistant are: ["de.iobroker.colors", "de.iobroker.boolean", "de.iobroker.devices", "snips/datetime", "de.iobroker.broadcaster", "snips/duration", "de.iobroker.genre", "de.iobroker.expletive", "de.iobroker.interpret", "snips/number", "de.iobroker.rooms", "de.iobroker.unit", "de.iobroker.mediacommands"]
-
Das ist sehr interessant. Schau ich mir später an. Ich benutze den ja auch. Mysteriös. :?:
-
Ich bin es jetzt schon mehrfach durchgegangen und habe alle Slots überprüft. Alles stimmt eigentlich. Schau mir das morgen nochmal genauer an und mach mir einen zusätzlichen Account um es auch nachvollziehen zu können.
Edit:
Okay, nochmal mit einem Testaccount überprüft. Ihr habt Recht (hab ich auch nicht dran gezweifelt), mir ist nur schleierhaft warum. Es sind bei mir sogar alle Slots in Singular beim Testaccount. Was auch richtiger wäre für den Begriff Slot, also nur 1 Wert.
@Wal: Ich baue das am WE im Adapter wieder um auf Singular. Sind ja nur die paar Slotnamen. Außer du kommst vorher dazu.
Für den Adapter sind dann folgende Slots verfügbar: (für injects)
de.iobroker.broadcaster
de.iobroker.color
de.iobroker.device
de.iobroker.expletive
de.iobroker.genre
de.iobroker.interpret
de.iobroker.room
-
Snips App nochmal jeden Slot auf Singular umgebaut und in jedem Intent extra nochmal angeklickt. Jetzt sollte es überall Singular sein.
Sobald der Adapter umgebaut ist wird nachberichtet. Dann bitte Snips und ioBroker nochmal updaten.
-
Hallo Michael,
ich habe soeben ein 2. Snips Gerät gebaut. Welche Konfiguration empfiehlst du in Bezug auf den Snips Adapter?
2 Snips Adapter Instanzen installieren und die Geräte parallel betreiben.
Die Snips Geräte im Master-Satellite Prinzip mit einer Adapter Instanz betreiben.
https://docs.snips.ai/articles/raspberrypi/satellites
Ich habe noch eine "Off-Topic" Frage. Da du Erfahrung mit ioBroker Adaptern hast will ich sie dennoch direkt los werden.
Ich habe eine KFZ-Nummernschilderkennung mit ALPR gebaut. Die erkannten Nummernschilder werden von dem ALPR Server per HTTP POST übertragen. Mangels Programmierkenntnissen habe ich einen Node Server dazwischengeschaltet, der den POST (JSON-Format) einliest und Datenpunkte per MQTT im ioBroker beschreibt. Der ALPR Agent sendet jede Minute einen Heartbeat. Ansonsten sendet er nur wenn ein Nummernschild erkannt wird. Ist das was für einen ioBroker Adapter?
-
Hallo Frank,
in Sachen Snips würde ich definitv auf die Satelliten-Lösung setzen. Wird bei mir auch demnächst passieren. Dazu reicht dann ja schon ein Raspberry Pi Zero und ein kleineres Mikro, da der Satellit nur die Aufnahme und Ausgabe machen muss. Das spart Performance und du musst die Apps und Skills nur einmal installieren, auf dem Hauptgerät. Hatte sogar schon überlegt, mein Hauptgerät auf den Server des ioBroker (Docker auf Synology) zu verlagern und mein derzeitiges Hauptgerät als Satellit einzurichten. Mal schauen wie das Thema weitergeht.
Bzgl. der Kennzeichenerfassung würde ich einen Thread eröffnen, ob daran Interesse besteht. Könnten bestimmt gut Ideen aufkommen. Es gibt ja schon im Entwicklungsbereich eine ähnliche Umfrage: "[UMFRAGE] Besteht Interesse an einem Octoprint Adapter". Wenn Interesse besteht, ist eine Vereinfachung mittels Adapter bestimmt nicht schlecht.
-
Hallo Walter,
hab einen Pull-Request gestellt. Bei mir funktioniert es jetzt alles in Singular.
-
Hallo zusammen,
mein Name ist Felix und ich habe heute meinen Snips.ai aufgesetzt.
Als Hardware nutze ich einen Pi3B sowie ein Matrix Voice.
Soweit läuft alles ganz gut und ich kann auch schon Lichter schalten oder Zonenreinigungen starten.
Ein Problem habe ich aber noch, wenn der gute mich mal nicht versteht brabbelt er die 5 mal hintereinander Räume ohne das ich etwas machen kann.
Und eine Frage habe ich auch. Wie kann ich z.B. aus einen Satz eine Zahl extrahieren und diese dann in den Datenpunkt schreiben.
Hintergrund ist folgender, ich will Snips sagen er soll die Küche X mal reiningen. Einmal ist kein Problem da ich ja nur die Koordinaten in den entsprechenden Datenpunkt schreiben muss.
Ich würde gerne sagen Snips setze Reinigungsdurchgänge auf zwei und er soll die zahl extrahieren. Geht das? Oder wie habt ihr solche dinge gelöst?
Wie dimmt ihr z.B. Lichter auf x%?
Vielen dank für eure Hilfe!
-
Hallo Walter,
hab einen Pull-Request gestellt. Bei mir funktioniert es jetzt alles in Singular. `
erledigt.
-
Hallo Hanni,
das mit den Räumen ist komisch. Kann es sein, dass du injects gemacht hast (neue Wörter angelernt) und die nicht einzeln, sondern mit Kommata getrennt eingeben hast? Man muss defintiv jedes Wort im richtigen Slot extra anlernen.
Zahlen sollten eigentlich erkannt und in echte Zahlen konvertiert werden. z.B. zwei –> 2. Kannst du mal einen Beispielsatz oder Sätze angeben, welche du verwenden willst. Dann schau ich nach, ob es den richtigen Intent verwendet und pflege zur Not noch ein.
Dimmen geht z.B. über den text2command Adapter. Momentan muss man aber "an" dazu sagen. Also z.B. "Schalte das Licht in der Küche auf 50% an".
-
Hallo Hanni,
das mit den Räumen ist komisch. Kann es sein, dass du injects gemacht hast (neue Wörter angelernt) und die nicht einzeln, sondern mit Kommata getrennt eingeben hast? Man muss defintiv jedes Wort im richtigen Slot extra anlernen.
Zahlen sollten eigentlich erkannt und in echte Zahlen konvertiert werden. z.B. zwei –> 2. Kannst du mal einen Beispielsatz oder Sätze angeben, welche du verwenden willst. Dann schau ich nach, ob es den richtigen Intent verwendet und pflege zur Not noch ein.
Dimmen geht z.B. über den text2command Adapter. Momentan muss man aber "an" dazu sagen. Also z.B. "Schalte das Licht in der Küche auf 50% an". `
Hallo,
also ich bin durch deinen Kommentar schonmal einen Schritt weiter gekommen. Zumindest im verstehen wie alles Funktioniert.
Ich vermute das der Satz als ganzes in "Received text" und der Adapter schlüsselt den Satz dann auf oder?
Leider funktioniert das nicht. Ich bekomme immer nur in "received text" und in "text" das selbe angezeigt, alle anderen felder bleiben leer!
Ich hab die IO Broker app aber auch geforked da Snips viele dinge dich ich gesagt habe nicht verstanden hat. Kann es daran liegen?
Habe hier den nur Stall genommen das er nicht anfängt einen Raum zu saugen während ich teste.
Also ich will z.B. sagen . "Snips reinige das Büro drei mal"
Mein Sauger heist Olga deswegen soll er eben auch reagieren wenn ich sage: "Snips schicke Olga nach Hause"
Und dann waren da noch ein paar andere Worte die er nicht verstanden hat.
Danke
17844_snips2.jpg -
Die Felder bleiben leer, weil du nicht mit dem iobroker Assistenten von Michael arbeitest, sondern mit dem ioBroker-Snips Assistenten von Equilora
-
Hallo Gemeinde,
irgendwie blick ich hier nicht mehr so wirklich durch.
Gibt es hier 2 parallele Entwicklungen, die nicht miteinander können? Wenn ja, kann das mal einer aufdröseln wer mit wem spielt und evtl. wo die Unterschiede sind.
Hab den Thread komplett gelesen, aber so ganz komm ich nicht mit.
-
Nein, gibt es nicht. Du musst nur die readme des Adapters lesen. Mit den anderen Assistenten kann man auch arbeiten, aber nicht mit den Slots.
-
@Wal:Die Felder bleiben leer, weil du nicht mit dem iobroker Assistenten von Michael arbeitest, sondern mit dem ioBroker-Snips Assistenten von Equilora `
Hallo Vielen Dank für deine Antwort. Ich habe das readme des Adapters auch gelesen und bin mir sicher das ich gestern bei den Apps nur den IoBroker-Snips gefunden habe. Naja seis drum ich werde gleich mal testen wie das mit dem anderen läuft.
Vielleicht im Readme das Symbol der App mit aufnehmen? Dann würde man sofort merken das es die falsche app ist.
Habt ihr dann eigentlich nur die IObroker App auf den Snips laufen oder auch noch andere Sachen wie "Wetter" oder "Bring"?
-
Ich habe ausschließlich die ioBroker App laufen. Den Rest lasse ich mir mittels ioBroker zurückgeben. z.B. Wetter mit der WeatherUnderground. Wenn ich z.B. "Gute Nacht" zu Snips sage, dann macht er mit alles im Wohnzimmer aus, sagt mir evtl. ob der Müll morgen abgeholt wird und eben auch die Wettervorhersage.
Wenn zu viel auf Snips läuft, dann erkennt er evtl. die falschen Intents und ioBorker geht leer aus.