DEV Community

Cover image for Qyra AI - AI Customer Support Chatbot
Ankit Singh
Ankit Singh

Posted on

Qyra AI - AI Customer Support Chatbot

Redis AI Challenge: Beyond the Cache

Qyra AI - Intelligent Customer Support Chatbot

This is a submission for the Redis AI Challenge: Beyond the Cache

What I Built

Qyra AI is an intelligent customer support chatbot powered by Redis AI and Google Gemini, designed to revolutionize how businesses handle customer interactions.

Key Features:

  • πŸš€ One-Click Setup - Sign up, configure, and deploy in minutes
  • πŸ“„ Document Intelligence - Upload PDFs to create a smart knowledge base
  • 🎨 Dashboard Control - Comprehensive management interface
  • πŸ”Œ Easy Integration - Single script integration for any website
  • πŸ€– AI-Powered Responses - Context-aware conversations using Gemini AI
  • πŸ“Š Real-time Analytics - Live insights into chatbot performance

How It Works:

  1. Sign Up - Create your account on the dashboard
  2. Configure - Customize your chatbot's appearance and behavior
  3. Upload Knowledge - Add PDF documents relevant to your business
  4. Deploy - Add one simple script to your website
  5. Engage - Your customers get instant, intelligent support

Demo

🌐 Live Demo: https://qyraai.vercel.app/

πŸ› οΈ Chatbot Preview Tool: https://test.freecity.tech/

πŸ“‚ GitHub Repository: https://github.com/ankitkandari/qyraai

How I Used Redis 8

1. πŸ“Š Redis as JSON Database

Purpose: Primary data storage for application state

  • Client Configurations: Store chatbot settings, themes, and customizations
  • User Information: Manage user accounts, authentication, and preferences
  • File Metadata: Track uploaded documents, processing status, and indexing info
{
  "user:123": {
    "name": "John Doe",
    "email": "john@company.com",
    "chatbot_config": {
      "theme": "modern",
      "position": "bottom-right",
      "greeting": "Hi! How can I help you today?"
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

2. 🧠 Redis as Vector Database

Purpose: Semantic search through knowledge base

  • Document Embeddings: Store vector representations of PDF content
  • Similarity Search: Find relevant context for user queries using vector similarity
  • Knowledge Retrieval: Power the RAG (Retrieval Augmented Generation) pipeline
# Vector search for relevant context
similar_docs = redis.ft("pdf_index").search(
    Query(user_query_vector).return_fields("content", "metadata").dialect(2)
)
Enter fullscreen mode Exit fullscreen mode

3. πŸ“‘ Redis Pub/Sub

Purpose: Real-time dashboard updates

  • Status Changes: Real-time chatbot status and configuration updates
# Real-time dashboard updates
pubsub = redis.pubsub()
await pubsub.subscribe(f"config_updates:{client_id}")
Enter fullscreen mode Exit fullscreen mode

4. πŸ“ˆ Redis Time Series

Purpose: Analytics and monitoring

  • Message Metrics: Track conversation volume, response times, and user engagement
  • Performance Analytics: Monitor chatbot effectiveness and user satisfaction
  • Historical Data: Store time-based data for trend analysis and reporting
# Fetch analytics data
redis.xrevrange(f"analytics:{client_id}", count=1000)
Enter fullscreen mode Exit fullscreen mode

Screenshots

Impact & Results

  • ⚑ Lightning Fast: Sub-100ms response times for most queries
  • 🎯 Smart Responses: 95%+ accuracy in finding relevant information
  • πŸ”§ Developer Friendly: One-line integration for any website
  • πŸš€ Scalable Architecture: Built to handle enterprise-level traffic

Redis AI Challenge Entry - Showcasing how Redis 8 enables building sophisticated AI applications with minimal complexity and maximum performance.

Ready to revolutionize your customer support? Try Qyra AI today!

Top comments (2)

Collapse
 
shamsuddin_hamdule profile image
Shamsuddin Hamdule

Hey πŸ‘‹
Just checked out Qyra β€” looks really cool!
Noticed a tiny issue on the main page though:

The "Start Free Trial" button goes to:
qyraai.vercel.app/signup

That page shows an error, but I think it should point to:
qyraai.vercel.app/auth/signup

Hope that helps! πŸš€

Collapse
 
codertacina profile image
Ankit Singh

Appreciate it, @shamsuddin_hamdule 😊. Just made the update!