Production-ready Docker container for deploying FIBOā (8B parameter JSON-native text-to-image AI model) on RunPod GPU cloud platform.
This container provides a complete Gradio web interface with three generation modes (Generate, Refine, Inspire) for professional-grade, controllable image synthesis using structured JSON prompts.
This Docker image is a minimal runtime container (~2GB base) that automatically installs FIBO and all dependencies at startup on RunPod's persistent storage. It includes:
1. Pull Image:
docker pull gemneye/fibo-runpod:latest
2. Configure in RunPod:
gemneye/fibo-runpod:latest/workspace (50GB-100GB persistent storage)7860/http (Gradio interface)HF_TOKEN=hf_xxxxx (REQUIRED - get from https://huggingface.co/settings/tokensā )GOOGLE_API_KEY=AIzaSyxxxxx (OPTIONAL - for Gemini VLM, otherwise uses local)GRADIO_SHARE=true (RECOMMENDED - creates stable gradio.live link)3. Launch & Access:
Running on public URL: https://xxxxx.gradio.liveGenerate Mode šØ - Create images from text:
Input: "A serene lake at sunset with mountains in the background"
Output: Generated image + Structured JSON prompt
Refine Mode ⨠- Modify existing images:
Input: Source image + "Make the sky more dramatic with clouds"
Output: Refined image + Updated JSON prompt
Inspire Mode š - Extract prompts from images:
Input: Upload reference image
Output: Structured JSON prompt describing the image
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Minimal Base Image (~2GB) ā
ā - CUDA 12.8.0 + cuDNN ā
ā - Ubuntu 24.04 LTS ā
ā - Entrypoint script only ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Runtime Installation
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā /workspace (RunPod Volume) ā
ā - Python 3.12 + PyTorch 2.8.0+ ā
ā - FIBO model + dependencies ā
ā - Cached models (~8GB) ā
ā - Generated images ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Launch
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Gradio Web Interface ā
ā - Port 7860 ā
ā - Three generation modes ā
ā - Real-time generation ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
FIBO is Bria AI's 8-billion parameter text-to-image generation model featuring:
This image is available as a pre-configured template on RunPod:
HF_TOKEN)docker pull gemneye/fibo-runpod:latest
| Variable | Description | Required | Example |
|---|---|---|---|
HF_TOKEN | Hugging Face access token for model downloads | Yes | hf_xxxxxxxxxxxxx |
How to get HF_TOKEN:
| Variable | Description | Default | Example |
|---|---|---|---|
GOOGLE_API_KEY | Google Gemini API key for faster VLM mode | None | AIzaSyxxxxx |
GRADIO_SERVER_NAME | Network interface to bind | 0.0.0.0 | 0.0.0.0 |
GRADIO_SERVER_PORT | Port for Gradio web interface | 7860 | 7860 |
GRADIO_SHARE | Enable gradio.live public link | true | true or false |
GRADIO_SHARE Note: RunPod's proxy service can be unreliable. Setting GRADIO_SHARE=true (default) creates a stable https://*.gradio.live URL for reliable access.
| Port | Protocol | Purpose |
|---|---|---|
7860 | HTTP | Gradio web interface |
| Path | Purpose | Recommended Size |
|---|---|---|
/workspace | Persistent storage for models, cache, outputs | 50GB - 100GB |
Persistence Strategy:
/workspace/.cache/huggingface//workspace/FIBO/.venv//workspace/FIBO/ (named by timestamp)/workspace/.fibo_installed1. Generate Mode šØ
2. Refine Mode āØ
3. Inspire Mode š
| Parameter | Type | Values/Range | Default |
|---|---|---|---|
| VLM Mode | Choice | gemini, local | gemini |
| Seed | Integer | Any integer | Random |
| Steps | Integer | 20-100 | 50 |
| Aspect Ratio | Choice | 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9 | 1:1 |
| Negative Prompt | Text | Any text | Empty |
| Guidance Scale | Float | 1.0-20.0 | 5.0 |
| Aspect Ratio | Resolution (WxH) | Use Case |
|---|---|---|
| 1:1 | 1024Ć1024 | Square (social media) |
| 16:9 | 1344Ć768 | Landscape (widescreen) |
| 9:16 | 768Ć1344 | Portrait (mobile) |
| 4:3 | 1152Ć896 | Classic landscape |
| 3:4 | 896Ć1152 | Classic portrait |
| 4:5 | 896Ć1088 | Instagram portrait |
| 5:4 | 1088Ć896 | Instagram landscape |
| 2:3 | 832Ć1248 | Tall portrait |
| 3:2 | 1248Ć832 | Wide landscape |
FIBO requires a GPU with at least 48GB of VRAM for inference.
| GPU Model | VRAM | Status | Notes |
|---|---|---|---|
| NVIDIA A100 80GB | 80GB | ā Optimal | Best performance, future-proof |
| NVIDIA A100 40GB | 40GB | ā ļø May work | Not officially tested - close to minimum |
| NVIDIA H100 | 80GB | ā Optimal | Fastest performance |
| RTX 6000 Ada | 48GB | ā Minimum | Meets minimum requirement |
| RTX A6000 | 48GB | ā Minimum | Meets minimum requirement |
| RTX 4090 | 24GB | ā Insufficient | Not enough VRAM |
| RTX 4080 | 16GB | ā Insufficient | Not enough VRAM |
| RTX 3090 | 24GB | ā Insufficient | Not enough VRAM |
Minimum:
Recommended:
Optimal:
| Metric | First Run | Subsequent Runs |
|---|---|---|
| Cold Start | 5-10 minutes | <30 seconds |
| Model Download | ~8GB (included in cold start) | Cached |
| Generate Mode | 30-120 seconds | 30-120 seconds |
| Refine Mode | 20-90 seconds | 20-90 seconds |
| Inspire Mode | 40-150 seconds | 40-150 seconds |
Note: First generation includes model loading time. Subsequent generations are faster.
The container automatically authenticates with Hugging Face using your HF_TOKEN:
hf auth login --token $HF_TOKEN --add-to-git-credential
Gated Model Access: FIBO is a gated model. You must:
/root/.cache/huggingface/ (inside container only)Via Template:
HF_TOKEN)Via Manual Pod:
Image: gemneye/fibo-runpod:latest
GPU: A100 40GB or better (48GB+ VRAM required)
Volume: /workspace (50GB+)
Ports: 7860/http
Environment Variables:
HF_TOKEN: hf_xxxxxxxxxxxxx
GOOGLE_API_KEY: AIzaSyxxxxx (optional)
GRADIO_SHARE: true
Prerequisites: NVIDIA GPU with 48GB+ VRAM
docker run -d \
--gpus all \
-p 7860:7860 \
-v $(pwd)/workspace:/workspace \
-e HF_TOKEN=hf_xxxxxxxxxxxxx \
-e GOOGLE_API_KEY=AIzaSyxxxxx \
-e GRADIO_SHARE=true \
gemneye/fibo-runpod:latest
version: '3.8'
services:
fibo:
image: gemneye/fibo-runpod:latest
ports:
- "7860:7860"
volumes:
- ./workspace:/workspace
environment:
HF_TOKEN: hf_xxxxxxxxxxxxx
GOOGLE_API_KEY: AIzaSyxxxxx
GRADIO_SHARE: "true"
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
Check pod logs for the public share link:
š Launching FIBO Gradio application...
Running on local URL: http://0.0.0.0:7860
Running on public URL: https://abc123xyz.gradio.live
Use the https://*.gradio.live URL for reliable access.
If GRADIO_SHARE=false, access via RunPod's port 7860 proxy:
Note: RunPod proxy can be unreliable. Share link is recommended.
Issue: Insufficient GPU memory / CUDA out of memory
# Solution: Use GPU with 48GB+ VRAM
# Minimum supported: RTX 6000 Ada, RTX A6000, A100 40GB
# Recommended: A100 80GB, H100
# The model requires 48GB VRAM - smaller GPUs will not work
Issue: Container exits immediately
# Solution: Check HF_TOKEN is set correctly
docker logs <container_id>
# Look for: "ā ļø WARNING: HF_TOKEN not set"
Issue: Model download fails
# Solution: Verify token permissions and model license acceptance
# 1. Check token at https://huggingface.co/settings/tokens
# 2. Accept license at https://huggingface.co/briaai/FIBO
Issue: Gradio UI not accessible via RunPod proxy
# Solution: Use Gradio share link instead
# 1. Check pod logs for https://*.gradio.live URL
# 2. Ensure GRADIO_SHARE=true in environment variables
Issue: Generation takes too long (>5 minutes)
# This triggers timeout - check:
# 1. GPU is properly detected: nvidia-smi
# 2. GPU has 48GB+ VRAM: nvidia-smi --query-gpu=memory.total --format=csv
# 3. CUDA version compatible: 12.8.0+
# 4. Reduce steps parameter (try 30 instead of 50)
# Check if service is running
curl http://localhost:7860/
# Check GPU availability and VRAM
docker exec <container_id> nvidia-smi
# Verify GPU has sufficient memory
docker exec <container_id> nvidia-smi --query-gpu=memory.total --format=csv
# Should show: 48GB or more
# Check Python version
docker exec <container_id> python3 --version
# Should output: Python 3.12.x
# Check HF authentication
docker exec <container_id> hf whoami
nvidia/cuda:12.8.0-cudnn-runtime-ubuntu24.04Minimal Runtime Installation:
/workspace/ # Persistent volume (RunPod mount)
āāā .fibo_installed # Installation marker
āāā .cache/ # Cached downloads
ā āāā huggingface/ # Model weights
ā ā āāā hub/
ā ā āāā models--briaai--FIBO/
ā āāā pip/ # Python packages
āāā FIBO/ # Cloned repository
ā āāā .venv/ # Virtual environment
ā āāā app.py # Gradio interface (copied from image)
ā āāā generate.py # FIBO generation script
ā āāā pyproject.toml # Dependencies
āāā outputs/ # Generated images (optional)
FIBO Model: Non-commercial use only. See Bria AI FIBO Licenseā
Container Code: This Docker container implementation is provided as-is for use with the FIBO model.
For issues with:
v1.1.0 (Current)
hf auth loginv1.0.0 (Initial)
ā ļø IMPORTANT: Requires GPU with 48GB+ VRAM | Available as RunPod Template | Built with ā¤ļø for the AI community
Content type
Image
Digest
sha256:1be4e856cā¦
Size
2.7 GB
Last updated
11 months ago
docker pull gemneye/fibo-runpod