Initial commit: FaceFusion REST API

FastAPI wrapper around FaceFusion v3.5.3 submodule with:
- Sync and async (job-based) processing endpoints
- FaceFusion bridge with manual key registration and Lock-serialized processing
- Multi-target Dockerfile (CPU + CUDA GPU)
- Docker Compose configs for dev, prod-cpu, and prod-gpu
- Gitea CI/CD workflow with dual image builds
- All 11 FaceFusion processors supported via options API

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-16 12:58:33 +01:00
commit 800edc08ea
31 changed files with 1784 additions and 0 deletions

31
docker-compose.gpu.yml Normal file
View File

@@ -0,0 +1,31 @@
services:
api:
image: dev.pivoine.art/valknar/facefusion-api:latest
ports:
- "8000:8000"
volumes:
- uploads:/data/uploads
- outputs:/data/outputs
- models:/data/models
- temp:/data/temp
- jobs:/data/jobs
environment:
- FF_EXECUTION_PROVIDERS=["cuda","cpu"]
- FF_EXECUTION_THREAD_COUNT=4
- FF_VIDEO_MEMORY_STRATEGY=moderate
- FF_LOG_LEVEL=info
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
restart: unless-stopped
volumes:
uploads:
outputs:
models:
temp:
jobs: