NEWS
Neu im Admin: Der KI Assistant
-
Ich hab bei mir für KI Anthropic und auch OpenAI eingerichtet mit Token und jeweils was Geld. Leider hab ich bei beiden das gleiche Phänomen: ich kann was im KI Chat in ioBroker (egal ob admin oder Javascript, was ich nun so eingestellt hab, dass es die KI Einstellungen aus dem System nimmt), dann rödelt wohl irgendwas, da steht dann auch manchmal, dass sich wohl Datenpunkte, die ich erwähnt habe, angeguckt werden und danach kommt keine Antwort. Der Chat bleibt einfach leer.
Auf https://platform.claude.com/cost kann ich sehen, dass sogar Token verbraucht wurden... aber ein Ergebnis kam nicht.Leider weiß ich auch gerade nicht, wo ich das debuggen könnte. Ich sehe im Log keine Fehlermeldungen (die irgendwie dazu passen würden) und auch in der Browser-Konsole keine... was kann da schief laufen? :-(
Das ganze hab ich jetzt schon etwas länger, hab es gestern und heute nochmal probiert. Admin ist 7.9.10, Javascript 9.3.1, mcp 1.0.8, js-controller 7.2.2
Wenn sinnvoll kann ich auch gerne ein github issue aufmachen. Aber ich dachte, vielleicht weiß jemand im Forum was, weil ihr eh alle alles schon gesehen hab. ;-) -
@Garfonso Ich vermute, dass du ZU VIEL Objekte hast und die passen einfach nicht in Context Window rein. Kann das sein? Oder du hast kein 1M Fenster...
Was bedeutet "Zu viel"? Ich hab viele Objekte, 50.000 ca.
Aber warum müssen die alle in das Kontextfenster von der KI, wenn ich nur ein Skript geschrieben / angepasst haben will und selber schon die Objekte sage, die verwendet werden sollen?
Was meinst du mit "1M Fenster"?
Irgendeine Rückmeldung, was schiefgeht, wäre schon hilfreich.
-
Was bedeutet "Zu viel"? Ich hab viele Objekte, 50.000 ca.
Aber warum müssen die alle in das Kontextfenster von der KI, wenn ich nur ein Skript geschrieben / angepasst haben will und selber schon die Objekte sage, die verwendet werden sollen?
Was meinst du mit "1M Fenster"?
Irgendeine Rückmeldung, was schiefgeht, wäre schon hilfreich.
@Garfonso Du bist doch erfahrener Entwickler. KI ist auch mehr oder weniger Neuland für mich.
1M - 1 million tokens.Aber warum müssen die alle in das Kontextfenster von der KI,
Warum nicht? Wenn du Skript schreiben willst, schalte alle lichter aus, wie soll KI deine Lichter finden?
@Garfonso Irgendeine Rückmeldung, was schiefgeht, wäre schon hilfreich.
Keine Ahnung wie es geht. Bist du im Admin Assistant oder JS Assistant?
-
@Garfonso Du bist doch erfahrener Entwickler. KI ist auch mehr oder weniger Neuland für mich.
1M - 1 million tokens.Aber warum müssen die alle in das Kontextfenster von der KI,
Warum nicht? Wenn du Skript schreiben willst, schalte alle lichter aus, wie soll KI deine Lichter finden?
@Garfonso Irgendeine Rückmeldung, was schiefgeht, wäre schon hilfreich.
Keine Ahnung wie es geht. Bist du im Admin Assistant oder JS Assistant?
Könntest du mal grob beschreiben wie der Assistent die Informationen zu den datenpunkten aufbereitet?
Dann könnte man im prompt beschreiben, wie der Assistent aus den datenpunkten ein Extrakt macht und er nur aus diesem dann die relevanten Geräte sucht. Per mcp müsste er sich ja dann die datenpunkte heraussuchen können. Entweder weil Licht/light im Namen oder ggfs. auch in der role drin steht.
@garfonso kontextfenster ist die Größe des Gedächtnisses, was eine ki zum aktuellen Zeitpunkt weiß. Wenn das voll ist oder gar überläuft dann kennt die ki schlicht die andern Informationen nicht oder nicht mehr.
1m ist eine Million Token
Manche Modelle haben aber auch nu ein kontextfenster von 128000 Token.
Wenn der Assistent 50000 datenpunkten mit ihrem kompletten Namen +aktuellem Wert + x? Informationen, dann könnte es evtl. auch bei kleineren Modellen knapp werden -
Wenn ich der KI sage, sie soll alle Objekte angucken, dann kann es knapp werden... aber das muss sie halt nicht... ich habe folgenden Prompt in Javascript und auch im Admin-Assistant direkt getippt:
Im Script @otherSmarthome/poolFilter will ich eine Zieltemperatur für alias.0.weather.HofPool.temperature einstellen können. Mit Hysteres. Zieltemperatur und Hysterese sollten aus states gelesen werden. Der Filter pumpt das Wasser durch Solarkollektoren. Deren Temperatur steht in alias.0.weather.HofDachSolar.temperature. Entsprechend steigt die Wassertemperatur, wenn es an den Kollektoren wärme ist als im Wasser oder sinkt, wenn es dort kühler ist. Bei beiden Temperatur-States soll bitte darauf geachtet werden, wie alt der State ist.... besonders der Sensor bei den Solarkollektoren fällt im Moment immer mal aus. Da muss ich gucken. Aber im Grunde muss die Funktion checkSolarHeating angepasst werden.
Wenn der User über den heizen requested state die Heizung haben will, soll der Filter entpsrechend anbleiben.Ergebnis:

Auch im log kein Fehler, nichts... sah im Assistant chat mit Admin genauso aus, den hab ich nur nicht mehr.
Weiß nicht, wie man einen Fehlschlag erkennt... werden bei debug die Antworten von der API irgendwo ausgegeben? Dann kann ich das gerne nochmal mit debug modus an ausprobieren.Aber ehrlich... bei dem Prompt steht genau drinnen, welches Skript und welche Objekte man sich angucken muss. Da stand auch zwischendurch mal in dem Fenster, dass die KI sich die Objekte anguckt. Nur danach kam dann einfach gar kein Ergebnis. Ich bin mir ehrlich gesagt nicht sicher, wo das genau schief geht.
Und das Modell war hier Opus 4.8 von anthropic... das hat mir auch schon das ganze home-assistant-frontend durchkämmt. Da bin ich mir nicht ganz sicher, ob es am Kontextfenster liegt.Ich war dann etwas angepisst und hab das hier gefragt, Ergebnis ist sichtbar (ob da zwischendurch was anderes stand, weiß ich nicht):

(in modbus.1 sind 10 states, in alias sind, nachdem ich das selber von Hand gemacht hab, 2255 Objekte).
PS:
Das skript und den Prompt zu claude kopieren hat dann das gewünschte Ergebnis gebracht. (konnte da noch nicht so gut tippen, hab gerade eine Hand verletzt.. und gerade skripte macht die KI sauberer als ich hust) -
Wenn ich der KI sage, sie soll alle Objekte angucken, dann kann es knapp werden... aber das muss sie halt nicht... ich habe folgenden Prompt in Javascript und auch im Admin-Assistant direkt getippt:
Im Script @otherSmarthome/poolFilter will ich eine Zieltemperatur für alias.0.weather.HofPool.temperature einstellen können. Mit Hysteres. Zieltemperatur und Hysterese sollten aus states gelesen werden. Der Filter pumpt das Wasser durch Solarkollektoren. Deren Temperatur steht in alias.0.weather.HofDachSolar.temperature. Entsprechend steigt die Wassertemperatur, wenn es an den Kollektoren wärme ist als im Wasser oder sinkt, wenn es dort kühler ist. Bei beiden Temperatur-States soll bitte darauf geachtet werden, wie alt der State ist.... besonders der Sensor bei den Solarkollektoren fällt im Moment immer mal aus. Da muss ich gucken. Aber im Grunde muss die Funktion checkSolarHeating angepasst werden.
Wenn der User über den heizen requested state die Heizung haben will, soll der Filter entpsrechend anbleiben.Ergebnis:

