Inspiration
Weather forecasting is often locked behind proprietary systems or black‑box models. We wanted to build something reproducible, transparent, and modular — a pipeline that anyone could retrain, validate, and deploy. Our focus was Cincinnati, where accurate hourly forecasts can make a real difference for students, commuters, and researchers.
What it does
Our system ingests years of hourly weather data from Open‑Meteo, retrains a machine learning model, and serves forecasts through a lightweight API. It also visualizes predictions, making it easy to compare model output against actual weather trends. The workflow is modular and restart‑safe, so each step can be validated independently.
How we built it
Data ingestion: Pulled and validated large historical datasets from Open‑Meteo.
Preprocessing: Cleaned, normalized, and structured data for ML training.
Modeling: Trained regression/classification models in Python (scikit‑learn, pandas).
Deployment: Wrapped inference in a FastAPI service, containerized with Docker, and deployed on Render.
Visualization: Used matplotlib to generate forecast plots for easy interpretation.
Version control: Managed everything in GitHub for reproducibility.
Challenges we ran into
Unable to use the Google Cloud Platform due to billing account issues.
Unable to use the Fivetran Connector SDK REST APIs due to billing issues.
Handling large hourly datasets without overwhelming the pipeline.
Debugging deployment blockers when moving from local to cloud.
Ensuring preprocessing steps were bundled with the model for consistent predictions.
Accomplishments that we're proud of
Built a restart‑safe, modular ML pipeline that avoids “all‑or‑nothing” failures.
Successfully deployed a live API endpoint accessible to anyone.
Improved forecast accuracy by retraining with multi‑year data.
Created a reproducible workflow that others can adapt for different cities.
What we learned
How to containerize ML workflows for smooth deployment.
The importance of validating each step before scaling.
How to balance speed with reproducibility in a hackathon setting.
What's next for GenAFOB
Expand to multiple cities and datasets.
Add a dashboard with interactive visualizations.
Explore deep learning models for improved accuracy.
Automate retraining with scheduled jobs and Fivetran Automation.
Built With
- gradio
- matplotlib
- open-meteo-api
- pandas
- python
- scikit-learn
- xgboost

Log in or sign up for Devpost to join the conversation.