Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter AI Toolbox v0.1.3 GitHub/Latest

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    895

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

Test Adapter AI Toolbox v0.1.3 GitHub/Latest

Geplant Angeheftet Gesperrt Verschoben Tester
40 Beiträge 11 Kommentatoren 6.3k Aufrufe 20 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • O oxident

    @halsi82 Kannst Du grob umreißen, wie Du das umgesetzt hast?

    H Offline
    H Offline
    halsi82
    schrieb am zuletzt editiert von
    #26

    Generell kann ich euch allen nur empfehlen, legt euch bei openai oder openrouter oder bei anderen KI Instanzen einen TestAccount/API Account an. Openrouter ist kostenlos bei vielen KI Modellen. Allerdings habe ich meine besten Ergebnise mit GTP-4 bei OpenAI bekommen, ist allerdings kostenpflichtig und wird pro Anfrage abgerechnet.

    Wenn ihr dort mal einen Account habt, dann macht den Chat auf.
    Schickt die Beschreibung zum Chat - die Beispielanfrage und die Beispielantwort.
    Und dann spielt euch mit dem Chatbot herum. Das hilft im Normalfall die KI besser zu verstehen und zu bedienen.

    Jedes Werkzeug das man im Adapter anlegt hat ein Text_request und ein Text_response als Objekt. Ähnlich wie ein KI Chat. Thats it.

    Ich habe mittlerweile ein Werkzeug angelegt um meine Heizkurve zu steuern. Das bedeutet - je nach Wettervorhersage und Daten der Bewölkung (bei viel Sonne muss ich viel weniger heizen in meinem Haus, weil wir viel Fensterfläche Richtung Süden haben) meine Heizkurve jeden Tag bevor die Heizung startet anhand der Prognose zwischen einer bestimmten Range 0,3-0,5 angepasst wird.
    Folgende Beschreibung habe ich da der KI zum Beispiel gegeben.

    92ac6101-8895-4fc8-9ec7-ee22b4450cee-image.png

    @oxident
    Mit dem AI Adapter gibst du ja der KI zunächst die Beschreibung was die KI tun soll, dann eine Beispielanfrage und eine Beispielantwort. Siehe Screenshot unterhalb.

    4270e1f4-ff09-44c3-967e-0a1c3469b819-image.png

    Danach muss man über ein Javascript dem Adapter für das jeweilige Modell die Daten übermitteln - sprich das muss gleich sein wie die Beispielanfrage.

    In meinem Fall ein Javascript das so aussieht:

    var day =  new  Date().toLocaleString();
    var cloudCover = getState('weatherunderground.0.forecast.0d.cloudCover').val;
    var rlf = getState('javascript.0.Wetterstation.Aussenfeuchtigkeit').val;
    var pressure = getState('javascript.0.Wetterstation.Druck_absolut').val;
    var rain = getState('javascript.0.Wetterstation.Regen_Stunde').val;
    var temp = getState('mqtt.0.ebusd.700.DisplayedOutsideTemp').val;
    var wind = getState('javascript.0.Wetterstation.Wind').val;
    var trend = getState('javascript.0.Wetterstation.Wetter_Trend').val;
    var tempmax = getState('weatherunderground.0.forecast.0d.tempMax').val;
    var sonnenstrahlung = getState('javascript.0.Wetterstation.Sonnenstrahlung').val;
    
    var message =  'Aktuelles Datum und Uhrzeit '  + day +  '. Wetterdaten: Temperatur '  + temp +  '°C, ' + 'Vorhersage Tageshöchstemperatur' + tempmax +  '°C, ' +  'Luftfeuchtigkeit '  + rlf +  '%, '  +  'Wolkendecke '  + cloudCover +  '%, '  +  'Wind '  + wind +  'kmh, '  +  'Regenmenge pro Stunde '  + rain +  'mm, ' + 'Sonnenstrahlung ' + sonnenstrahlung + +'W/m2, ' + 'Trend: ' + trend +'.';
    
    sendTo('ai-toolbox.0',  'tool_request',  {
    	'tool':  'weather-reporter',
    	'text': message,
    },  async  (result)  =>  {
    	log(result);
    });
    

    Dann hab ich ein Blockly gebaut, dass mir 2 mal täglich das Javascript auslöst und mir das Ergebnis des AI Adapters und des jeweiligen Modells (Objekt Text-Response) per Push Nachricht auf mein Smartphone schickt.

    4a998de4-958a-4d34-8414-856f939e6b7f-image.png

    M 1 Antwort Letzte Antwort
    3
    • H halsi82

      Generell kann ich euch allen nur empfehlen, legt euch bei openai oder openrouter oder bei anderen KI Instanzen einen TestAccount/API Account an. Openrouter ist kostenlos bei vielen KI Modellen. Allerdings habe ich meine besten Ergebnise mit GTP-4 bei OpenAI bekommen, ist allerdings kostenpflichtig und wird pro Anfrage abgerechnet.

      Wenn ihr dort mal einen Account habt, dann macht den Chat auf.
      Schickt die Beschreibung zum Chat - die Beispielanfrage und die Beispielantwort.
      Und dann spielt euch mit dem Chatbot herum. Das hilft im Normalfall die KI besser zu verstehen und zu bedienen.

      Jedes Werkzeug das man im Adapter anlegt hat ein Text_request und ein Text_response als Objekt. Ähnlich wie ein KI Chat. Thats it.

      Ich habe mittlerweile ein Werkzeug angelegt um meine Heizkurve zu steuern. Das bedeutet - je nach Wettervorhersage und Daten der Bewölkung (bei viel Sonne muss ich viel weniger heizen in meinem Haus, weil wir viel Fensterfläche Richtung Süden haben) meine Heizkurve jeden Tag bevor die Heizung startet anhand der Prognose zwischen einer bestimmten Range 0,3-0,5 angepasst wird.
      Folgende Beschreibung habe ich da der KI zum Beispiel gegeben.

      92ac6101-8895-4fc8-9ec7-ee22b4450cee-image.png

      @oxident
      Mit dem AI Adapter gibst du ja der KI zunächst die Beschreibung was die KI tun soll, dann eine Beispielanfrage und eine Beispielantwort. Siehe Screenshot unterhalb.

      4270e1f4-ff09-44c3-967e-0a1c3469b819-image.png

      Danach muss man über ein Javascript dem Adapter für das jeweilige Modell die Daten übermitteln - sprich das muss gleich sein wie die Beispielanfrage.

      In meinem Fall ein Javascript das so aussieht:

      var day =  new  Date().toLocaleString();
      var cloudCover = getState('weatherunderground.0.forecast.0d.cloudCover').val;
      var rlf = getState('javascript.0.Wetterstation.Aussenfeuchtigkeit').val;
      var pressure = getState('javascript.0.Wetterstation.Druck_absolut').val;
      var rain = getState('javascript.0.Wetterstation.Regen_Stunde').val;
      var temp = getState('mqtt.0.ebusd.700.DisplayedOutsideTemp').val;
      var wind = getState('javascript.0.Wetterstation.Wind').val;
      var trend = getState('javascript.0.Wetterstation.Wetter_Trend').val;
      var tempmax = getState('weatherunderground.0.forecast.0d.tempMax').val;
      var sonnenstrahlung = getState('javascript.0.Wetterstation.Sonnenstrahlung').val;
      
      var message =  'Aktuelles Datum und Uhrzeit '  + day +  '. Wetterdaten: Temperatur '  + temp +  '°C, ' + 'Vorhersage Tageshöchstemperatur' + tempmax +  '°C, ' +  'Luftfeuchtigkeit '  + rlf +  '%, '  +  'Wolkendecke '  + cloudCover +  '%, '  +  'Wind '  + wind +  'kmh, '  +  'Regenmenge pro Stunde '  + rain +  'mm, ' + 'Sonnenstrahlung ' + sonnenstrahlung + +'W/m2, ' + 'Trend: ' + trend +'.';
      
      sendTo('ai-toolbox.0',  'tool_request',  {
      	'tool':  'weather-reporter',
      	'text': message,
      },  async  (result)  =>  {
      	log(result);
      });
      

      Dann hab ich ein Blockly gebaut, dass mir 2 mal täglich das Javascript auslöst und mir das Ergebnis des AI Adapters und des jeweiligen Modells (Objekt Text-Response) per Push Nachricht auf mein Smartphone schickt.

      4a998de4-958a-4d34-8414-856f939e6b7f-image.png

      M Offline
      M Offline
      mick70
      schrieb am zuletzt editiert von
      #27

      @halsi82 Die Heizkurve musst du demnach noch manuell anpassen, d.h. deine Heizung hat keinen Datenpunkt für die Heizkurve?

      H 1 Antwort Letzte Antwort
      0
      • M mick70

        @halsi82 Die Heizkurve musst du demnach noch manuell anpassen, d.h. deine Heizung hat keinen Datenpunkt für die Heizkurve?

        H Offline
        H Offline
        halsi82
        schrieb am zuletzt editiert von
        #28

        @mick70 Richtig - mehr oder weniger. Meine Heizung wird über EBUS gesteuert und über ein Skript kann ich die Heizkurve verändern. Nehme den Wert der zurück kommt - z.b. 0.35 - und schreibe den dann im Skript direkt an die Heizung.

        var command = "bash /home/Heizkurve.sh "+ heatcurve; - und die heatcurve kommt von dem AI Adapter.

        M 1 Antwort Letzte Antwort
        1
        • H halsi82

          @mick70 Richtig - mehr oder weniger. Meine Heizung wird über EBUS gesteuert und über ein Skript kann ich die Heizkurve verändern. Nehme den Wert der zurück kommt - z.b. 0.35 - und schreibe den dann im Skript direkt an die Heizung.

          var command = "bash /home/Heizkurve.sh "+ heatcurve; - und die heatcurve kommt von dem AI Adapter.

          M Offline
          M Offline
          mick70
          schrieb am zuletzt editiert von
          #29

          @halsi82 Sehr hübsch!

          Ich selbst verwende bisher eigene, parametergesteuerte Modelle, um bei PV-Überschuss innerhalb einer vorgegebenen Bandbreite eine Klimaanlage automatisch entweder zum Heizen oder Kühlen in unterschiedlichen Leistungsstufen mit Berücksichtigung der Schutzzeiten für den Kompressor zu regeln und um Überschusshitze aus einem kollektorgespeisten Boiler in den Pufferspeicher der Wärmepumpe abzuleiten.

          Klappt zwar durchaus ordentlich, meine starren Modelle sind bei zusätzlichen Parametern aber nur schwer anzupassen und prädiktiv/adaptiv sind sie natürlich auch nicht. Wenn ich Zeit habe, werde ich mal mit Versuchen ganz ähnlich wie bei dir beginnen, aber vermutlich mit dem Assistant Adapter, der der KI direkten Zugriff auf verschiedene Datenpunkte gibt.

          Den Toolbox Adapter nehme ich derzeit (zusammen mit dem iobroker custom skill und den alexa2 sowie text2command Adaptern) im Moment nur als verbesserte Sprach-Antwortmaschine für meine Echos bei schnellen Fragen (zB "Alexa, frage i o broker, welche Auswirkungen kann die Einführung von Deep Search auf den Markt für künstliche Intelligenz haben"). Wird hier im Moment wegen der Hörschwäche von Alexa gerade bei Fachbegriffen aber nicht stark genutzt. Mal sehen, ob mir da noch etwas besseres einfällt.

          O 1 Antwort Letzte Antwort
          1
          • haselchenH haselchen

            Kann ich mich nur @liv-in-sky anschliessen.
            Ich denke, hier ist, für den Laien, zuviel Text und zu wenig Beispiel(bilder).
            Aus Neugier habe ich es mal installiert und selbst nach dem 100. Durchlesen hab ich kein Plan , was ich damit machen kann , soll oder wie es funktioniert.
            Ich zähle mich noch zu der 40+ Generation, also eigentlich noch sehr aufnahmefähig :) , aber hier bin ich tatsächlich ratlos.

            Eventuell gibt es demnächst nen Thread mit ein paar Beispielen , mit Screenshots und leichterer Erklärkost :)

            Edit:
            @ToGe88
            Damit will ich in keinster Weise Deine Anleitung am Anfang schmälern!
            Ich kriege es halt nicht in meine Birne :grimacing:

            T Offline
            T Offline
            ToGe88
            Developer
            schrieb am zuletzt editiert von
            #30

            @haselchen haha, kann ich verstehen das es am Anfang etwas überfordernd wirkt. Ich beschäftige mich schon sehr lange mit der ganzen Materie deswegen ist es für mich nicht so leicht das ganze aus den Augen eines Laien zu betrachten.

            Aktuell ist der Adapter noch in der Alpha/Test Phase, sobald die Prüfung für die Beta abgeschlossen ist werde ich hier im Forum einige umfangreichere Beispiele präsentieren wie man den Adapter effektiv einsetzen kann. Ein paar gute use cases wurden hier im thread ja bereits genannt.

            Schau dir doch zum Einstieg in das Thema mal den AI Assistent Adapter von mir an. Dieser bietet dir eine einfache Möglichkeit per natürlicher Sprache mit deinem iobroker zu interagieren. Solltest du dort an die Grenzen stoßen kannst du den Assistenten dann auch mit weiteren Funktionen erweitern für welche du zb auch den Toolbox Adapter einsetzen kannst. (In Kombination bieten diese beiden Adapter dann eine sehr umfangreiche Möglichkeit sich einen persönlichen KI-Assistenten zu schaffen)

            Einfach beschrieben könnte man sagen:

            Per Chat/Sprache mit deinem ioBroker interagieren -> AI Assistent

            Funktionen, Auswertungen oder Konvertierungen aus komplexen Daten mit KI durchführen -> AI Toolbox

            1 Antwort Letzte Antwort
            2
            • M mick70

              @halsi82 Sehr hübsch!

              Ich selbst verwende bisher eigene, parametergesteuerte Modelle, um bei PV-Überschuss innerhalb einer vorgegebenen Bandbreite eine Klimaanlage automatisch entweder zum Heizen oder Kühlen in unterschiedlichen Leistungsstufen mit Berücksichtigung der Schutzzeiten für den Kompressor zu regeln und um Überschusshitze aus einem kollektorgespeisten Boiler in den Pufferspeicher der Wärmepumpe abzuleiten.

              Klappt zwar durchaus ordentlich, meine starren Modelle sind bei zusätzlichen Parametern aber nur schwer anzupassen und prädiktiv/adaptiv sind sie natürlich auch nicht. Wenn ich Zeit habe, werde ich mal mit Versuchen ganz ähnlich wie bei dir beginnen, aber vermutlich mit dem Assistant Adapter, der der KI direkten Zugriff auf verschiedene Datenpunkte gibt.

              Den Toolbox Adapter nehme ich derzeit (zusammen mit dem iobroker custom skill und den alexa2 sowie text2command Adaptern) im Moment nur als verbesserte Sprach-Antwortmaschine für meine Echos bei schnellen Fragen (zB "Alexa, frage i o broker, welche Auswirkungen kann die Einführung von Deep Search auf den Markt für künstliche Intelligenz haben"). Wird hier im Moment wegen der Hörschwäche von Alexa gerade bei Fachbegriffen aber nicht stark genutzt. Mal sehen, ob mir da noch etwas besseres einfällt.

              O Offline
              O Offline
              oxident
              schrieb am zuletzt editiert von
              #31

              @mick70 Kannst Du grob umreißen, wie Du die Sache mit Alexa machst?
              Ich bin immer davon ausgegangen, dass der iot-Adapter nur ganz wenig Zeit lässt, eine Antwort in Javascript zu formulieren. So schnell wird ja bestimmt nichts kommen ;-)

              M 1 Antwort Letzte Antwort
              0
              • O oxident

                @mick70 Kannst Du grob umreißen, wie Du die Sache mit Alexa machst?
                Ich bin immer davon ausgegangen, dass der iot-Adapter nur ganz wenig Zeit lässt, eine Antwort in Javascript zu formulieren. So schnell wird ja bestimmt nichts kommen ;-)

                M Offline
                M Offline
                mick70
                schrieb am zuletzt editiert von mick70
                #32

                OK, war wohl nicht wichtig.

                O 1 Antwort Letzte Antwort
                0
                • M mick70

                  OK, war wohl nicht wichtig.

                  O Offline
                  O Offline
                  oxident
                  schrieb am zuletzt editiert von
                  #33

                  @mick70 said in Test Adapter AI Toolbox v0.1.3 GitHub/Latest:

                  OK, war wohl nicht wichtig.

                  Was meinst Du?

                  1 Antwort Letzte Antwort
                  0
                  • T ToGe88
                    Aktuelle Test Version 0.1.3
                    Veröffentlichungsdatum 27.12.2024
                    Github Link https://github.com/ToGe3688/ioBroker.ai-toolbox

                    Hallo zusammen,

                    ich möchte euch den neuen ioBroker AI Toolbox Adapter vorstellen, den ich kürzlich entwickelt habe. Der Adapter bringt KI-Modelle in eure ioBroker Smart-Home-Umgebung.

                    Was macht der Adapter?

                    Der AI Toolbox Adapter ermöglicht die Integration von KI-Modellen (Large Language Models, LLMs) in ioBroker. Damit könnt ihr maßgeschneiderte Tools erstellen, die spezifische Aufgaben automatisieren oder auch als intelligente Chatbots dienen. Die wichtigsten Features sind:

                    • Unterstützung für verschiedene KI-Anbieter, darunter OpenAI, Anthropic, OpenRouter, Perplexity und lokale / selbst gehostete Modelle wie LocalAI oder LM Studio.
                    • Erstellung individueller Tools mit flexiblen Einstellungen wie System-Prompts, Beispielnachrichten, Nachrichtenverläufen und Kreativitätsparametern.
                    • Direkte Kommunikation mit euren Tools und den Modellen über Datenpunkte oder via sendTo über Scripte im Javascript Adapter
                    • Token- und Nutzungsstatistiken zur Optimierung und Kostenkontrolle.
                    • Vision / Image Fähigkeiten für Tools. Bilder analysieren und nach eigener Vorgabe auswerten lassen.

                    Beispiele für die Anwendung

                    • Chatbots: Eigene Assistenten die sich wie ein Chatbot verhalten und zur Kommunikation genutzt werden können.
                    • Wetter-Bot: Personalisierte Wetterberichte basierend auf euren Sensordaten die ihr via ioBroker zur Verfügung stellt.
                    • Musik-Assistent: Musikempfehlungen passend zur Stimmung oder zum Wetter für Smartspeaker z.B. Alexa
                    • Lichtsteuerung: Automatische RGB-Beleuchtungsvorschläge je nach Musikrichtung. Hier können JSON Daten zur weiteren Verwendung in Scripten erzeugt werden.
                    • Individuelle Begrüßungen: Erzeuge individuelle Begrüßungen basierend auf den zur Verfügung gestellten Daten. Die Begrüßungen können gekoppelt mit der Anwesenheit z.B. über Alexa ausgegeben werden.
                    • Bild Analyse: Bildmaterial nach eigenen Vorgaben auswerten lassen

                    Wie funktioniert’s?

                    Nach der Installation könnt ihr eure Tools direkt im Admin Interface anlegen und konfigurieren. Mit einem Klick stehen Datenpunkte für Anfragen (text_request) und Antworten (text_response) bereit. Beachtet dabei eure Tools so präzise wie möglich zu formulieren um gute Ergebnisse zu erhalten. Die Beispielanfragen und -antworten helfen hierbei das Model zu formen um konsistente Ausgaben zu erhalten. Auch die Integration in Skripte ist möglich, z. B.:

                    Mit Tools interagieren

                    sendTo('ai-toolbox.0', 'tool_request', {
                      tool: 'simple-chatbot',
                      text: 'Hallo, wie geht’s?',
                    }, (result) => {
                      console.log(result); // Antwort vom Tool als Textstring
                    });
                    

                    Direkt mit Modellen interagieren

                    sendTo('ai-toolbox.0', 'model_request', {
                        'model': 'MODEL-NAME',
                        'system_prompt': 'System prompt for your request'
                        'temperature': 'Temperature setting for your request'
                        'max_tokens': 'Max number of tokens to generate'
                        'text': 'The message for the tool to respond to',
                    }, async (result) => {
                        console.info(result.text); // Text response of the model
                        console.info(result.model); // Used model for request
                        console.info(result.tokens_input); // Used input tokens
                        console.info(result.tokens_output); // Used output tokens
                        console.info(result.error); // Error, populated if request fails
                        console.info(result.request_data); // JSON object with request data
                        console.info(result.response_data); // JSON object with raw response of the API call
                    });
                    

                    Feedback gesucht!

                    Ich freue mich über euer Feedback, sei es zu den Funktionen, der Benutzerfreundlichkeit oder Ideen für neue Anwendungsfälle. Auch Bug-Reports und Verbesserungsvorschläge sind willkommen! Da es mein erster Adapter für ioBroker ist bitte ich um Nachsicht falls ich Dinge nicht korrekt umgesetzt habe. :astonished:

                    Den Adapter findet ihr auf Github unter https://github.com/ToGe3688/ioBroker.ai-toolbox

                    Eine detaillierte Anleitung und ein Quick-Start Guide ist im Readme enthalten.

                    Danke schon jetzt für eure Rückmeldungen! 🙏

                    Viele Grüße!

                    R Offline
                    R Offline
                    RandyAndy
                    schrieb am zuletzt editiert von
                    #34

                    Hallo,
                    Ich verwende nun seit einiger Zeit den ai-toolbox-Adapter in Kombination mit Openrouter.
                    Es hat sich gezeigt, dass das beste Ergebnis mit Gemini erzeugt wird. DeepSeek ist nicht schlecht aber nicht aud dem gleichen Niveau.
                    Leider verlangt seit einigen Tagen "Openrouter", dass man Credits in Verbindung mit Gemini haben muss.
                    Da bei Gemini bis zu 1 Mio Tokens frei sind, frage ich mich, ob man nicht direkt auf Gemini über den Adpater zugreifen kann. Einen API key habe ich.
                    Hat das schon jemand hinbekommen ?

                    R 1 Antwort Letzte Antwort
                    1
                    • R RandyAndy

                      Hallo,
                      Ich verwende nun seit einiger Zeit den ai-toolbox-Adapter in Kombination mit Openrouter.
                      Es hat sich gezeigt, dass das beste Ergebnis mit Gemini erzeugt wird. DeepSeek ist nicht schlecht aber nicht aud dem gleichen Niveau.
                      Leider verlangt seit einigen Tagen "Openrouter", dass man Credits in Verbindung mit Gemini haben muss.
                      Da bei Gemini bis zu 1 Mio Tokens frei sind, frage ich mich, ob man nicht direkt auf Gemini über den Adpater zugreifen kann. Einen API key habe ich.
                      Hat das schon jemand hinbekommen ?

                      R Offline
                      R Offline
                      RandyAndy
                      schrieb am zuletzt editiert von
                      #35

                      @randyandy sagte in Test Adapter AI Toolbox v0.1.3 GitHub/Latest:

                      Hallo,
                      Ich verwende nun seit einiger Zeit den ai-toolbox-Adapter in Kombination mit Openrouter.
                      Es hat sich gezeigt, dass das beste Ergebnis mit Gemini erzeugt wird. DeepSeek ist nicht schlecht aber nicht aud dem gleichen Niveau.
                      Leider verlangt seit einigen Tagen "Openrouter", dass man Credits in Verbindung mit Gemini haben muss.
                      Da bei Gemini bis zu 1 Mio Tokens frei sind, frage ich mich, ob man nicht direkt auf Gemini über den Adpater zugreifen kann. Einen API key habe ich.
                      Hat das schon jemand hinbekommen ?

                      Keiner eine Antwort ?

                      R 1 Antwort Letzte Antwort
                      0
                      • R RandyAndy

                        @randyandy sagte in Test Adapter AI Toolbox v0.1.3 GitHub/Latest:

                        Hallo,
                        Ich verwende nun seit einiger Zeit den ai-toolbox-Adapter in Kombination mit Openrouter.
                        Es hat sich gezeigt, dass das beste Ergebnis mit Gemini erzeugt wird. DeepSeek ist nicht schlecht aber nicht aud dem gleichen Niveau.
                        Leider verlangt seit einigen Tagen "Openrouter", dass man Credits in Verbindung mit Gemini haben muss.
                        Da bei Gemini bis zu 1 Mio Tokens frei sind, frage ich mich, ob man nicht direkt auf Gemini über den Adpater zugreifen kann. Einen API key habe ich.
                        Hat das schon jemand hinbekommen ?

                        Keiner eine Antwort ?

                        R Offline
                        R Offline
                        RandyAndy
                        schrieb am zuletzt editiert von RandyAndy
                        #36

                        Wie im Adapter beschrieben ist openrouter.ai gut zum Lernen. Damit kann man erste Schritte gut erledigen. Alle anderen Dienste die im Adpater angeboten werden sind aber nicht oder nur gegen Entgeld nutzbar wie OpenAI. Spannender finde ich hier aber die Google Gemini Lösung die für den Heimgebrauch kostenlos ist (bzw. ich kann mir nicht vorstellen dass man 1 Mio Token per Monat verbrauchen kann). Da Google Gemini nicht unterstützt wird und offensichtlich der Adapter nicht mehr gepflegt wird (Schade eigentlich) mache ich das nun über pyton oder cURL. Die ersten Tests sind recht vielversprechend und ich bin dann hier wieder raus.
                        Aber Danke an die Entwickler, für den Einstieg war der Adapter recht brauchbar.

                        O 1 Antwort Letzte Antwort
                        0
                        • R RandyAndy

                          Wie im Adapter beschrieben ist openrouter.ai gut zum Lernen. Damit kann man erste Schritte gut erledigen. Alle anderen Dienste die im Adpater angeboten werden sind aber nicht oder nur gegen Entgeld nutzbar wie OpenAI. Spannender finde ich hier aber die Google Gemini Lösung die für den Heimgebrauch kostenlos ist (bzw. ich kann mir nicht vorstellen dass man 1 Mio Token per Monat verbrauchen kann). Da Google Gemini nicht unterstützt wird und offensichtlich der Adapter nicht mehr gepflegt wird (Schade eigentlich) mache ich das nun über pyton oder cURL. Die ersten Tests sind recht vielversprechend und ich bin dann hier wieder raus.
                          Aber Danke an die Entwickler, für den Einstieg war der Adapter recht brauchbar.

                          O Offline
                          O Offline
                          oxident
                          schrieb am zuletzt editiert von
                          #37

                          @randyandy Guter Hinweis mit Gemini! Ich für meinen Teil fahre mit Qwen-12B unter Ollama (via Open WebUI) auch ganz gut.

                          Ich glaube, der Adapter ist einfach "zu früh". Will sagen, es fehlen vielleicht noch richtige Use-Cases mit praktischen Beispielen. Dann könnte das vielleicht noch zünden...

                          B 1 Antwort Letzte Antwort
                          1
                          • O oxident

                            @randyandy Guter Hinweis mit Gemini! Ich für meinen Teil fahre mit Qwen-12B unter Ollama (via Open WebUI) auch ganz gut.

                            Ich glaube, der Adapter ist einfach "zu früh". Will sagen, es fehlen vielleicht noch richtige Use-Cases mit praktischen Beispielen. Dann könnte das vielleicht noch zünden...

                            B Offline
                            B Offline
                            bloop
                            schrieb am zuletzt editiert von
                            #38

                            @oxident
                            Ich fahre mit Ollama ebenfalls sehr gut! Funktioniert im Adapter leider noch nicht. Auf GitHub habe ich bereits ein Feature Request für Ollama angefragt. Es wird scheinbar bereits daran gearbeitet.
                            Leider reagiert der Großteil der Community gegenüber AI use cases sehr abweisend - anders als bei HA…
                            Ich denke ebenfalls das es hierfür noch zu früh ist und noch keiner der großen Streamer etwas bahnbrechendes dazu veröffentlicht hat.
                            Ich verwende meine AI aktuell lediglich um regelmässige Benachrichtigungen Kreativer zu gestalten und trainiere meine AI mit Bildern der Kameras um irgendwann zu Personen, Tieren usw. korrekte Namen zuweisen zu können. Als Nächstes möchte ich meine AI mit Datenpunkten usw. trainieren. Alles Lokal versteht sich.
                            Was sind eure use cases denn so?

                            R 1 Antwort Letzte Antwort
                            1
                            • B bloop

                              @oxident
                              Ich fahre mit Ollama ebenfalls sehr gut! Funktioniert im Adapter leider noch nicht. Auf GitHub habe ich bereits ein Feature Request für Ollama angefragt. Es wird scheinbar bereits daran gearbeitet.
                              Leider reagiert der Großteil der Community gegenüber AI use cases sehr abweisend - anders als bei HA…
                              Ich denke ebenfalls das es hierfür noch zu früh ist und noch keiner der großen Streamer etwas bahnbrechendes dazu veröffentlicht hat.
                              Ich verwende meine AI aktuell lediglich um regelmässige Benachrichtigungen Kreativer zu gestalten und trainiere meine AI mit Bildern der Kameras um irgendwann zu Personen, Tieren usw. korrekte Namen zuweisen zu können. Als Nächstes möchte ich meine AI mit Datenpunkten usw. trainieren. Alles Lokal versteht sich.
                              Was sind eure use cases denn so?

                              R Offline
                              R Offline
                              RandyAndy
                              schrieb am zuletzt editiert von
                              #39

                              @bloop

                              mein use case ist es automatisiert eMails zu beantworten.
                              DeepSeek ist da nicht schlecht und 90% - 95% der Antworten sind echt brauchbar. Ich habe parallel mal Gemini (manuel) verwendet und die Antworten wären besser und DeepSeek ist schon recht erfinderisch. Ich bin hier aber noch beim Beobachten und testen und habe die automatisierte Antwort noch nicht scharf geschaltet.
                              Tendentiell werde ich aber vermutlich mit den POST-Funktionen und Gemini in Zukunft weiter arbeiten und nicht mit DeepSeek. Dazu benötige ich aber ein wenig Zeit, die ich derzeit nicht habe, da mich etwas anderes noch wichtigers aufhält.

                              Andreas

                              1 Antwort Letzte Antwort
                              0
                              • C Online
                                C Online
                                ceram
                                schrieb zuletzt editiert von ceram
                                #40

                                @toge88 Richtig cooles Ding, vielen Dank dafür!

                                Als Inspiration möchte ich mein Projekt mit euch teilen: Ich habe mir mit der Toolbox einen Assistenten gebaut, der Fragen zum Status meines Smarthomes in natürlicher Sprache entgegennimmt und beantwortet. Für minimale laufende Kosten (s. u.). Ich benutze zwei Kanäle, Alexa und Telegram.

                                Das Ganze funktioniert wie folgt: Es wird nicht nur eine Benutzerfrage an die externe KI übermittelt, sondern auch ein ziemlich großes, per JS-Code eigens passend generiertes JSON mit ausgewählten States als Kontext. Außerdem noch ein paar "Allgemeine Hinweise". Konkret sieht der übermittelte String bei mir z. B. so aus:

                                var promptWithContext = 'Benutzer-Frage:\n' + userQuestion +
                                '\n\nAllgemeine Hinweise:\n' + `
                                - Feuchtigkeitsvergleiche machst du immer anhand des Taupunkts (je niedriger, desto trockener die Luft), nicht der relativen Feuchte.
                                - Bei Lüftungsempfehlungen betrachtest du die Taupunktdifferenz, denn der primäre Sinn des Lüftens ist die Entfeuchtung:
                                    - Aber Achtung: Lüften zur Entfeuchtung macht keinen Sinn, wenn die Feuchte schon in der Komfortzone (40 bis 55 % rel. und Taupunkt < 13 °C) bzw. darunter oder die Taupunktdifferenz zwischen Raum und außen sehr niedrig ist.
                                    - Soll die Lüftung die Raumtemperatur senken, vergleichst du sie mit der Außentemperatur. Lass aber nie den Taupunkt außer Acht, es soll durch das Lüften innen niemals (!) feuchter werden!
                                - Erwähnst du automatisch geschaltete Lichter, die aktuell an sind, erkläre immer, dass diese sich selbst ausschalten.
                                - Der Solarmodus ist ein wesentliches Element der Heizungssteuerung und beeinflusst das Heizverhalten stark. Erkläre die Auswirkungen bei Fragen zur Heizung.
                                - Die zentrale Wohnraumlüftungsanlage dient primär der Entfeuchtung (auf ein angenehmes Niveau von 50-55% rel. Feuchte), aber auch der Kühlung. Die Lüftungsstufe ist taupunktgeführt und - wenn der Sommerbypass geöffnet ist - auch temperaturgeführt.
                                - Ob ein Raum derzeit beheizt wird, hängt von der Soll- und Ist-Temperatur des Raums und dem aktuellen Heizungsmodus ab.
                                ` +
                                '\n\nKontext (JSON):\n' + JSON.stringify(context, null, 2)
                                

                                Den Kontext erzeuge ich dynamisch mit einem ellenlangen JS-Code, er sieht fertig zusammengestellt in etwa (vereinfachte Darstellung, mein Echt-Kontext ist über doppelt so groß) so aus:

                                var context = {
                                  "environment": {
                                    "current_date_and_time": "28.01.2026 22:11:15",
                                    "location": "Germany, 12345 Musterstadt",
                                    "nachtruhe_aktiv": false,
                                    "sonne": {
                                      "sonne_scheint_gerade": true,
                                      "klarheitsgrad_himmel_prozent_laut_PV_Ertrag_gegen_ClearSky": 73,
                                      "illumination_ost_lux": 8500,
                                      "illumination_west_lux": 42000,
                                      "elevation_grad": 18.3,
                                      "azimuth_grad": 195.7
                                    },
                                    "regen": {
                                      "rain": false,
                                      "seit": "27.01.2026 22:15:30"
                                    }
                                  },
                                  "verteilte_geraete": {
                                    "haustuer_klingel": {
                                      "zuletzt_geklingelt": "28.01.2026 11:47:22"
                                    },
                                    "couch_ladegeraet": {
                                      "aktiv": false,
                                      "seit": "27.01.2026 23:12:45",
                                      "erklaerung": "Ladegerät für mobile Geräte auf der Couch im EG Wohnzimmer. Wird über Fernbedienung gesteuert und schaltet sich nach 4 Stunden automatisch ab."
                                    },
                                    "garage_ladegeraet": {
                                      "aktiv": true,
                                      "seit": "28.01.2026 13:05:18",
                                      "stromverbrauch_w": 87,
                                      "erklaerung": "Ladegerät für Gartenwerkzeuge und Rasenmäher in der Garage. Schaltet sich automatisch ab, wenn der Stromverbrauch unter 5W fällt und mindestens 5 Minuten vergangen sind."
                                    },
                                    "kg_buero_pc": {
                                      "aktiv": true,
                                      "seit": "28.01.2026 08:15:03",
                                      "stromverbrauch_w": 145,
                                      "erklaerung": "PC im KG Büro. Schaltet sich automatisch ab, wenn der Stromverbrauch unter einen Schwellenwert fällt (12W ohne Musik, 42W mit Musik) und mindestens 1 Minute vergangen ist."
                                    },
                                    "kg_buero_musikanalage": {
                                      "aktiv": true,
                                      "seit": "28.01.2026 09:30:22"
                                    },
                                    "waschmaschine": {
                                      "laeuft": false,
                                      "seit": null
                                    },
                                    "trockner": {
                                      "laeuft": true,
                                      "seit": "28.01.2026 13:45:10",
                                      "restzeit_minuten": 38
                                    },
                                    "backofen": {
                                      "laeuft": false,
                                      "seit": null,
                                      "restzeit_minuten": null
                                    },
                                    "whirlpool": {
                                      "aktiv": true,
                                      "temperatur_aktuell_celsius": 38.5,
                                      "temperatur_soll_celsius": 39.0,
                                      "heizung_aktiv": true,
                                      "filterpumpe_aktiv": true,
                                      "blubbern_aktiv": false,
                                      "efficient_heat_aktiv": true,
                                      "solar_ueberschuss_reicht_fuer_whirlpoolheizung": false,
                                      "erklaerung": "Bestway Whirlpool im Garten. Hält die Wunschwassertemperatur automatisch, wenn die Heizung an ist. Wenn EfficientHeat aktiv, wird die Heizung automatisch aktiviert, wenn Solarüberschuss herrscht und automatisch wieder deaktiviert."
                                    },
                                    "usv_server": {
                                      "batterie_ladung_prozent": 100,
                                      "restlaufzeit_minuten": 45,
                                      "leistung_watt": 185,
                                      "batterie_muss_getauscht_werden": false,
                                      "stromausfall_aktiv": false,
                                      "erklaerung": "Unterbrechungsfreie Stromversorgung für den Server und die Netzwerkhardware."
                                    },
                                    "partykeller_musikanlage": {
                                      "aktiv": false,
                                      "seit": "26.01.2026 01:22:15",
                                      "erklaerung": "Musikanlage im Partykeller. Schaltet sich nach 8 Stunden automatisch ab."
                                    },
                                    "partykeller_fernseher": {
                                      "aktiv": false,
                                      "seit": "26.01.2026 00:45:33",
                                      "erklaerung": "Fernseher im Partykeller. Schaltet sich automatisch nach 4 Stunden ab."
                                    },
                                    "saugroboter": [
                                      {
                                        "name": "Saugroboter Erdgeschoss",
                                        "etage": "EG",
                                        "status": false,
                                        "seit": "28.01.2026 10:15:42"
                                      },
                                      {
                                        "name": "Saugroboter Obergeschoss",
                                        "etage": "OG",
                                        "status": false,
                                        "seit": "28.01.2026 09:52:18"
                                      }
                                    ]
                                  },
                                  "automatikprogramme": [
                                    {
                                      "name": "Lüftung",
                                      "beschreibung": "Steuert die Lüftungsintensität automatisch auf Basis der Anwesenheiten, sowie des maximalen Taupunktes und der maximalen Luftfeuchtigkeit innen mit dem Ziel, ein trockenes Klima bei hoher Energieeffizienz zu schaffen.",
                                      "aktiv": true
                                    },
                                    {
                                      "name": "Zentralheizung",
                                      "beschreibung": "Steuert die Zentralheizung automatisch unter Berücksichtigung der vorgegebenen Raumtemperaturen und einer Nachtabsenkung während der Nachtruhe.",
                                      "aktiv": true
                                    },
                                    {
                                      "name": "Zirkulationspumpe",
                                      "beschreibung": "Schaltet die Zirkulationspumpe bei Bewegung im OG automatisch für fünf Minuten ein.",
                                      "aktiv": true
                                    },
                                    {
                                      "name": "Licht",
                                      "beschreibung": "Schaltet in Durchgangsbereichen bei Dunkelheit das Licht an, sobald eine Bewegung registriert wird.",
                                      "aktiv": true
                                    },
                                    {
                                      "name": "Beschattung",
                                      "beschreibung": "Raumindividuelle Beschattung der Rollläden in Abhängigkeit der Solltemperaturüberschreitung, des Sonnenstandes und der Bewölkung.",
                                      "aktiv": true
                                    },
                                    {
                                      "name": "Videoüberwachung",
                                      "beschreibung": "Schaltet die Außen-Videoüberwachung auf Basis der Anwesenheit und weiterer Parameter an und aus.",
                                      "aktiv": false
                                    }
                                  ],
                                  "photovoltaik_anlage": {
                                    "leistung_aktuell_w": 3250,
                                    "installierte_leistung_peak_kW": 9.5,
                                    "dach_ausrichtung": "Süd",
                                    "dach_neigung": 35,
                                    "netz_bezug_w": 0,
                                    "netz_einspeisung_w": 1830,
                                    "verbrauch_gesamt_w": 1420,
                                    "eigenverbrauch_w": 1420,
                                    "autarkie_prozent": 100,
                                    "batterie_kapazitaet_kWh": 7.8,
                                    "batterie_bezug_w": 0,
                                    "batterie_ladung_prozent": 95,
                                    "stabiler_solarueberschuss": true,
                                    "prognose_heute_rest_bis_Tagesende_kwh": 5.1,
                                    "prognose_naechste_24h_gesamt_kwh": 18.7,
                                    "prognose_naechste_24h_halbstuendlich": [
                                      {"uhrzeit": "28.01.2026 15:00", "prognose_leistung_kw": 2.8},
                                      {"uhrzeit": "28.01.2026 15:30", "prognose_leistung_kw": 2.3},
                                      {"uhrzeit": "28.01.2026 16:00", "prognose_leistung_kw": 1.7},
                                      {"uhrzeit": "28.01.2026 16:30", "prognose_leistung_kw": 0.9},
                                      {"uhrzeit": "28.01.2026 17:00", "prognose_leistung_kw": 0.2}
                                    ]
                                  },
                                  "heizung": {
                                    "typ": "Viessmann Vitocal 200-S",
                                    "modell": "AWB-M 201.A10",
                                    "betriebsmodus": "Vollbetrieb",
                                    "betriebsmodus_seit": "28.01.2026 06:00:15",
                                    "solar_modus": "Turbo (Überschussstrom wird zum Heizen verwendet - Heizkurve nach oben, Raumthermostate unter bestimmten Bedingungen +6°C)",
                                    "solar_modus_seit": "28.01.2026 12:15:42",
                                    "leistungsbezug_max_laut_spezifikation_kw": 3,
                                    "leistung_aktuell_w": 950,
                                    "energiebezug_letzte24h_kwh": 8.3,
                                    "vorlauf_temperatur_celsius": 32.5,
                                    "vorlauf_temperatur_haus_celsius": 31.8,
                                    "vorlauf_temperatur_keller_celsius": 28.2,
                                    "warmwasser_temperatur_celsius": 48.5,
                                    "kompressor_aktiv": true,
                                    "kompressor_letzte_aenderung": "28.01.2026 14:28:33",
                                    "kompressor_24h_auslastung_prozent": 42,
                                    "zirkulationspumpe_aktiv": false,
                                    "zirkulationspumpe_letzte_aenderung": "28.01.2026 13:15:07"
                                  },
                                  "post_im_briefkasten": {
                                    "aktuell_vorhanden": true,
                                    "zuletzt_eingeworfen": "28.01.2026 11:23:44",
                                    "zuletzt_geleert": "27.01.2026 17:45:12"
                                  },
                                  "alarmanlage": {
                                    "status": "Deaktiviert",
                                    "scharf_nach_verlassen": true,
                                    "letzte_ausloesung": "Keine",
                                    "letzte_ausloesung_zeit": "15.12.2025 03:22:18",
                                    "erklaerung": "Die Alarmanlage kann deaktiviert oder scharf sein. Sie kann manuell oder automatisch nach Verlassen scharfgestellt werden. Bei Auslösung werden Lichter aktiviert, Rollläden hochfahren und Sirenen heulen."
                                  },
                                  "internetanschluss": {
                                    "status": "Normal (primäre Verbindung)",
                                    "failover_aktiv": false,
                                    "seit_failover": null
                                  },
                                  "gefrierschrank": {
                                    "temperatur_celsius": -18.5,
                                    "status": "Normal",
                                    "erklaerung": "Der Gefrierschrank wird überwacht. Bei Temperaturen über -16°C wird ein Alarm ausgelöst mit Sirene und Telegram-Benachrichtigung."
                                  },
                                  "rueckstauklappe": {
                                    "blockiert": false,
                                    "letzte_blockierung": "12.07.2025 15:42:33",
                                    "wartung_faellig": false,
                                    "erklaerung": "Die Rückstauklappe schützt vor Rückstau. Bei Blockierung wird die Waschmaschine abgeschaltet, eine Sirene aktiviert und Alexa/Telegram benachrichtigt. Wartung fällig wenn länger als 1 Jahr keine Blockierung."
                                  },
                                  "rauchmelder": {
                                    "rauch_erfasst": false,
                                    "status": "Kein Rauch erkannt",
                                    "letzter_alarm": "Nie",
                                    "erklaerung": "Bei Rauchentwicklung werden alle Rollläden automatisch geöffnet, um Fluchtwege zu schaffen und die Feuerwehr zu unterstützen."
                                  },
                                  "fenster_tueren": [
                                    {"name": "EG Wohnzimmer Terrassentür", "status": "geschlossen", "letzte_aenderung": "28.01.2026 08:15:42"},
                                    {"name": "EG Küche Fenster", "status": "gekippt", "letzte_aenderung": "28.01.2026 12:22:15"},
                                    {"name": "OG Schlafzimmer Fenster", "status": "geschlossen", "letzte_aenderung": "28.01.2026 07:30:18"},
                                    {"name": "OG Bad Fenster", "status": "gekippt", "letzte_aenderung": "28.01.2026 09:45:33"},
                                    {"name": "KG Werkstatt Fenster", "status": "geschlossen", "letzte_aenderung": "27.01.2026 19:12:07"},
                                    {"name": "Garagentor", "status": "geschlossen", "letzte_aenderung": "28.01.2026 19:34:55"}
                                  ],
                                  "anwesenheit": {
                                    "Max": {"imHaus": false, "seit": "28.01.2026 07:52:15"},
                                    "Moritz": {"imHaus": true, "seit": "28.01.2026 19:35:42"},
                                    "jemand_anwesend": true
                                  },
                                  "klima": {
                                    "durchschnittliche_innen_temperatur_celsius": 21.3,
                                    "maximale_innen_temperatur_celsius": 22.1,
                                    "maximale_solltemperatur_celsius": 21.5,
                                    "maximale_feuchte_relativ_prozent": 54,
                                    "maximale_feuchte_absolut_taupunkt_celsius": 11.8,
                                    "aussen": {
                                      "ist_temperatur_celsius": 3.2,
                                      "feuchte_relativ_prozent": 78,
                                      "taupunkt_celsius": -0.3
                                    },
                                    "unbeheizte_gebaeudeteile": {
                                      "dachboden": {
                                        "temperatur_celsius": 8.5,
                                        "feuchte_relativ_prozent": 62,
                                        "taupunkt_celsius": 1.2
                                      },
                                      "garage": {
                                        "temperatur_celsius": 7.8,
                                        "feuchte_relativ_prozent": 68,
                                        "taupunkt_celsius": 2.1
                                      }
                                    },
                                    "raeume_beschreibung": "Array von Arrays pro Raum: [Raumname, SollTemp°C, IstTemp°C, Feuchte%, Taupunkt°C]",
                                    "raeume": [
                                      ["EG Wohnzimmer", 21.5, 21.8, 52, 11.5],
                                      ["EG Küche", 21.0, 20.9, 48, 9.8],
                                      ["EG Esszimmer", 21.5, 22.1, 54, 11.8],
                                      ["OG Elternschlafzimmer", 19.0, 19.3, 51, 8.9],
                                      ["OG Bad", 22.0, 21.7, 53, 11.6],
                                      ["OG Kinderzimmer Links", 21.0, 20.8, 49, 9.5],
                                      ["KG Büro", 20.5, 20.2, 47, 8.7]
                                    ]
                                  },
                                  "lichter": {
                                    "manuell_geschaltet": [
                                      {"name": "EG Wohnzimmer Stehlampe", "status": false, "letzte_aenderung": "27.01.2026 23:15:42"},
                                      {"name": "EG Küche Decke", "status": true, "letzte_aenderung": "28.01.2026 12:30:18"},
                                      {"name": "OG Elternschlafzimmer Nachttisch", "status": false, "letzte_aenderung": "28.01.2026 07:22:33"}
                                    ],
                                    "automatisch_geschaltet": [
                                      {"name": "EG Flur", "status": false, "letzte_aenderung": "28.01.2026 14:05:12"},
                                      {"name": "OG Treppenhaus", "status": false, "letzte_aenderung": "28.01.2026 13:42:07"},
                                      {"name": "KG Keller Treppe", "status": false, "letzte_aenderung": "28.01.2026 11:18:55"}
                                    ],
                                    "erklaerung_automatisch": "Automatische Lichter schalten sich selbst ein (Bewegungsmelder) und von selbst aus, wenn sie nicht mehr benötigt werden."
                                  },
                                  "bewegungsmelder": [
                                    {"name": "Außenbereich Haustür", "ort": "Eingang", "letzte_bewegung": "28.01.2026 11:47:15"},
                                    {"name": "EG Flur", "ort": "EG Durchgang", "letzte_bewegung": "28.01.2026 14:05:08"},
                                    {"name": "OG Treppenhaus", "ort": "OG", "letzte_bewegung": "28.01.2026 13:42:03"},
                                    {"name": "Garten Terrasse", "ort": "Außen", "letzte_bewegung": "28.01.2026 08:32:41"}
                                  ],
                                  "video_babyphones": [
                                    {"name": "Babyphone Kinderzimmer Links", "online": true, "seit": "28.01.2026 00:15:33"}
                                  ],
                                  "rolllaeden": {
                                    "alle_rolllaeden": [
                                      {"name": "EG Wohnzimmer", "raum": "Wohnzimmer", "ausrichtung": "Süd", "behanghoehe_prozent": 35, "status": "beschattet", "letzte_aenderung": "28.01.2026 13:15:22"},
                                      {"name": "EG Küche", "raum": "Küche", "ausrichtung": "West", "behanghoehe_prozent": 98, "status": "auf", "letzte_aenderung": "28.01.2026 08:30:15"},
                                      {"name": "OG Elternschlafzimmer", "raum": "Elternschlafzimmer", "ausrichtung": "Nord", "behanghoehe_prozent": 99, "status": "auf", "letzte_aenderung": "28.01.2026 07:45:33"},
                                      {"name": "OG Kinderzimmer Links", "raum": "Kinderzimmer Links", "ausrichtung": "Süd/Ost", "behanghoehe_prozent": 42, "status": "beschattet", "letzte_aenderung": "28.01.2026 12:42:18"}
                                    ],
                                    "behanghoehe_erklaerung": "0% = zu, >95% = auf, zwischen 15 % und 50% = beschattet",
                                    "alle_rolllaeden_unten": false
                                  },
                                  "lueftungsanlage": {
                                    "lueftungsstufe": {
                                      "aktuell": 2,
                                      "seit": "28.01.2026 11:30:15",
                                      "erklaerung": "Lüftungsstufe 1-4: 1=Minimum, 2=Normal, 3=Erhöht, 4=Maximum. Wird automatisch basierend auf Luftfeuchtigkeit, Taupunktdifferenz und Anwesenheit gesteuert."
                                    },
                                    "sommerbypass": {
                                      "status": "geschlossen",
                                      "seit": "15.10.2025 22:15:42",
                                      "erklaerung": "Ein offener Sommerbypass leitet Außenluft ohne Wärmetausch durch die Anlage, wenn die Außentemperatur niedriger als die Raumtemperatur ist. Kühlt im Sommer und wird nur aktiviert, wenn die Heizung aus ist."
                                    },
                                    "boost_modus": {
                                      "aktiv": false,
                                      "seit": "27.01.2026 18:45:12",
                                      "erklaerung": "Boost-Modus aktiviert manuell die maximale Lüftungsstufe 4 für 1 Stunde. Deaktiviert sich automatisch nach Ablauf der Zeit. Nützlich bei starker Geruchsentwicklung oder hoher Luftfeuchtigkeit."
                                    }
                                  }
                                }
                                

                                Als Modell habe ich Grok Fast 4.1 über openrouter eingebunden, Einstellung wie folgt:
                                7659403b-8de3-4680-ada1-d8a7848c1116-image.png

                                Der Systemprompt lautet (zum Rauskopieren):

                                Du bist ein intelligenter Smart-Home-Assistent, der nur Auskünfte gibt. Du leitest notwendige Informationen aus den verfügbaren JSON-Daten ab, suchst deren Sinn und Bedeutung, ziehst logische Schlüsse bei fehlenden Informationen und erfindest nichts, wenn Unsicherheit besteht. Deine Antworten sind kurz, prägnant und auf Deutsch, maximal 1-2 Sätze, ohne Erklärungen, außer gewünscht. Drück dich präzise, aber in sehr natürlicher, lockerer Sprache aus, so dass eine Text2Speech-Engine deine Antworten gut wiedergeben kann. Für Zeitangaben nutzt du die current_date_and_time aus dem JSON als Referenz – berechne alle Zeitdifferenzen dagegen. Wo es Sinn macht, nutzt du relative Zeitangaben in sprachgebrauchsüblicher Genauigkeit. Datumsangaben immer im Stil "3. August 2026" ohne führende 0! Zahlen: Nutze Komma statt Punkt als Dezimaltrenner (z.B. '22,5 Grad').
                                

                                JSON-Generierung sieht im internen Code (die Funktion getScDevDP habe ich selbst definiert, sie liefert mir aus einer zentralen Code-Konfiguration einen Datenpunkt-id als String) auszugsweise so aus:

                                    context.environment = {
                                        current_date_and_time: formatDate(new Date(), 'DD.MM.YYYY hh:mm:ss'),
                                        location: 'Germany, 66793 Saarwellingen',
                                        nachtruhe_aktiv: getState('javascript.0.Eigene_Datenpunkte.Nachtruhe').val,
                                        sonne: {
                                            sonne_scheint_gerade: getState('javascript.0.Eigene_Datenpunkte.Sonnenschein').val,
                                            // Klarheitsgrad errechnet sich aus der PV-Anlagenleistung vs. ClearSky-Prognose; bei < 100 W unzuverlässig -> null
                                            klarheitsgrad_himmel_prozent_laut_PV_Ertrag_gegen_ClearSky: (() => {
                                                const pvPower = getState('javascript.0.Eigene_Datenpunkte.SmartMeter.PV.GenPower').val;
                                                return pvPower < 100 ? null : getState('javascript.0.Eigene_Datenpunkte.SmartMeter.PV.RealVsClearSkyPower').val;
                                            })(),
                                            illumination_ost_lux: getState(getScDevDP('LuxEast', 'currentIllumination')).val,
                                            illumination_west_lux: getState(getScDevDP('LuxWest', 'currentIllumination')).val,
                                            elevation_grad: getState('javascript.0.Sonnenstand.Elevation').val,
                                            azimuth_grad: getState('javascript.0.Sonnenstand.Azimut').val
                                        }
                                    };
                                

                                Damit kann ich für ca. 0,3 Eurocent pro Anfrage-Antwort-Paar Dinge fragen wie Was denkst du, wer hat zuletzt das Garagentor geöffnet? und erhalte dann als Antwort so etwas wie Das Garagentor wurde zuletzt heute um 19:55 Uhr geöffnet, Moritz kam eine Minute später nach Hause. Vermutlich hat er das Garagentor geöffnet.

                                Vielleicht kann ja jemand etwas mit diesem wild skizzierten Ansatz anfangen :)

                                Viele Grüße!

                                ceram

                                1 Antwort Letzte Antwort
                                0
                                Antworten
                                • In einem neuen Thema antworten
                                Anmelden zum Antworten
                                • Älteste zuerst
                                • Neuste zuerst
                                • Meiste Stimmen


                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                330

                                Online

                                32.6k

                                Benutzer

                                82.1k

                                Themen

                                1.3m

                                Beiträge
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                ioBroker Community 2014-2025
                                logo
                                • Anmelden

                                • Du hast noch kein Konto? Registrieren

                                • Anmelden oder registrieren, um zu suchen
                                • Erster Beitrag
                                  Letzter Beitrag
                                0
                                • Home
                                • Aktuell
                                • Tags
                                • Ungelesen 0
                                • Kategorien
                                • Unreplied
                                • Beliebt
                                • GitHub
                                • Docu
                                • Hilfe