Auch im log kein Fehler, nichts... sah im Assistant chat mit Admin genauso aus, den hab ich nur nicht mehr.
Weiß nicht, wie man einen Fehlschlag erkennt... werden bei debug die Antworten von der API irgendwo ausgegeben? Dann kann ich das gerne nochmal mit debug modus an ausprobieren.Aber ehrlich... bei dem Prompt steht genau drinnen, welches Skript und welche Objekte man sich angucken muss. Da stand auch zwischendurch mal in dem Fenster, dass die KI sich die Objekte anguckt. Nur danach kam dann einfach gar kein Ergebnis. Ich bin mir ehrlich gesagt nicht sicher, wo das genau schief geht.
Und das Modell war hier Opus 4.8 von anthropic... das hat mir auch schon das ganze home-assistant-frontend durchkämmt. Da bin ich mir nicht ganz sicher, ob es am Kontextfenster liegt.Ich war dann etwas angepisst und hab das hier gefragt, Ergebnis ist sichtbar (ob da zwischendurch was anderes stand, weiß ich nicht):

(in modbus.1 sind 10 states, in alias sind, nachdem ich das selber von Hand gemacht hab, 2255 Objekte).
PS:
Das skript und den Prompt zu claude kopieren hat dann das gewünschte Ergebnis gebracht. (konnte da noch nicht so gut tippen, hab gerade eine Hand verletzt.. und gerade skripte macht die KI sauberer als ich hust) -
Wenn ich der KI sage, sie soll alle Objekte angucken, dann kann es knapp werden... aber das muss sie halt nicht... ich habe folgenden Prompt in Javascript und auch im Admin-Assistant direkt getippt:
Im Script @otherSmarthome/poolFilter will ich eine Zieltemperatur für alias.0.weather.HofPool.temperature einstellen können. Mit Hysteres. Zieltemperatur und Hysterese sollten aus states gelesen werden. Der Filter pumpt das Wasser durch Solarkollektoren. Deren Temperatur steht in alias.0.weather.HofDachSolar.temperature. Entsprechend steigt die Wassertemperatur, wenn es an den Kollektoren wärme ist als im Wasser oder sinkt, wenn es dort kühler ist. Bei beiden Temperatur-States soll bitte darauf geachtet werden, wie alt der State ist.... besonders der Sensor bei den Solarkollektoren fällt im Moment immer mal aus. Da muss ich gucken. Aber im Grunde muss die Funktion checkSolarHeating angepasst werden.
Wenn der User über den heizen requested state die Heizung haben will, soll der Filter entpsrechend anbleiben.Ergebnis:

Auch im log kein Fehler, nichts... sah im Assistant chat mit Admin genauso aus, den hab ich nur nicht mehr.
Weiß nicht, wie man einen Fehlschlag erkennt... werden bei debug die Antworten von der API irgendwo ausgegeben? Dann kann ich das gerne nochmal mit debug modus an ausprobieren.Aber ehrlich... bei dem Prompt steht genau drinnen, welches Skript und welche Objekte man sich angucken muss. Da stand auch zwischendurch mal in dem Fenster, dass die KI sich die Objekte anguckt. Nur danach kam dann einfach gar kein Ergebnis. Ich bin mir ehrlich gesagt nicht sicher, wo das genau schief geht.
Und das Modell war hier Opus 4.8 von anthropic... das hat mir auch schon das ganze home-assistant-frontend durchkämmt. Da bin ich mir nicht ganz sicher, ob es am Kontextfenster liegt.Ich war dann etwas angepisst und hab das hier gefragt, Ergebnis ist sichtbar (ob da zwischendurch was anderes stand, weiß ich nicht):

