BUG-TRACKER Solar Forecast ML

Hallo,
Sorry, ich dachte wenn ich mich an den offenen Fall mit anhänge ist das ok und es braucht keine neue Anfrage.
Ich gehe davon aus, dass dies die Zeile im Log trifft:

2026-04-24 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks
 - INFO - Excluded hours info for 2026-04-24: 10/24 (41.7%), reasons: {‘mppt_throttled’: 10}

und 10 Stunden weil von 14:00 Uhr bis Mitternacht gerechnet, oder?

Vielen Dank und ein Lob für die riesen Arbeit

:crayon:by HarryP: Code-/Logzeilen formatiert (bitte immer in </> einbinden)
s.a.: (Neues Update & Features - Hier in der Community 🫶)

1 „Gefällt mir“

Auch mit der aktuellen Version V20.2.2 tritt die Fehlermeldung bei großen Anlagen weiterhin auf. Offenbar konnte bislang keine Lösung gefunden werden. Ich geb‘s jetzt auf.

Nur weil @Tom-HA nicht direkt darauf reagiert, heißt es nicht, daß es auf dem Zettel steht. Geduld bitte.

1 „Gefällt mir“

du hast da ein “nicht” vergessen :wink:

1 „Gefällt mir“

Ich warte seit fast zwei Monaten auf die Rückmeldung von den Logs. Ich denke das ist ausreichend Geduld. Das soll auch keine Kritik sein. Wenn der Fokus mittlerweile woanders liegt, ist das auch ok. Dann brauch ich bloß nicht bei jeder neuen Version eine Rückmeldung geben, ob das Update den Fehler behoben hat. Dann kann ich mir die Arbeit auch sparen.

Ich glaube der Aufwand ist im Vergleich mit der Zeit die Tom ins Projekt investiert im überschaubaren Bereich.

Dann würde ich mir tatsächlich die Arbeit sparen.

2 „Gefällt mir“

Bei mir läuft Solar Forecast ML nun seit etwas mehr als 2 Wochen. Anfänglich waren die Prognosen relativ gut, aber in den letzten 5 Tagen sind sie durchweg viel zu hoch. Meine Anlage hat 6 kW Peak und schafft zu Spitzenzeiten knapp über 40 kWh. Schon für die letzten 3 Tage und auch für die nächsten Tage wurden bzw. werden geradezu absurd hohe Werte prognostiziert. Sollte ich SFML vielleicht neu aufsetzen? Hier ein Screenshot (oben Solcast, unten SFML).

Hier die aktuelle Prognose für heute. Zwischen 11 und 17 werden konstant 6 kW vorhergesagt. Und dann nochmal der Buckel um 19 Uhr mit 4.6 kW. Wo sollen die um diese Zeit noch herkommen?

Warte erst einmal ab.
Den Buckel haben momentan mehrere, woher er kommt ist aktuell noch nicht ganz klar.
Die Genauigkeit hat bei mehreren nachgelassen, auch hier ist noch nicht klar warum.
Donnerstag Nacht soll ein Update kommen, hier sollen Entitäten und Attribute hinzu kommen, die das Problem eingrenzen soll.

Bitte ein wenig Geduld.

Gruß Ralf

2 „Gefällt mir“

Alles klar, danke für die Info! Dann werde ich mal den Donnerstag abwarten und sehen, wie es sich dann entwickelt.

Hallo @Rainman67
Danke für deinen Screenshot, aber ich verstehe ihn nicht - er sagt mir nichts.. kannst Du bitte die Orgiginal IST/ Prognose aus Stats zeigen, damit ich sehe wie hoch die Abweichung gewesen ist? Bitte auch welches System Du nutzt, es ist nun mehrfach bei Proxmox zu bisher nicht erklärbaren Abweichungen gekommen. Ralf hat recht ich versuche gerade die Fälle einzugrenzen. Daher bitte zusätzlich die Information:

Inverter-Clipping aktiviert?
Mppt-Throtteling aktiviert?

Hallo @Tom-HA

der obere Screenshot zeigt im oberen Teil die Prognose von Solcast, der untere Teil zeigt die derzeit von SFML prognostizierten Werte. Das Ganze wurde nur über eine spezielle Karte ansprechend visualisiert.

Die Frage mit der Original IST/Prognose ist eine gute, denn ich kann diese in STATS nicht finden, obwohl ich sie konfiguriert habe.

Mit den Begriffen “Inverter-Clipping” und “Mppt-Throtteling” kann ich ehrlich gesagt nichts anfangen.

Ich nutze Home Assistant, der nativ auf einem Mini PC läuft (ohne Proxmox).

Hallo @Rainman67

vielen Dank für deine schnelle Antwort! Selbstgebaute Karten sind wirklich toll, und ich habe großen Respekt vor jedem der sich die Mühe macht. Allerdings ist es so, dass nicht alle auf die korrekten DB-Werte zugreifen, ich nicht weiß woher die Werte kommen.
Bei der Fehlersuche, ist es daher wirklich wichtig das ich die original Werte von SFML sehe (Prognose vs IST) Du findest sie an vielen Stellen in Stats zum Beipiel hier:

Bitte lass dich nicht von einer abweichenden Ansicht des Screenshots irritieren, das ist bereits eine Fortgschrittenene Version die auch den Verlust durch MPPT-Throtteling ausgibt.

MPPT-Throtteling = Wenn Du Nulleinspeisung angeklickt hast
Inverter Clipping = Wenn Du ein maximale Einspeiseleistung angegeben hast - was nur in sehr seltenen Fällen wirklich nötig ist

Okay, alles klar. Hier ein Screenshot der Wochenübersicht:

Ich habe weder Nulleinspeisung angeklickt, noch eine maximal Einspeiseleistung.

Nachtrag: wenn die für heute, morgen und übermorgen vorhergesagten Werte so bleiben, dann werden auch da wieder sehr große Abweichungen erzielt werden.

@Rainman67

Alles klar, dass hilft mit schon einmal weiter! Also die Prognose ist nicht stabil, sondern schwankt sehr stark. Alles im Bereich von 0 - 15 % Abweichung ist mehr als gut.. dazu habe ich einen ausführlichen Artikel geschrieben. Alles über 20% deutet auf ein Problem hin (wie bei Dir zu sehen).
Wichtig Du kannst nicht SolCast mit SFML vergleichen, das habe ich auch in dem Artikel beschrieben - wo die Unterschiede liegen.

Also lass uns mal ein wenig tiefer eintauchen, wass bei Dir ein Problem sein könnte. Kannst Du mir dazu bitte das LOG von SFML (per PN) schicken? Du findest es unter config/solar_forecast_ml/logs - bitte nicht hier öffenltich im Chat

@tbb

Ich habe es mir nun zum wiederholten Male im Code angesehen, offensichtlich haben die Core-Änderungen nicht das gewünschte Ergebniss gebracht. Im kommenden Release habe ich noch einmal nachgeschärft. Sollte das Problem dann noch immer bestenen, müssen wir tiefer in deine Konfiguration einsteigen.

Hallo @alteMade (Ralf)

Ich habe mir die “Buckelwal” Problematik noch einmal im Code angesehen und auch mit Timmy gesprochen :slight_smile:
Es ist ein Phänomen, dass ich bisher noch nicht klar eingrenzen konnte. Aktuell schaut es danach aus, dass es mehr ein Darstellungsfehler ist, dessen Grund ich noch nicht verifizieren konnte / eindeutig belegen. - Besonders, da es nur vereinzelnt auftritt und mir nicht genügend Daten vorliegen um es klar einzugrenzen. Es ist die berühmte Suche nach der Nadel im Heuhaufen. Bitte etwas Geduld ich habe es auf dem Zettel, aber bin noch keinen Schritt weiter.

Erster Ansatz (Test) Rand-Nullen nicht als echte Datenpunkte setzen.. ob das die finale Endlösung ist, kann ich nicht 100% abschätzen.

2 „Gefällt mir“

Super, vielen Dank. Ich werde mich melden, ob das Update das Problem behoben hat :+1:t3:

Alles gut, ich sehe das auch nicht als Kriegsentscheidend an - es sei denn so krass wie zuletzt :slight_smile:
Wenn ich dir bei der Suche helfen kann, sag bitte Bescheid.

Ich wollte mir mal einen ApexChart erstellen, der die Werte aus der hourly_predictions zu den von fsml Tatsächlichen Werten und Vorhersagen aufzeigt. Ich verspreche mir davon eine bessere Übersicht über die ermittelten Werte TFS, AI, Phsics, LSTM und Ridge und wie die sich auswirken. - Auch in Bezug auf schlechtere Genauigkeiten. Du zeigst die Werte ja bereits im Popup des Graphen an, aber ich würde das gerne mal im Zeitstrahl sehen.

Könnte das was bringen?

Nur leider komme ich diese Woche kaum dazu - Rentner haben nie Zeit, ich habe das auch immer angezweifelt…

Gruß Ralf

1 „Gefällt mir“

@alteMade

Prinzipiell ist es eine gute Idee, aber die Gewichtung der einzelnen Prognose-Layer ist pro Panegruppe, pro Stunde unterschiedlich. Daher ist das nicht so einfach umzusetzen.
Auch darf man nicht vergessen, dass z.B. die TFS-Werte (wie auch alle anderen) RAW-Werte ohne jedwede Anpassung sind. Daher ist es eher zweifelthaft was es bringt diese anzuzeigen.
Ein seperates DB-Feld für die " auf die Anlage und Örtlichkeit" angepassten Layer gibt es nicht.
Dieses einzuführen, würde durch die Berechnung vermutlich für einen Großteil der Nutzersysteme überlassten (einzelne Berechnung pro Layer / Gruppe / Stunde/..) daher ist der Gesamtgraph auch nur eine P50 Quantille und nicht die exakte Darstellung der Werte, das würde nicht funktioineren!

Daher.. ehrliche Tipp: Lass es und spare Dir die Mühe, das Ergebniss ist eher zweifelhaft und keine belastbare Aussage..

Aber ein BUG ist das nicht.. daher hier etwas “falsch” :wink:

1 „Gefällt mir“

Moin aus dem Norden @Tom-HA
ich habe mir das “Timmy-Buggel”-Problem mal bei mir angesehen. Wie du ja weißt nutze ich zur Visualisierung nicht die SFML-Stats. Du schreibst, dass es nach einem Darstellungsproblem ausschaut. Dieses dürfte dann doch aber nur in SFML-Stats auftreten - oder?

Hier mal eine chronologische Reihenfolge:
22.04.

23.04


(morgentliche Verschiebung auf Grund von hartnäckigem Nebel)

23.04. 20:00 Uhr … Installation von TFS

INFO:     Started server process [7]
INFO:     Waiting for application startup.
2026-04-23T20:07:25.507818Z [info     ] tfs_bootstrap                  codename=Phoenix state_dir=/config/toorox_foresight_ha version=20.8.0
2026-04-23T20:07:25.573061Z [info     ] timezone_from_supervisor       timezone=Europe/Berlin
2026-04-23T20:07:25.586087Z [info     ] state_db_apply_migration       description='Initial schema — forecasts, weights, baseline cache, training history' version=1
2026-04-23T20:07:25.589894Z [info     ] state_db_schema_ready          version=1
2026-04-23T20:07:25.590357Z [info     ] state_db_connected             path=/config/toorox_foresight_ha/tfs.db
2026-04-23T20:07:25.607324Z [info     ] runtime_context_resolved       latitude=53.99432889948704 location_source=sfml longitude=11.642523854120773 panel_group_source=sfml panel_groups=1
2026-04-23T20:07:25.608493Z [info     ] weather_blender_initialized    rows=0
2026-04-23T20:07:26.386290Z [info     ] base_model_loaded              path=/app/models/base/TFS-V2_pretrain_best.safetensors.enc
2026-04-23T20:07:26.386755Z [info     ] lora_not_applied               instance=default status=missing_refinetune_pending
2026-04-23T20:07:26.392733Z [info     ] startup_notification           adapter_path=/config/toorox_foresight_ha/lora/lora_default.safetensors adapter_status=missing_refinetune_pending base_model_hash=9f032a4b93da1794 base_model_path=/app/models/base/TFS-V2_pretrain_best.safetensors.enc codename=Phoenix panel_groups=1 version=20.8.0
2026-04-23T20:07:26.393644Z [info     ] forecast_job_registered        kind=fixed spec=00:30
2026-04-23T20:07:26.473834Z [info     ] forecast_job_registered        kind=solar_dynamic next_run_local=2026-04-24T05:07:17.024079+02:00 next_run_utc=2026-04-24T03:07:17.024079+00:00 spec=sunrise-45
2026-04-23T20:07:26.474509Z [info     ] finetune_job_registered        at=23:30 timezone=Europe/Berlin
2026-04-23T20:07:26.475781Z [info     ] scheduler_started              timezone=Europe/Berlin
2026-04-23T20:07:26.476213Z [info     ] startup_refinetune_queued      adapter_status=missing_refinetune_pending base_hash_adapter=None base_hash_current=9f032a4b93da1794 requested_at=2026-04-23T20:07:26.476130+00:00
2026-04-23T20:07:26.476458Z [info     ] startup_notification_refinetune reason=queued status=queued
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8780 (Press CTRL+C to quit)
2026-04-23T20:07:26.599805Z [info     ] finetune_dataset_building      actuals_count=1096 degradation_count=1464 groups=1 max_samples=200 step_hours=6 weather_count=1131
2026-04-23T20:25:20.784258Z [info     ] finetune_dataset_complete      total_samples=0 valid_ratio=0/200
2026-04-23T20:25:20.786335Z [info     ] finetune_dataset_ready         samples=0
2026-04-23T20:25:20.786678Z [warning  ] finetune_skip_too_few_samples  samples=0
2026-04-23T20:32:53.920008Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-04-23T20:32:57.861040Z [info     ] forecast_complete              groups=1 horizon=72h lora=missing_refinetune_pending p10=24.6kWh p50=26.2kWh p90=27.3kWh
2026-04-23T21:30:00.087009Z [info     ] finetune_dataset_building      actuals_count=1096 degradation_count=1464 groups=1 max_samples=200 step_hours=6 weather_count=1131
2026-04-23T21:49:43.266633Z [info     ] finetune_dataset_complete      total_samples=0 valid_ratio=0/200
2026-04-23T21:49:43.267750Z [info     ] finetune_dataset_ready         samples=0
2026-04-23T21:49:43.267937Z [warning  ] finetune_skip_too_few_samples  samples=0
2026-04-23T22:30:21.186134Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-04-23T22:30:25.240162Z [info     ] forecast_complete              groups=1 horizon=72h lora=missing_refinetune_pending p10=26.4kWh p50=27.7kWh p90=28.5kWh
2026-04-23T22:30:25.240984Z [info     ] scheduled_forecast_complete    lora=missing_refinetune_pending total_p50=27.6503
2026-04-24T03:07:17.840649Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-04-24T03:07:21.712426Z [info     ] forecast_complete              groups=1 horizon=72h lora=missing_refinetune_pending p10=22.4kWh p50=24.4kWh p90=26.0kWh
2026-04-24T03:07:21.713564Z [info     ] scheduled_forecast_complete    lora=missing_refinetune_pending total_p50=24.4135
2026-04-24T03:07:21.763992Z [info     ] forecast_job_registered        kind=solar_dynamic next_run_local=2026-04-25T05:05:04.725422+02:00 next_run_utc=2026-04-25T03:05:04.725422+00:00 spec=sunrise-45
2026-04-24T09:32:31.912546Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-04-24T09:32:35.919900Z [info     ] forecast_complete              groups=1 horizon=72h lora=missing_refinetune_pending p10=22.1kWh p50=24.0kWh p90=25.6kWh
2026-04-24T15:32:48.914527Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-04-24T15:32:53.087406Z [info     ] forecast_complete              groups=1 horizon=72h lora=missing_refinetune_pending p10=23.0kWh p50=24.9kWh p90=26.4kWh

24.04.

25.04.

26.04.

27.04.

Gesamt

meine Beobachtung:
Bis 23.04. (also vor Installation TFS) war die Prognose ziemlich genau und steigend. Ab 24.04. ist eine kontinuierliche Abnahme der Vorhersagegenauigkeit zu erkennen.
22.04. … 79,13%
23.04. … 79,29%
24.04. … 79,06%
25.04. … 79.02%
26.04. … 78,58%
27.04. … 78.01%
Auch hatte ich den Eindruck, dass bis zum 23.04. SFML sogar das Einsetzen der Nulleinspeisung berücksichtigte (Batterien voll geladen - Abnahme der tatsächlichen Erzeugung). Dies ist in den Graphen gut erkennbar.
Nach der TFS-Installation, ab 24.04. ist das nicht mehr so.

Es drängt sich also der Verdacht auf, dass “Timmy” etwas mit der TFS-Installation zu tun hat.

Vielleicht hilft meine Beobachtung ja bei der Fehlereingrenzung.
DB kann ich zusenden … einfach melden wenn nötig

Gruß Schwippser