feat(flux): HF-Token in Diagnostic statt .env
Passwort-Feld in der FLUX-Section, mit Show/Hide-Toggle und kurzem Hinweis-Link zu den HuggingFace-Schritten (Lizenz-Agree + Token-Erzeugung). Wert wird in voice_config.json persistiert und per config-Broadcast an die flux-bridge gepusht; dort vor jedem from_pretrained als HF_TOKEN + HUGGING_FACE_HUB_TOKEN env gesetzt. HF_TOKEN aus .env.example + docker-compose.yml entfernt. Auch FLUX_MODEL aus compose raus — Default-Modell kommt jetzt komplett aus Diagnostic. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
+7
-14
@@ -10,23 +10,16 @@ RVS_TLS=true
|
||||
RVS_TLS_FALLBACK=true
|
||||
RVS_TOKEN=dein_token_hier
|
||||
|
||||
# HuggingFace-Token — NUR noetig wenn Du FLUX.1-dev nutzen willst.
|
||||
# FLUX.1-dev ist auf HuggingFace 'gated' (= Du musst dort auf der
|
||||
# Modell-Seite einmalig "Agree" klicken und beim Download wird Dein
|
||||
# Login geprueft). Reine Lizenz-Sache — die Inference laeuft danach
|
||||
# komplett lokal, kein Netz, keine Telemetrie.
|
||||
# HuggingFace-Token + Default-Modell werden in ARIA Diagnostic verwaltet
|
||||
# (Section "FLUX Bildgenerierung") und per RVS an die flux-bridge gepusht.
|
||||
# Hier nichts noetig.
|
||||
#
|
||||
# Wenn Du nur FLUX.1-schnell nutzt (Apache-2.0, kein Gate), kannst Du
|
||||
# das Feld leer lassen. Falls Du spaeter dev aktivierst:
|
||||
# Token-Pflicht NUR fuer FLUX.1-dev (gated). Workflow falls Du dev nutzen
|
||||
# willst:
|
||||
# 1) https://huggingface.co/black-forest-labs/FLUX.1-dev → "Agree"
|
||||
# 2) https://huggingface.co/settings/tokens → "Read"-Token erzeugen
|
||||
# 3) Hier eintragen + docker compose restart flux-bridge
|
||||
HF_TOKEN=
|
||||
|
||||
# Welches Modell beim Startup geladen wird, steuert ARIA selbst:
|
||||
# Diagnostic > FLUX > Default-Modell. Solange dort nichts gewaehlt ist,
|
||||
# laedt die flux-bridge erstmal nichts — sie wartet auf den ersten
|
||||
# Render-Request oder einen Diagnostic-config-Broadcast.
|
||||
# 3) Token in Diagnostic > FLUX Bildgenerierung > HuggingFace-Token
|
||||
# FLUX.1-schnell (Apache-2.0) laeuft ohne Token.
|
||||
|
||||
# Offloading-Strategie (VRAM-Steuerung):
|
||||
# model — Default. Komponentenweise CPU-Offload, gut fuer 12 GB Karten.
|
||||
|
||||
+13
-2
@@ -509,8 +509,19 @@ async def run_loop(runner: FluxRunner) -> None:
|
||||
await _flux_queue.put(payload)
|
||||
elif mtype == "config":
|
||||
# Diagnostic-Broadcast (oder aria-bridge nach Reconnect).
|
||||
# Wir interessieren uns nur fuer fluxDefaultModel — die
|
||||
# Keywords nutzt das Brain, nicht wir.
|
||||
# HuggingFace-Token MUSS vor dem Modell-Swap gesetzt sein,
|
||||
# weil FluxPipeline.from_pretrained den Token aus der env
|
||||
# liest. Reihenfolge im selben Tick gewaehrleistet das.
|
||||
if "huggingfaceToken" in payload:
|
||||
tok = (payload.get("huggingfaceToken") or "").strip()
|
||||
if tok:
|
||||
os.environ["HF_TOKEN"] = tok
|
||||
os.environ["HUGGING_FACE_HUB_TOKEN"] = tok
|
||||
logger.info("[config] HF-Token gesetzt (len=%d)", len(tok))
|
||||
else:
|
||||
os.environ.pop("HF_TOKEN", None)
|
||||
os.environ.pop("HUGGING_FACE_HUB_TOKEN", None)
|
||||
logger.info("[config] HF-Token entfernt (leerer Wert)")
|
||||
tag = (payload.get("fluxDefaultModel") or "").strip()
|
||||
if tag:
|
||||
asyncio.create_task(_apply_default_change(tag))
|
||||
|
||||
@@ -19,16 +19,13 @@
|
||||
|
||||
services:
|
||||
|
||||
# ─── FLUX.1-dev Bildgenerierung (GPU) ─────────
|
||||
# Empfaengt flux_request via RVS, rendert PNG mit FLUX.1-dev (12B Params)
|
||||
# ─── FLUX Bildgenerierung (GPU) ─────────
|
||||
# Empfaengt flux_request via RVS, rendert PNG mit FLUX (12B Params)
|
||||
# und broadcastet flux_response mit base64-PNG zurueck. aria-bridge speichert
|
||||
# die Datei nach /shared/uploads/ und ARIA referenziert sie via [FILE:]-Marker.
|
||||
#
|
||||
# Modell-Wahl per FLUX_MODEL:
|
||||
# - black-forest-labs/FLUX.1-dev (Default, 28 Steps, non-commercial)
|
||||
# - black-forest-labs/FLUX.1-schnell (4 Steps, Apache-2.0, schneller)
|
||||
# HuggingFace-Token noetig fuer FLUX.1-dev — vorher `huggingface-cli login`
|
||||
# oder HF_TOKEN in .env setzen, sonst 403 beim ersten Download.
|
||||
# Modell-Wahl + HuggingFace-Token werden in ARIA Diagnostic eingestellt
|
||||
# ("FLUX Bildgenerierung") und per RVS gepusht — hier nichts noetig.
|
||||
flux-bridge:
|
||||
build: .
|
||||
container_name: aria-flux-bridge
|
||||
@@ -45,13 +42,13 @@ services:
|
||||
- RVS_TLS=${RVS_TLS:-true}
|
||||
- RVS_TLS_FALLBACK=${RVS_TLS_FALLBACK:-true}
|
||||
- RVS_TOKEN=${RVS_TOKEN}
|
||||
- FLUX_MODEL=${FLUX_MODEL:-black-forest-labs/FLUX.1-dev}
|
||||
# Hardware-Bootstrap (Diagnostic-Settings uebersteuern alles andere
|
||||
# zur Laufzeit — diese envs sind nur Edge-Case-Fallbacks).
|
||||
- FLUX_DEVICE=${FLUX_DEVICE:-cuda}
|
||||
- FLUX_DTYPE=${FLUX_DTYPE:-bfloat16}
|
||||
- FLUX_OFFLOAD=${FLUX_OFFLOAD:-model}
|
||||
- FLUX_MAX_STEPS=${FLUX_MAX_STEPS:-50}
|
||||
- FLUX_MAX_DIM=${FLUX_MAX_DIM:-1536}
|
||||
- HF_TOKEN=${HF_TOKEN:-} # FLUX.1-dev braucht Login-Token
|
||||
volumes:
|
||||
- ./hf-cache:/root/.cache/huggingface # Bind-Mount. FLUX.1-dev ~24 GB on disk!
|
||||
# Wenn flux auf der gleichen Maschine
|
||||
|
||||
Reference in New Issue
Block a user