TFS HA Solar Forecat ML 8 Head Transformer KI (App-Version)

@Tom-HA : kannst du kurz erläutern was das mit den “[warning ] finetune_skip_too_few_samples samples=0” auf sich hat und welche auswirkungen die meldung hat?

Ab wann hat er denn genug samples? Muss TFS nur lange genug daten sammeln? Ich dachte er bedient sich bei SFML und das läuft seit min Jan und hat über 800 samples…

TFS HA ist vortrainiert und hat eine große Datenbank. Ein Sample entsteht nur dann, wenn es von dem vortrainierten abweicht. - Ja sammelt selbst und greift auch auf die DB von SFML zu

Update ist raus.. bitte unbedingt die Hinweise beachten!

Wer möchte darf mir gern ein Geburtstags-Bier spendieren.. :slight_smile:

Buy Me a Coffee

Moin,
Update verlief ohne Probleme. (Geekom A5 mit AMD 7-5825U Ryzen)

Finetuning hat ab der eingestellten finetune_time 04:35 Uhr 15 Minuten gedauert. Das finetune_training selbst knapp 8 Minuten bei einer CPU-Auslastung von 59% und RAM-Nutzung von 40%.

2026-05-05T02:50:58.675565Z [info     ] finetune_complete              adapter=/config/toorox_foresight_ha/lora/lora_default.safetensors elapsed=473.0s epochs=20 val_loss=0.05694
2026-05-05T02:50:58.684928Z [info     ] correction_learning_done       epochs=20 latest_learning_date=2026-05-04 samples=120 status=success val_loss=0.05694
2026-05-05T02:50:58.939527Z [info     ] base_model_loaded              path=/app/models/base/TFS-V2_pretrain_best.safetensors.enc
2026-05-05T02:50:59.201935Z [info     ] lora_applied                   instance=default val_loss=0.056942
2026-05-05T02:50:59.210352Z [info     ] lora_reloaded_after_finetune   status=active
2026-05-05T02:50:59.210749Z [info     ] learning_job_complete          correction_status=success status=completed weather_status=success
2026-05-05T03:15:22.615242Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-05-05T03:15:24.490163Z [info     ] forecast_complete              groups=2 horizon=72h lora=active p10=18.2kWh p50=32.7kWh p90=36.7kWh
2026-05-05T03:15:24.490660Z [info     ] scheduled_forecast_complete    lora=active total_p50=32.6931
2026-05-05T03:15:24.517445Z [info     ] forecast_job_registered        kind=solar_dynamic next_run_local=2026-05-06T05:13:37.097622+02:00 next_run_utc=2026-05-06T03:13:37.097622+00:00 spec=sunrise-45

Prognose wurde in STATS angepasst.
kurz nach dem Finetuning:

aktuell:

Danke @Tom-HA und herzlichen Glückwunsch zum Geburtstag :vulcan_salute: :birthday_cake:

Ich habe das Gefühl, das TFS bei mir gar nicht richtig läuft.
Er sagt mir [warning ] correction_learning_skip_too_few_dataset_samples minimum=50 samples=0 status=skipped_too_few_dataset_samples

Hier das Log von gestern:

2026-05-06T02:30:00.011612Z [info     ] weather_learning_done          end_date=2026-05-05 samples=48 start_date=2026-05-05 status=success weights=7
2026-05-06T02:30:00.079077Z [info     ] finetune_dataset_building      actuals_count=1098 degradation_count=1464 end_date=2026-05-05 groups=2 max_samples=200 start_date=2026-03-06 step_hours=6 weather_count=1138
2026-05-06T02:43:09.414359Z [info     ] finetune_dataset_complete      total_samples=0 valid_ratio=0/200
2026-05-06T02:43:09.415275Z [info     ] finetune_dataset_ready         end_date=2026-05-05 samples=0
2026-05-06T02:43:09.416485Z [warning  ] correction_learning_skip_too_few_dataset_samples minimum=50 samples=0 status=skipped_too_few_dataset_samples
2026-05-06T02:43:09.416652Z [info     ] learning_job_complete          correction_status=skipped_too_few_dataset_samples status=completed weather_status=success
2026-05-06T03:11:31.592271Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-05-06T03:11:34.577365Z [info     ] forecast_complete              groups=2 horizon=72h lora=missing_refinetune_pending p10=50.3kWh p50=54.5kWh p90=58.8kWh
2026-05-06T03:11:34.577906Z [info     ] scheduled_forecast_complete    lora=missing_refinetune_pending total_p50=54.5305
2026-05-06T03:11:34.630070Z [info     ] forecast_job_registered        kind=solar_dynamic next_run_local=2026-05-07T05:09:48.319157+02:00 next_run_utc=2026-05-07T03:09:48.319157+00:00 spec=sunrise-45
2026-05-06T09:30:31.365734Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-05-06T09:30:34.270223Z [info     ] forecast_complete              groups=2 horizon=72h lora=missing_refinetune_pending p10=68.0kWh p50=71.5kWh p90=75.4kWh
2026-05-06T15:30:42.889309Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-05-06T15:30:45.922636Z [info     ] forecast_complete              groups=2 horizon=72h lora=missing_refinetune_pending p10=95.5kWh p50=101.0kWh p90=106.4kWh
2026-05-06T21:30:59.883857Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-05-06T21:31:05.135317Z [info     ] forecast_complete              groups=2 horizon=72h lora=missing_refinetune_pending p10=100.1kWh p50=107.3kWh p90=113.3kWh
2026-05-06T22:30:24.655932Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-05-06T22:30:27.873477Z [info     ] forecast_complete              groups=2 horizon=72h lora=missing_refinetune_pending p10=104.5kWh p50=111.4kWh p90=116.4kWh
2026-05-06T22:30:27.874027Z [info     ] scheduled_forecast_complete    lora=missing_refinetune_pending total_p50=111.4048
2026-05-07T02:30:00.011320Z [info     ] weather_learning_done          end_date=2026-05-06 samples=48 start_date=2026-05-06 status=success weights=14
2026-05-07T02:30:00.082849Z [info     ] finetune_dataset_building      actuals_count=1098 degradation_count=1464 end_date=2026-05-06 groups=2 max_samples=200 start_date=2026-03-07 step_hours=6 weather_count=1138
2026-05-07T02:43:52.049349Z [info     ] finetune_dataset_complete      total_samples=0 valid_ratio=0/200
2026-05-07T02:43:52.050342Z [info     ] finetune_dataset_ready         end_date=2026-05-06 samples=0
2026-05-07T02:43:52.051698Z [warning  ] correction_learning_skip_too_few_dataset_samples minimum=50 samples=0 status=skipped_too_few_dataset_samples
2026-05-07T02:43:52.051889Z [info     ] learning_job_complete          correction_status=skipped_too_few_dataset_samples status=completed weather_status=success
2026-05-07T03:09:48.610589Z [info     ] weather_fetch_complete         hours=72 sources=['open_meteo', 'brightsky']
2026-05-07T03:09:51.543867Z [info     ] forecast_complete              groups=2 horizon=72h lora=missing_refinetune_pending p10=94.2kWh p50=101.2kWh p90=108.2kWh
2026-05-07T03:09:51.544441Z [info     ] scheduled_forecast_complete    lora=missing_refinetune_pending total_p50=101.2418
2026-05-07T03:09:51.600890Z [info     ] forecast_job_registered        kind=solar_dynamic next_run_local=2026-05-08T05:08:06.960066+02:00 next_run_utc=2026-05-08T03:08:06.960066+00:00 spec=sunrise-45
1 „Gefällt mir“

Das selbe Phänomen beobachte ich auf meinem Testssystem, auf dem ich von ursprünglich einer Panelgruppe vor ein paar Tagen Einzelsensoren für alle 4 MPPTs gebaut habe, ohne alles (bisher gelernte) zu löschen. Ob das so eine gute Idee war, wird sich noch zeigen. :innocent: :see_no_evil_monkey:

Was mir aber im Bezug auf diese Problematik bezüglich TFS darüber hinaus aufgefallen ist: anschließend sind die Samples laut Log täglich um 4 weniger geworden, bis es irgendwann 0 erreicht hat.

TFS läuft bei dir sehr wahrscheinlich nicht komplett falsch hat aber ein Problem.
Die Wetter-Seite läuft, und auch die Vorhersagen werden erstellt. → alles okay und Gut!

Die Warnung bedeutet etwas anderes:

correction_learning_skip_too_few_dataset_samples

TFS wollte aus deinen bisherigen SFML DB lernen, hat dafür aber keine brauchbaren Trainingsdaten gefunden.
Wenn diese Daten fehlen, unvollständig sind oder in der Historie nicht sauber vorliegen, dann bleibt das Training bei 0 samples stehen und wird übersprungen.

Das passt auch zu deinem Log:

  • Wetter-Lernen läuft
  • Vorhersagen laufen
  • aber das eigentliche Korrektur-Lernen findet keine verwendbaren Daten
  • deshalb bleibt TFS im Zustand missing_refinetune_pending

Das bedeutet:
TFS läuft grundsätzlich, aber der persönliche Lerneffekt für deine Anlage ist aktuell im Status " Ich sammel Daten"

Mögliche Ursachen:

  1. Für die Panelgruppen fehlen passende Energiesensoren.
  2. Die Panelgruppen-Sensoren liefern nicht sauber genug.
  3. Es gibt zwar Gesamtdaten, aber keine verwertbare Historie pro Gruppe.
  4. Änderung an den Panelgruppen → Neu organisiert, mehr als 4, Sensoren geändert..

ABER: TFS HA funktioinert fundamental anders als SFML, daher ist das ÜBERHAUPT kein Problem.. einfach laufen lassen!

Du hast das Problem genau richtig umrissen… aber auch hier gilt: Einfach laufen lassen es ist KEIN Problem!

1 „Gefällt mir“
  1. Täglicher Energiesensor aus SFML von der 2. Konfigseite? - Ist korrekt und sauber
  2. Welche Sensoren gibt es den noch? An Power kann ich mich nicht erinnern
  3. Die Historiedaten sollten seit dem 17.02. vorhanden sein, kann ich über die Historischen Daten mittel Apex-Karte kontrollieren.
  4. Die Neuorganisation war am 17.02. von Total auf String1 und String2 aufgeteilt.

Ja, ich lasse einfach laufen, aber vielleicht helfen dir meine Anmerkungen.

Gruß Ralf

1 „Gefällt mir“

Habe die TFS HA gestern Abend installiert, ist ohne Probleme durchgelaufen und hat 31 Minuten (200 Samples und 20 Epochen) gedauert

  • Proxmox VM Home Assistant OS

  • Core 2026.4.4

  • Supervisor 2026.04.2

  • Operating System17.3

  • Frontend 20260325.8

  • x86 Intel N150

  • 10GB Arbeitsspeicher zugewiesen

  • NVMe Festplatte

1 „Gefällt mir“

So ähnlich sieht es bei mir auch aus.

@Fast seid wann sammelst du Daten?

Meine TFS Vorhersagen sind bisher immer recht unbrauchbar, da ist SFML deutlich besser. So sagt mit TFS oft eErzeugungen von über 50kwh bei mäßigem Wetter voraus bei was ich bei meiner 7,2kwp noch nie gesehen habe….

Hallo @Heatseeker
Ich habe es nun mehrfach gesagt und es steht auch in der Beschreibung: TFS HA ist KEINE Vorhersage! Es ist ein nackter Layer ohne jedwede Korrekturen!Er ist für schwierige Situationen…wird geblendet und ist eine gewichtete Korrektur-Guardrail!

Neben den Erklärungen hier, steht es auch auf Git, dass es keine Prognose ist..

@Heatseeker

Ich sammle Daten seit ca. mitte Februar mit SFML

Hallo Tom,

ich lese so bisschen zwischen den Zeilen eine gewisse Verärgerung heraus, was keinesfalls meine Absicht war.

Evtl erläuter ich dir einfach mal warum ich hier den Begriff “TFS Vorhersage” genutzt habe und wo evtl eine Quelle für Missverständnisse vorliegen könnte.

Zum wird in der Info selbst der Begriff forecast genutzt. z.B.:slight_smile:

TFS adds a learned forecast component on top of the existing deterministic and statistical forecast stack.

The runtime focuses on:

- robust short- and mid-range solar forecasting

- quantile output...

Auch ist der Output im Log Quantile in kwh und erscheinen dort ebenfalls hinter “forecast complete…”

Du schreibst, dass dieses Ergebnis als “gewichtete Korrektur-Guardrails” genutzt wird. Ich persönlich halte diesen Begriff für etwas ungünstig. Wenn es Guardrails im Sinne von Leitplanken sind, würde ich mir z.B. vorstellen, dass die p10 oder p90 quantile genutzt werden um den Lösungsraum von SFML einzugrenzen. (Evtl passiert dies aber auch noch irgendwo und ich hab es nur nicht gesehen)

Im log von SFML erkennt ich eher eine gewichtete Korrektur, wie du ja auch schriebst.indem der Output von TFS gewichtet in das ergebnis von SFML mit einfließt. Dies würde ich auch eher von einer “alternativen” vorhersage erwarten.

Auch wird im EOD die TFS Vorhersage und die SFML Vorhersage zur realen Erzeugung verglichen.

INFO - TFS vs SFML: TFS=16.57 kWh (60.8%), SFML=25.25 kWh (92.7%), IST=27.24 kWh → best=sfml

Deshalb halte ich es für schwierig hier jetzt nicht von einer art Vorhersage zu sprechen.

Was ich aber definitv ebenso sehe, ist, dass dieses TFS Ergebnis nicht ohne weitere “Verarbeitung” genutzt werden sollte, hätte aber gedacht, dass das Ergebnis eingentlich ein plausibles Ergebnis sein müsste welches für das prognostizierte Wetter innerhalb der Qantile passen sollte.

Etwas anderes habe ich eigentlich auch nicht sagen wollen und dies auch nicht weiter nutzten wollen sonder nur auf die meines erachtens große Diskrepanz zwischen der realen Erzeugung und der “Vorhersage” hinweisen welche auch aufgrund der bis jetzt noch nicht erfolgten finetunings (war das jetzt der richtige begriff?) evtl auftritt.

Viele Grüße

@Heatseeker
Nee, das war keinesfalls „ärgerlich“ gemeint! Danke, dass du es ansprichst – so kann ich das direkt gerade rücken.
Ich habe die letzten Tage und Nächte durchgemacht, um SFML und STATS so umzubauen, wie es sich viele gewünscht haben. Das Ganze war zeitkritisch und ziemlich intensiv, daher sind meine Antworten hier im Forum etwas kurz und knapp ausgefallen.

Sorry, falls das falsch rübergekommen ist!

2 „Gefällt mir“