FestivAI is a multi-agent AI application that generates itineraries to global festivals and countries from users' abstract and concrete prompts.
Watch the complete demo and walkthrough of FestivAI:
- Google Cloud SDK
- Google Cloud Project (GCP) credits
- Python 3.8+
- Node.js
First, configure your Google Cloud environment:
# List available projects
gcloud projects list
# Set the project ID
gcloud config set project festivai-466417
# Enable required APIs
gcloud services enable aiplatform.googleapis.com
gcloud services enable run.googleapis.com
gcloud services enable cloudbuild.googleapis.com
gcloud services enable containerregistry.googleapis.comSet up authentication for your local environment:
# Authenticate with Google Cloud
gcloud auth login
# Set up application default credentials
gcloud auth application-default loginCreate a virtual environment and install dependencies:
# Create virtual environment
python -m venv venv
# Activate virtual environment
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate
# Install dependencies
pip install -r requirements.txtTo run the application locally:
# Set environment variables
export GOOGLE_CLOUD_PROJECT=festivai-466417
# Run the application
python main.pyDeploy to Google Cloud Run:
# Build and deploy using Cloud Build
gcloud builds submit --tag gcr.io/festivai-466417/festivai
# Deploy to Cloud Run
gcloud run deploy festivai \
--image gcr.io/festivai-466417/festivai \
--platform managed \
--region us-central1 \
--allow-unauthenticated- AI-Powered Content Generation: Create personalized festival greetings using advanced AI models
- Multi-Format Support: Generate content in various formats (text, images, cards)
- Scalable Architecture: Built on Google Cloud for automatic scaling
- Real-time Processing: Fast content generation and delivery
- Customizable Templates: Support for various festival themes and occasions
The application provides RESTful API endpoints for:
/generate- Generate personalized festival content/health- Health check endpoint/templates- List available templates/customize- Customize existing templates
Key configuration parameters:
PROJECT_ID: Google Cloud Project IDREGION: Deployment region (default: us-central1)MODEL_NAME: AI model identifierMAX_CONTENT_LENGTH: Maximum content length for generation
Required environment variables:
GOOGLE_CLOUD_PROJECT=festivai-466417
GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account-key.json
MODEL_ENDPOINT=your-model-endpoint
API_KEY=your-api-keyThe application includes:
- Cloud Monitoring integration for performance metrics
- Cloud Logging for application logs
- Error tracking and alerting
- Custom metrics for content generation statistics
- Python
- React
- TypeScript
- Gemini 2.5 Pro
- Gemma 3
- GCP (Cloud Run)
- NVIDIA L4 GPU

