ChatGPT-Nutzung aus FHEM heraus (Pläne für das Modul Babble)

Begonnen von Prof. Dr. Peter Henning, 03 April 2023, 13:19:25

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

An anderer Stelle habe ich argumentiert, dass ein Sprachmodell wie ChatGPT wegen der fehlenden Präzision ungeeignet für konkrete Schalt- und Steuerungsaufgaben ist. Ich habe deshalb mal einen alternativen Zugang ausprobiert, über das ChatGPT API. Ziel ist, beliebiges Blabla in ein Format zu bringen, das man mit einem regelbasierten semantischen Modell auswerten kann.

{"role": "user", "content": "Bring alle nachfolgenden Sätze in das Standardformat"},
        {"role": "assistant", "content": "Ortsangabe=Schlafzimmer,Wohnzimmer,Arbeitszimmer. Komponist=Mozart,Bach. Album von Mozart=Die Zauberflöte,Die kleine Nachtmusik. Standardformat=Spiele Musik im Ortsangabe von Komponist aus dem Album"},
        {"role": "user", "content": "Ich bin im Wohnzimmer.  Ich will hier gerne Musik haben. Und der Komponist soll Mozart sein, am Besten aus der Zauberflöte"},
   

Ergebnis:
Spiele Musik im Wohnzimmer von Mozart aus dem Album \"Die Zauberfl\u00f6te\".
Sehr schöner Use-Case... ;D

Im Modul Babble habe ich ja schon einen RiveScript-ChatBot angebunden. Den muss man aber natürlich selbst programmieren, z.B. mit einem Eliza-Code. Mal sehen, ob ich das um ChatGPT erweitern kann. Erfordert natürlich einen API-Key - aber ein halber Tag Spielerei mit dem API kostet gerade mal 1 Cent.

LG

pah

JensS

Find ich super! Bei Gelegenheit werde ich meinen Linux-Zoo um ein LLama und ein Alpaca erweitern.
Wäre dein Bubble-Modul auch in der Lage, mit den südamarikanischen Kamelen zu reden und mit RHASSPY zu verknotigen?

Gruß Jens
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.

Prof. Dr. Peter Henning

#2
Das Modul heißt Babble und ist in der normalen FHEM-Distribution zu finden.

Das ist jetzt schon ganz gut: 1. Stufe regelbasierte semantische Analyse. 2. Stufe RiveScript ChatBot.

Und der hat mir diverse regelbasierte Anteile (den Code stelle ich gerne zur Verfügung). Beispielsweise um einen Dialog zu führen, mit dem ein "Erinnerungs-DOIF" eingerichtet wird. Ferner einen "Eliza"-Anteil: Wenn die Kiste gar nicht versteht, was ich gesagt habe, kommen solche Sätze wie "Hast Du das schon öfter gefragt?", oder "Bist Du sicher, dass Du das wissen willst".

ChatGPT oder ein anderes großes Sprachmodell wäre wirklich nur zur nachlaufenden Normierung der Sprache sinnvoll, etwa im Sinne einer Antwort: "Könnte es sein, dass du eigentlich sagen wolltest: Lass die Spülmaschine über Nacht laufen?"

LG

Edit: Und mit Rhasspy arbeitet Babble auch ganz gut zusammen.

pah