QA-BOT is a real-time analytical tool designed to evaluate the performance of voice agents by processing their interactions with customers. The system extracts key performance metrics such as accuracy, sentiment, and responsiveness, providing actionable insights to enhance customer service quality.
- Real-time audio data from voice agents’ customer interactions.
- Call transcripts and metadata (e.g., duration, sentiment, keywords).
- Predefined performance metrics (e.g., response time, tone, accuracy).
- Performance scores and insights for each voice agent.
- Alerts for critical issues (e.g., negative comments, long pauses).
-
🖥️ Real-Time QA Dashboard
- Built with Streamlit.
- Interactive, two-step workflow for recording and analyzing conversations.
-
🧠 Automated NLP Analysis
- Sentiment & Emotion → TextBlob + NRCLex.
- Response Accuracy → Knowledge base matching with TF-IDF & Levenshtein distance.
- Tone & Relevance → Custom logic to detect aggressive language, profanity, and off-topic responses.
-
📊 Data Persistence & Visualization
- Metrics logged in a MySQL database.
- Historical trends and analytics visualized with Plotly.
-
💡 Automated Alerts & Recommendations
- Real-time alerts for critical issues.
- Data-driven suggestions for improving agent performance.
Backend: Python, Pandas
Frontend: Streamlit
NLP: TextBlob, NRCLex, Scikit-learn
Speech Processing: SpeechRecognition, Pydub, Sounddevice
Database: MySQL
Visualization: Plotly
- Clone the repository
git clone url
cd qa-bot- Create a virtual environment
python -m venv venv
source venv/bin/activate # Mac/Linux
venv\Scripts\activate # Windows- Install dependencies
pip install -r requirements.txt- Set up the database
- Install MySQL and create a database:
CREATE DATABASE qa_bot;- Use db_setup.sql file.
- Run the Streamlit app
streamlit run app.py- Workflow
- Step 1: Record a voice interaction.
- Step 2: Automatically analyze for sentiment, accuracy, and tone.
- Results are logged in the database and shown in the dashboard.
- Agent Sentiment Trend (Positive vs. Negative over time)
- Accuracy Scores (per interaction vs. knowledge base)
- Tone Flags (aggressive, irrelevant, profanity detection)
- Real-Time Alerts
This project is licensed under the MIT License – free to use and modify.