Skip to content

VivekMaurya83/QA-Bot

Repository files navigation

QA-BOT: Real-Time Performance Analysis for Voice Agents

Description

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.

Required Solution

Input:

  • 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).

Output:

  • Performance scores and insights for each voice agent.
  • Alerts for critical issues (e.g., negative comments, long pauses).

🚀 Features

  • 🖥️ 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.

🛠️ Tech Stack

Backend: Python, Pandas
Frontend: Streamlit
NLP: TextBlob, NRCLex, Scikit-learn
Speech Processing: SpeechRecognition, Pydub, Sounddevice
Database: MySQL
Visualization: Plotly


⚡ Installation

  1. Clone the repository
git clone url
cd qa-bot
  1. Create a virtual environment
python -m venv venv
source venv/bin/activate   # Mac/Linux
venv\Scripts\activate      # Windows
  1. Install dependencies
pip install -r requirements.txt
  1. Set up the database
  • Install MySQL and create a database:
CREATE DATABASE qa_bot;
  • Use db_setup.sql file.

▶️ Usage

  1. Run the Streamlit app
streamlit run app.py
  1. 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.

📊 Example 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

📜 License

This project is licensed under the MIT License – free to use and modify.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published