Hybrid Time-Series Forecasting & Generative Content Agent
A system that bridges the gap between social media engagement prediction and content generation by creating an integrated "Predict → Generate" pipeline.
SocialProphet uses time-series forecasting models to analyze historical engagement data, then leverages these insights to generate context-aware content recommendations through a generative AI agent.
Unlike existing tools that either predict engagement OR generate content, SocialProphet creates an actionable bridge between analytics and content creation.
- Time-Series Forecasting: Ensemble approach using Prophet + SARIMA
- Insight Extraction: Automated pattern recognition and trend analysis
- Content Generation: LLM-powered content recommendations via Hugging Face
- FIIT Framework: Quality validation (Fluency, Interactivity, Information, Tone)
SocialProphet/
├── data/
│ ├── raw/ # Original datasets
│ ├── processed/ # Cleaned data
│ └── predictions/ # Model outputs
├── notebooks/
│ ├── 01_EDA.ipynb # Exploratory analysis
│ ├── 02_Forecasting.ipynb
│ ├── 03_Insights.ipynb
│ └── 04_Generation.ipynb
├── src/
│ ├── data_processing/ # Data collection & preprocessing
│ ├── forecasting/ # Time-series models
│ ├── insights/ # Pattern extraction
│ ├── generation/ # LLM integration
│ ├── evaluation/ # Metrics & visualization
│ └── utils/ # Configuration & helpers
├── tests/ # Unit tests
├── dashboard/ # Streamlit app
├── requirements.txt
└── setup.py
- Clone the repository:
git clone https://github.com/avkbsurya119/SocialProphet.git
cd SocialProphet- Create virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Set up environment variables:
cp .env.example .env
# Edit .env with your API keysfrom src.forecasting.prophet_model import ProphetForecaster
from src.generation.content_gen import ContentGenerator
# Initialize the pipeline
forecaster = ProphetForecaster()
generator = ContentGenerator()
# Train and predict
forecaster.train(historical_data)
predictions = forecaster.predict(days_ahead=7)
# Generate content recommendations
recommendations = generator.generate(predictions)- Forecasting: Facebook Prophet, SARIMA (statsmodels)
- Generation: Hugging Face Inference API (Llama 3.1)
- Data Processing: Pandas, NumPy, Scikit-learn
- Visualization: Matplotlib, Seaborn, Plotly
- Dashboard: Streamlit
- Forecasting: RMSE, MAE, MAPE, R² Score
- Content Quality: FIIT Framework compliance
- System: End-to-end latency < 5 seconds
MIT License
- Facebook Prophet team
- Hugging Face community
- Academic references cited in the project report