mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 20:21:09 +02:00
feat(mana-image-gen): replace Mac flux2.c implementation with Windows GPU diffusers
The repo's mana-image-gen used to be a Mac Mini–only service built on flux2.c with hard MPS+arm64 platform checks. The actual production image-gen runs on the Windows GPU server (RTX 3090) using HuggingFace diffusers + PyTorch CUDA + FLUX.1-schnell — completely different code that lived only at C:\mana\services\mana-image-gen\ on the GPU box. This commit pulls the Windows implementation into the repo and deletes the Mac one, so there's exactly one mana-image-gen and its source of truth is git rather than one folder on one machine. Removed: - setup.sh — Mac-only flux2.c installer with hard arm64 platform check - app/main.py (Mac flux2.c subprocess wrapper version) - app/flux_service.py (Mac flux2.c subprocess wrapper version) Added (pulled from C:\mana\services\mana-image-gen\): - app/main.py — FastAPI endpoints (/generate, /images/*, /cleanup) - app/flux_service.py — diffusers FluxPipeline wrapper - app/api_auth.py — ApiKeyMiddleware (GPU_API_KEY) - app/vram_manager.py — shared VRAM accounting - service.pyw — Windows runner used by the ManaImageGen scheduled task Updated: - main.py PORT default from 3025 → 3023 to match the production reality (the service.pyw runner already binds 3023 explicitly via uvicorn.run, but the source default should match so direct uvicorn invocations and local tests don't pick the wrong port) - CLAUDE.md fully rewritten to describe the Windows/CUDA/diffusers stack - README.md trimmed to a pointer at CLAUDE.md + the public URL - .env.example written from scratch (didn't exist before — the service's .env on the GPU box was undocumented) The setup-image-gen.sh launchd installer in scripts/mac-mini/ and the actual Mac Mini deployment will be cleaned up in the next commit, along with the rest of the Mac-Mini AI service infrastructure.
This commit is contained in:
parent
b8e18b7f82
commit
c7b4388cec
9 changed files with 562 additions and 607 deletions
25
services/mana-image-gen/.env.example
Normal file
25
services/mana-image-gen/.env.example
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
# Mana Image Generation — Windows GPU server only
|
||||
|
||||
# Server
|
||||
PORT=3023
|
||||
|
||||
# Model
|
||||
IMAGE_MODEL_ID=black-forest-labs/FLUX.1-schnell
|
||||
|
||||
# Generation defaults
|
||||
DEFAULT_STEPS=4
|
||||
DEFAULT_WIDTH=1024
|
||||
DEFAULT_HEIGHT=1024
|
||||
MAX_STEPS=8
|
||||
GUIDANCE_SCALE=0.0
|
||||
GENERATION_TIMEOUT=120
|
||||
|
||||
# Output (where generated images are written)
|
||||
OUTPUT_DIR=C:\mana\services\mana-image-gen\outputs
|
||||
|
||||
# CORS
|
||||
CORS_ORIGINS=https://mana.how,https://chat.mana.how,http://localhost:5173
|
||||
|
||||
# Cross-service auth — enforced by ApiKeyMiddleware in app/api_auth.py.
|
||||
# Same key as mana-llm. Generate with: openssl rand -hex 32
|
||||
GPU_API_KEY=
|
||||
Loading…
Add table
Add a link
Reference in a new issue