Yaml-Code von ChatGPT schreiben lassen

Kleiner Tipp für alle, die YAML genauso wenig können wie ich. Lasst euch den Code einfach von ChatGPT schreiben. Er erklärte euch auch noch genau was er da geschrieben hat. Kleines Beispiel:

- platform: template
  sensors:
    autarky:
      friendly_name: "Autarky"
      unit_of_measurement: "%"
      value_template: >-
        {% set total_consumption = states('sensor.total_consumption') | float %}
        {% set direct_consumption = states('sensor.direct_consumption') | float %}
        {% set grid_feed_in = states('sensor.grid_feed_in') | float %}
        {% set pv_generation = states('sensor.pv_generation') | float %}
        {% set battery_soc = states('sensor.battery_soc') | float %}
        {% set pv_self_consumption = direct_consumption + battery_soc * total_consumption - grid_feed_in %}
        {% set autarky = (pv_self_consumption / pv_generation * 100) | round(1) %}
        {{ autarky }}

Dazu die Erklärung von ChatGPT:

Erklärung:

  • Die platform ist template, da wir den Sensorwert aus einer Berechnung von anderen Sensoren ableiten.
  • Der friendly_name gibt dem Sensor einen lesbaren Namen.
  • Die unit_of_measurement ist %, da der Autarkiegrad normalerweise als Prozentsatz ausgedrückt wird.
  • Die value_template-Eigenschaft enthält den Code zur Berechnung des Autarkiegrads. Zunächst werden die aktuellen Werte der Sensoren für den Gesamtverbrauch (total_consumption), den Direktverbrauch (direct_consumption), die Einspeisung ins Netz (grid_feed_in), die PV-Erzeugung (pv_generation) und den Batteriestand (battery_soc) abgerufen. Dann wird der Anteil der PV-Erzeugung berechnet, der direkt im Haus verwendet wird (pv_self_consumption). Schließlich wird der Autarkiegrad berechnet, indem der Anteil der selbst verbrauchten PV-Energie an der Gesamt-PV-Erzeugung berechnet und auf eine Nachkommastelle gerundet wird.
  • Der resultierende Wert des Sensors wird als autarky zurückgegeben.

Und meine Aufgabenstellung an ChatGPT:

Schreibe mir einen yaml Code für einen Sensor, der den Autarkiegrad berechnet. Es gibt einen PV Erzeugungszähler, einen Gesamtverbrauchszähler, einen Batteriespeicher, einen Direktverbrauchszähler und einen Einspeisezähler

Vielleicht kann ja hier mal jemand der des YAML mächtig ist eine Einschätzung dazu abgeben, was der Code taugt. Zum Lernen ist es in jedem Fall schon mal absolut genial.
Funktioniert eigentlich mit allen Programmiersprachen…

LG und ein schönes Wochenende!

6 „Gefällt mir“

Cool da bin ich gespannt :stuck_out_tongue:

Hallo,
ich habe selber auch schon so einige Stunden mit ChatGPT verbracht und wollte mir u.a. auch bei HA mit so einigen Yaml Codes helfen lassen. I.d.R. klappt das auch aber man kann sich nicht zu 100% darauf verlassen. Nicht alles funktioniert auf Anhieb und es sind oft Korrekturen notwendig.
Man sollte sich schon ein wenig damit befassen um zu wissen wie man ChatGPT “genau” erklärt was man haben möchte. Die Erklärungen sind allerdings meistens sehr gut und als Hilfestellung ist es allemal gut zu gebrauchen.
Genaueres dazu hat aber Simon bereits in seinem Video zu ChatGPT erklärt :wink:

Ich hab mich schon viel mit dem Teil “unterhalten” und ich sage mal die Chance das der Code funktioniert ist 50/50.

Es kann extrem hilfreich sein, kann einen aber auch total in die falsche Richtung bringen. Oder auch absoluten Blödsinn schreiben.

Die Erklärung sind aber sehr hilfreich, grad am Anfang wenn man gar keine Ahnung hat was man da macht :sweat_smile:

Klar, dass man da erstmal drüber schauen muss. Es ist aber ja durchaus so, dass ChatGPT den Code auch selbst verbessert, wenn man sagt, was nicht funktioniert, bzw. welche Fehlermeldung HA ausgibt.

Von dem her sollte irgendwann ein funktionierender Code herauskommen, auch wenn es manchmal vll. ein paar Runden dauert. Ich denke es hängt auch in erster Linie davon ab, wie genau man seine Anforderungen eintippt.
Prinzipiell ist es finde ich auf jeden Fall extrem faszinierend, was KI inzwischen leisten kann.

Da stimme ich dir zu 100% zu. Auch wenn man erst einmal “lernen” muss wie man ChatGPT genau erklärt was man eigentlich haben möchte, ist es wirklich schon sehr faszinierend und teilweise erschreckend wie gut die KI heute schon ist. :slight_smile:

Ist nicht anders wie bei Google oder anderen Suchmaschinen die Formulierung ist entscheidend.

Ich muss sagen mit Hilfe von ChatGPT habe ich so einige Codezeilen geschrieben. Ich liebe das Teil. Wenn man bedenkt das wir erst am Anfang stehen!

1 „Gefällt mir“

Wenn ich mir von ChatGPT meinen vorhandenen Code optimieren lassen möchte, sieht es hinterher schön aufgeräumt aus, funktioniert bisher aber dann leider nicht mehr. Sicher auch ein Problem der Formulierung.

Bei Problemen, dann aber auch bitte an den ChatGPT wenden. :wink:

Das was ich so mitbekomme. Selten eine. Automatisch gehörigeren YAML Code gesehen, der zum einen Funktioniert und auch das tut was man ursprünglich beabsichtigt hat.

Gruß
Osorkon

Oftmals muss man nachhaken, einfach so übernehmen ohne zum Testen funktioniert in den Seltensten fällen. Mag vielleicht sein dass es in der Bezahlversion besser ist. Genaue Formulierung ist auf jeden Fall das wichtigste.