(in modbus.1 sind 10 states, in alias sind, nachdem ich das selber von Hand gemacht hab, 2255 Objekte).
PS:
Das skript und den Prompt zu claude kopieren hat dann das gewünschte Ergebnis gebracht. (konnte da noch nicht so gut tippen, hab gerade eine Hand verletzt.. und gerade skripte macht die KI sauberer als ich hust) -
Also Script anpassen ist was für den KI Chat im Javascript. Welches Model nutzt du? welcher Mode ist unten beim Eingabefeld ausgewählt? Ich vermute dort ist 'Agent gewählt und ein Modell eingestellt welches kein Tool usage unterstützt. Falls dem So ist dann bitte auf Modus Code stellen. Wenn ein Modernes Model gewählt ist das Tool usage unterstützt dann immer auf Agent stellen.
Ich selbst verwende zur Zeit Gemini kostenlos im flash-lite-latest model und den Agent Mode. Das klappt bei mir problemlos. Claude ist dort nur vom Claude Code eingebaut aber mangels Abo konnten wir das noch nicht komplett testen. Claude nutzt da leider eine andere API als alle anderen.
-
Wenn du das gleiche Modell genutzt hast seltsam.
Hast du noch Budget für api gehabt? Leider muss man da ja extra bezahlenWenn du das gleiche Modell genutzt hast seltsam.
Hast du noch Budget für api gehabt? Leider muss man da ja extra bezahlenJa. Die nicht Antworten haben 2,52$ gekostet, es sind noch knappe 15$ da.
Sei nicht so ungeduldig. Wenn du mit deiner Erfahrung das Script schon nicht anpassen kannst wie soll das eine wesentlich jüngere AI denn dann aus dem Ärmel schütteln...
:-)
Es hat schonmal funktioniert. Das war noch vor dem Assistent. Und das ist auch noch vor dem Assistent schon in Javascript kaputt gegangen.
Ich vermute durchaus, dass da was bei mir im System krumm ist. Aber ganz ohne irgendwelche Hinweise, wo es knallt, ist die Suche sehr mühsam. :-(Also Script anpassen ist was für den KI Chat im Javascript.
Ja, da ist ja der Screenshot von, leere Antwort.
Welches Model nutzt du?
Opus 4.8 hab ich diesmal ausprobiert.
welcher Mode ist unten beim Eingabefeld ausgewählt? Ich vermute dort ist 'Agent gewählt und ein Modell eingestellt welches kein Tool usage unterstützt.
Ja, Agent ist eingestellt. Was das Modell kann oder nicht, weiß ich leider nicht.
Falls dem So ist dann bitte auf Modus Code stellen. Wenn ein Modernes Model gewählt ist das Tool usage unterstützt dann immer auf Agent stellen.
Woher weiß ich, welches Modell Tool usage unterstützt? Warum bekomme ich keine Fehlermeldung, wenn das verwendete Modell keine Tools unterstützt und es deshalb knallt?
Ich selbst verwende zur Zeit Gemini kostenlos im flash-lite-latest model und den Agent Mode. Das klappt bei mir problemlos. Claude ist dort nur vom Claude Code eingebaut aber mangels Abo konnten wir das noch nicht komplett testen. Claude nutzt da leider eine andere API als alle anderen.
Ich kann gerne nochmal mit OpenAI testen. Wenn ich mich richtig erinnere, hat das schonmal funktioniert, nur gpt5.5 oder codex gingen nicht, soweit ich mich erinnere... weiß aber nicht mehr genau. Welches Modell geht da gut? Da hab ich auch noch ein paar Dollar im API Konto.
Funktioniert hat auch schon gemmini 4b lokal. Aber das schreibt nur mäßigen Code.
-
Ok, spannend. Mit OpenAI und da "chat-latest" (was das neuste chatgpt modell ist? Keine Ahnung), kommen jetzt zumindest Antworten.
Wenn ihr mir sagt, wie, kann ich gerne die Anthropic Anbindung debuggen oder alternativ über PM oder so einen API Key zur Verfügung stellen. Modelle auslesen geht und irgendwie scheint er auch mitzubekommen, dass man ihn was fragt, nur die Antwort erscheint nie.
-
Ich bin mit gerade nicht sicher (ob ich da mal was geändert habe in der Vergangenheit), aber (mein?) rest-api Adapter und der mcp-server laufen beide per default auf Port 8093 - was natürlich zu einem Konflikt führt. Ist das so gewollt?
-
Ich bin mit gerade nicht sicher (ob ich da mal was geändert habe in der Vergangenheit), aber (mein?) rest-api Adapter und der mcp-server laufen beide per default auf Port 8093 - was natürlich zu einem Konflikt führt. Ist das so gewollt?
-
Du hast die Frage falsch verstanden ;) Dass beides parallel nicht auf Port 8093 laufen kann ist klar - die Frage war, warum haben beide in der Grundeinstellung 8093 und ob das so gewollt war (ich denke mal nicht).
-
Vielleicht bin ich ja auf dem Holzweg, aber die Reduzierung der Anzahl der Datenpunkte macht doch per Prompt keinen Sinn, oder? Ich meine, übergeben werden dann ja trotzdem immer alle.
Vielleicht wäre es hilfreich und auch zielführender für die Ergebnisse, wenn man die zu übergebenen DP irgendwie vorfiltern könnte.
-
Also Script anpassen ist was für den KI Chat im Javascript. Welches Model nutzt du? welcher Mode ist unten beim Eingabefeld ausgewählt? Ich vermute dort ist 'Agent gewählt und ein Modell eingestellt welches kein Tool usage unterstützt. Falls dem So ist dann bitte auf Modus Code stellen. Wenn ein Modernes Model gewählt ist das Tool usage unterstützt dann immer auf Agent stellen.
Ich selbst verwende zur Zeit Gemini kostenlos im flash-lite-latest model und den Agent Mode. Das klappt bei mir problemlos. Claude ist dort nur vom Claude Code eingebaut aber mangels Abo konnten wir das noch nicht komplett testen. Claude nutzt da leider eine andere API als alle anderen.
Wenn ein Modernes Model gewählt ist das Tool usage unterstützt dann immer auf Agent stellen.
chat-gpt erzählt mir im Agent modus gerade, dass er am Skript nichts ändern kann (nachdem ich 5 mal gesagt hab "ja mach" und er immer neue Ideen gehabt hat)... lügt der? Den Modus im Javascript Adapter hab ich auch bisher nie so richtig verstanden.
Das ist alles deutlich weniger spaßig als claude code... die KI labert überall nur und macht nix... Was soll das? Kann man dem wenigstens den caveman skill irgendwie unterschieben? ( https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md ) Diese Romane sind unerträglich und dazu noch teuer... :-/ Und am Ende hat man ganz viel gelesen und darf doch alles selber machen...
-
Wenn ein Modernes Model gewählt ist das Tool usage unterstützt dann immer auf Agent stellen.
chat-gpt erzählt mir im Agent modus gerade, dass er am Skript nichts ändern kann (nachdem ich 5 mal gesagt hab "ja mach" und er immer neue Ideen gehabt hat)... lügt der? Den Modus im Javascript Adapter hab ich auch bisher nie so richtig verstanden.
Das ist alles deutlich weniger spaßig als claude code... die KI labert überall nur und macht nix... Was soll das? Kann man dem wenigstens den caveman skill irgendwie unterschieben? ( https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md ) Diese Romane sind unerträglich und dazu noch teuer... :-/ Und am Ende hat man ganz viel gelesen und darf doch alles selber machen...
-
Du hast die Frage falsch verstanden ;) Dass beides parallel nicht auf Port 8093 laufen kann ist klar - die Frage war, warum haben beide in der Grundeinstellung 8093 und ob das so gewollt war (ich denke mal nicht).
-
Hallo,
eine weitere unbenutzte Schnittstelle stört mich jetzt nicht. Der ioBroker hat da wesentlich mehr Einfalltore.
Mich persönlich stört dieser ganze KI-Mist. Mist weil:
- ich möchte was programmieren und frage die KI. Der Automat am anderen Ende berechnet die wahrscheinlichste Antwort und präsentiert die mir. - Soweit, so gut.
Dann steht eine App für Android an. Die tausenden Abhängigkeiten kann sich niemand merken. Der eingebaute Gemini kennt sie wohl alle, wendet sie aber auch öfter mal falsch an. Dann sagt man, da kommen nun hunderte Fehler. - Ja, du hast recht, mein Fehler - sagt die KI und korrigiert das. Dann der nächste Schritt - plötzlich antwortet das Teil auf Englisch, dass ich es später probieren soll, da meine Fragen pro Zeiteinheit aufgebraucht sind.
Dann mache ich ein Wochenende später weiter, der Automat weiß im Prinzip, wo "wir" waren. Nur blöd, dass ich zwischendurch selbst was ergänzt habe und er alle Änderungen wieder versaut. Also nach jeder eigenen Änderung sagen: Ich habe was geändert, guck dir das an. Dann ersetze überall die Farbe rot in blau und mach nur das. Lass den anderen Code in Ruhe - Fragen pro Zeiteinheit aufgebraucht.
Dann fährt man schön Auto und hört Musik über Android Auto. Neuer Musikwunsch: "Hi, ich bin Gemini und habe Deinen Google Assistenten ersetzt". Hat mir nur vergessen zu sagen, dass es schwerer von Begriff ist. Ich wünsche mir Imagine Dragons und das Teil fragt mich, wie ich denn mit meiner Android-App voran komme. Ich so: "Ich will Musik hören und keine unter Umständen peinlich werdenden Gespräche im Auto führen! - Gib mir den Google Assistent wieder" - Das kann ich nicht, das kannst Du in der Google App ändern. - Jo, geht, nur ist dann Gemini überall weg. >> Friss oder stirb.
Auf der einen Seite wollen die also unverhältnismäßig Geld, wenn man KI freiwillig nutzt, auf der anderen Seite wird die dir da aufgezwungen, wo du die gar nicht haben willst. Obendrein ist die Aufrüstung meines PCs ausgefallen, da ich nicht bereit bin, so hohe Preise für die Hardware zu zahlen. Grafikkarten gibt es schon länger nur auf dem Papier zu UVPs, die die gar nicht einhalten, da alle für Mining eingesetzt wurden. Jetzt ist es KI. Die braucht aber auch RAM und schnelle SSDs ohne Ende. Also nichts mehr für den privaten Anwender zu vernünftigen Preisen auf dem Markt.
Unterm Strich ist es das, was mir die KI unsympathisch macht. Dass die KI auf dem ioBroker-System rumschnüffelt und sich dadurch natürlich auch trainiert, nutze ich allerdings nicht. Auch, wenn ich weiß, dass die größeren Lücken durch die unzähligen Abhängigkeiten der Adapter bestehen können.
Skripte per Copy und Paste im Browser optimieren zu lassen, ist eher mein Anwendungsfall.
- ich möchte was programmieren und frage die KI. Der Automat am anderen Ende berechnet die wahrscheinlichste Antwort und präsentiert die mir. - Soweit, so gut.
-
Und genau solche Aussagen und Erlebnisse hat jeder der sich nicht damit beschäftigt was diese KI Chats eigentlich machen und wie sie funktionieren. Du wie auch viele andere verwechseln einen Chat mit einer KI immer wieder mit einem Chat den man mit einem Menschen führt. Ist klar daß man dann nicht ans Ziel kommt. Vielleicht funktionieren diese KI Chats in ein paar Jahren wie ein Chat mit einem Menschen aber da ist die Technik zur Zeit noch nicht.
Generative KI Ist ein Werkzeug.
Lasst mich mal ein einfaches Beispiel nehmen was jeder nachvollziehen kann.
Ein Hammer ist auch ein Werkzeug. Er kann Nägel einschlagen. Damit er das tut muss man wissen das man Ihn in die Hand nehmen muss. Ausholen muss und dann noch den Nagelkopf treffen muss. Wenn man dies nicht weiß kann man dem Hammer natürlich ewig lang erklären das er doch den Nagel mal einschlagen soll. passieren wird aber nichts.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden