Files
2026-07-24 21:37:03 +02:00

3.1 KiB

Nährwerte vervollständigen

Findet Zutaten, bei denen Eigenschaften fehlen, lässt die Lücken schätzen und schreibt sie nach Prüfung zurück.

Die drei Schritte

1 · Prüfen liest alle Zutaten und Eigenschaften und zeigt, wo was fehlt. Sortiert nach Rezeptzahl — eine Lücke bei „Zwiebel“ (18 Rezepte) wiegt schwerer als bei „Yuzukosho“ (0 Rezepte). Verändert nichts.

2 · Vorschlagen lässt ein Sprachmodell die fehlenden Werte je 100 g schätzen. Geht in Blöcken zu 20 Zutaten an OpenAI. Schreibt eine Vorschlagsdatei, in Tandoor passiert nichts.

3 · Übernehmen zeigt jeden Vorschlag mit Häkchen und änderbarem Wert. Erst „Trockenübung“, dann „Übernehmen“. Von jeder geänderten Zutat wird der Zustand vorher und nachher gesichert.

Was die Zahlen sind — und was nicht

Schätzungen eines Sprachmodells. Für Hausgebrauch und Größenordnung gedacht, keine Laboranalyse. Wer Nährwerte medizinisch braucht, prüft sie besser gegen eine echte Datenbank. Deshalb ist jeder Wert vor dem Schreiben editierbar.

Wie es mit Tandoor umgeht

  • Vorhandene Werte werden nie überschrieben (außer man hakt es ausdrücklich an).
  • Tandoor ersetzt beim PATCH die komplette properties-Liste. Das Tool schickt deshalb immer den vollständigen Bestand mit — sonst fiele weg, was schon da war.
  • Zutaten ohne Bezugsmenge bekommen sie mitgesetzt (Vorgabe: 100 g). Ohne die kann Tandoor keine Rezeptwerte rechnen.

Ohne Suite

export TANDOOR_URL=https://kitchen.example.de
export TANDOOR_TOKEN=...
export OPENAI_API_KEY=...

python3 plugins/tandoor-nutrition/tool/nutrition.py pruefen
python3 plugins/tandoor-nutrition/tool/nutrition.py vorschlagen --limit 20
python3 plugins/tandoor-nutrition/tool/nutrition.py uebernehmen \
    --vorschlag data/tandoor-nutrition/vorschlaege/<datei>.json --apply

Dateien

data/tandoor-nutrition/bericht/bericht.json     letzte Prüfung
data/tandoor-nutrition/bericht/luecken.csv      dieselbe als Tabelle
data/tandoor-nutrition/vorschlaege/<zeit>.json  Vorschläge
data/tandoor-nutrition/laeufe/<zeit>/           Sicherungen je Übernahme

Wenn „Vorschlagen“ nur „ohne Ergebnis“ liefert

Kommt ein Lauf mit 0 Vorschlägen und „N ohne Ergebnis“ zurück, ist meist die Modell-Abfrage grundsätzlich gescheitert, nicht an einzelnen Zutaten. Der erste Fehler steht jetzt in der Vorschlagsdatei (error) und im Übernehmen-Reiter.

Schnellster Weg zur Ursache: im Reiter „2 · Vorschlagen“ auf Verbindung testen (oder nutrition.py probe). Das macht eine einzelne Beispiel-Abfrage und zeigt den vollständigen Fehler. Häufige Ursachen:

  • Modellname nicht vorhanden oder nicht freigeschaltet → in den Einstellungen ein anderes Modell setzen (OPENAI_MODEL).
  • API-Key wird abgelehnt → OPENAI_API_KEY prüfen.
  • Guthaben/Kontingent erschöpft.
  • Aufruf-Parameter: Neuere Modelle lehnen temperature ungleich dem Standard oder response_format ab. Das Tool probiert solche Fälle inzwischen selbst mildere Varianten durch und merkt sich die funktionierende — hier ist also normalerweise nichts mehr zu tun.