IntegraChat / HF_SPACES_SUMMARY.md
nothingworry's picture
Deploy to HF Spaces
916e12b

A newer version of the Gradio SDK is available: 6.1.0

Upgrade

βœ… Hugging Face Spaces Deployment - Complete!

Your IntegraChat project is now ready to deploy to Hugging Face Spaces! Here's what has been created:

πŸ“¦ Files Created

1. Dockerfile βœ…

  • Multi-service Docker container
  • Runs MCP server, FastAPI backend, and Gradio UI
  • Includes health checks and service coordination
  • Optimized for Hugging Face Spaces

2. .dockerignore βœ…

  • Excludes venv/, .env, and other unnecessary files
  • Reduces build size and prevents secret leaks

3. README_HF_SPACES.md βœ…

  • Optimized README for Hugging Face Spaces
  • Includes Space metadata (emoji, colors, SDK type)
  • Quick start guide and feature overview

4. DEPLOY_HF_SPACES.md βœ…

  • Complete step-by-step deployment guide
  • Troubleshooting section
  • Environment variable configuration
  • Best practices

πŸš€ Quick Deployment Steps

  1. Create Space: Go to huggingface.co/new-space

    • Choose Docker as SDK
    • Set hardware (CPU basic for testing, upgrade for production)
  2. Push Code:

    git init
    git remote add hf https://huggingface.co/spaces/<username>/<space-name>
    git add Dockerfile .dockerignore README_HF_SPACES.md requirements.txt app.py env.example LICENSE README.md assets/ backend/ scripts/
    git commit -m "Deploy to HF Spaces"
    git push hf main
    
  3. Configure Secrets: In Space Settings β†’ Repository secrets, add:

    • POSTGRESQL_URL
    • OLLAMA_URL (or GROQ_API_KEY)
    • OLLAMA_MODEL
    • Optional: SUPABASE_URL, SUPABASE_SERVICE_KEY, etc.
  4. Wait for Build: Monitor build progress in the Logs tab (5-10 minutes)

  5. Access Your Space: https://huggingface.co/spaces/<username>/<space-name>

πŸ—οΈ Architecture in Docker

The Dockerfile runs three services:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚         Docker Container            β”‚
β”‚                                     β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                  β”‚
β”‚  β”‚ MCP Server   β”‚  Port 8900       β”‚
β”‚  β”‚ (Background) β”‚                   β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                   β”‚
β”‚                                     β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                  β”‚
β”‚  β”‚ FastAPI      β”‚  Port 8000       β”‚
β”‚  β”‚ (Background) β”‚                   β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                   β”‚
β”‚                                     β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                  β”‚
β”‚  β”‚ Gradio UI    β”‚  Port 7860       β”‚
β”‚  β”‚ (Foreground) β”‚  ← Main Entry    β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“‹ What's Included

βœ… Dockerfile - Production-ready multi-service container
βœ… .dockerignore - Excludes unnecessary files
βœ… README_HF_SPACES.md - Space-optimized documentation
βœ… DEPLOY_HF_SPACES.md - Complete deployment guide
βœ… Health checks - Service readiness verification
βœ… Error handling - Graceful service startup
βœ… Environment variables - Configurable via HF Space settings

πŸ”§ Configuration

All configuration is done via environment variables in Hugging Face Space settings:

Required

  • POSTGRESQL_URL - Database connection
  • OLLAMA_URL + OLLAMA_MODEL - OR GROQ_API_KEY

Optional

  • SUPABASE_URL + SUPABASE_SERVICE_KEY - Production storage
  • GOOGLE_SEARCH_API_KEY + GOOGLE_SEARCH_CX_ID - Web search
  • MCP_PORT, API_PORT - Service ports (defaults work)

πŸ“š Next Steps

  1. Review Files: Check all created files match your needs
  2. Test Locally: Build Docker image locally to test:
    docker build -t integrachat .
    docker run -p 7860:7860 -p 8000:8000 -p 8900:8900 integrachat
    
  3. Deploy: Follow steps in DEPLOY_HF_SPACES.md
  4. Monitor: Check logs and analytics after deployment

🎯 Key Features

  • βœ… Multi-service orchestration - All services run in one container
  • βœ… Health checks - Services wait for each other to be ready
  • βœ… Error handling - Graceful failures and logging
  • βœ… Production-ready - Optimized for Hugging Face Spaces
  • βœ… Configurable - All settings via environment variables

πŸ’‘ Tips

  1. First Build: May take 10-15 minutes (downloads dependencies)
  2. Subsequent Builds: Faster (cached layers)
  3. Logs: Check Logs tab for detailed startup information
  4. Database: Ensure PostgreSQL is accessible from HF servers
  5. LLM: Consider Groq API for cloud-based LLM (no local server needed)

πŸ†˜ Need Help?

  • Check DEPLOY_HF_SPACES.md for detailed troubleshooting
  • Review Dockerfile comments for service configuration
  • Check Hugging Face Spaces documentation for platform-specific issues

Your project is ready to deploy! πŸš€

Follow the steps in DEPLOY_HF_SPACES.md to get started.