ragchatbot / README.md
Abdelrahmann121's picture
Update README.md
3ba637f verified

A newer version of the Streamlit SDK is available: 1.52.1

Upgrade
metadata
title: Empathetic Chatbot
emoji: 💬
colorFrom: blue
colorTo: purple
sdk: streamlit
sdk_version: 1.49.1
app_file: app.py
pinned: false
license: mit

Emotion-Aware Empathetic Chatbot

An AI-powered chatbot that detects emotions from user messages and provides empathetic responses using advanced NLP techniques.

Features

  • Real-time Emotion Detection: Uses DistilBERT to identify emotions from text
  • RAG System: Retrieval-Augmented Generation for contextual responses
  • Empathetic Responses: Tailored responses based on detected emotions
  • Interactive Chat Interface: Clean, user-friendly Streamlit interface
  • Emotion Analytics: Track emotion patterns over conversation history

How it Works

  1. Emotion Detection: Analyzes user input to detect emotions (anger, joy, sadness, optimism)
  2. Template Retrieval: Uses FAISS vector search to find relevant response templates
  3. Response Generation: Combines emotion-aware templates with empathetic base responses
  4. Context Awareness: Maintains conversation history for better responses

Technologies Used

  • Streamlit: Web application framework
  • Transformers: Emotion detection model (DistilBERT)
  • Sentence Transformers: Text embeddings for similarity search
  • FAISS: Vector similarity search
  • Datasets: Emotion dataset from Cardiff NLP

Disclaimer

This is an automated chatbot designed for emotional support. For serious mental health concerns, please consult a qualified mental health professional.