An AI-powered platform for analyzing agent chat transcripts about Washington Post articles using lightweight LLMs, visual EDA, and an interactive frontend.
- Modular Data Pipeline – Clean ingestion, cleaning, and transformation
- EDA + Profiling – Dataset summaries, word clouds, sentiment plots
- LLM Summarizer – Uses Flan-T5-small
- Sentiment Classification – CardiffNLP RoBERTa Sentiment
- FastAPI Backend – REST endpoints with Pydantic validation
- Streamlit Frontend – Interactive UI for real-time transcript analysis
- Model Caching – Offline-ready with locally saved models
- Evaluation Pipeline – Accuracy and BLEU score metrics
Agentic-AI-Chat-Analyzer/
├── src/
│ ├── api/ # API endpoints
│ ├── services/ # Business logic (models, metrics, summarizer)
│ ├── utils/ # Data processing utilities
│ ├── core/ # Core modules (logger, main)
│ └── schemas/ # Pydantic models
├── scripts/ # Utility scripts
├── notebooks/ # EDA notebooks
├── streamlit_app/ # Streamlit UI
├── data/ # Dataset files
├── models/ # Saved ML models
├── main.py # FastAPI entrypoint
└── requirements.txt # Dependencies
User Input (Streamlit UI)
↓
POST Transcript to FastAPI API
↓
├── LLM Summarizer (Flan-T5)
└── Sentiment Classifier (RoBERTa)
↓
Summary + Sentiment Output
↓
Visualization (WordClouds + Metrics)
- Clone the repository
- Create a virtual environment:
python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Download models:
python scripts/download_models.py
uvicorn src.main:app --reloadAccess Swagger Docs: http://localhost:8000/docs
streamlit run streamlit_app/app_ui.py| Method | Endpoint | Description |
|---|---|---|
| GET | /summary |
Returns dataset stats |
| POST | /transform |
Preprocess and clean new chat input |
| POST | /insights |
Summarizes, classifies sentiment, returns insights |
- Backend: FastAPI, Uvicorn, Pydantic
- Frontend: Streamlit, Matplotlib, WordCloud
- NLP Models: HuggingFace Transformers (Flan-T5, RoBERTa)
- Analysis: Pandas, Seaborn, ydata-profiling
- LLM Hosting: Locally saved models in
/models/
MIT License