Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Message Notification Router

An AI-powered notification routing system that intelligently classifies incoming WhatsApp messages into Notify, Digest, or Mute using a modular multi-agent architecture and context-aware reasoning.


Project Overview

This project was developed as a solution for the HackerRank Orchestrate – Message Notification Router challenge.

The system analyzes incoming WhatsApp messages using message content, user behaviour, historical interactions, business metadata, and contextual information to determine the most appropriate notification strategy.

The objective is to minimize unnecessary interruptions while ensuring important messages receive immediate attention.


Features

  • Multi-Agent Architecture
  • Context-Aware Decision Making
  • Personalized Notification Routing
  • Rule-Based Reasoning Engine
  • Knowledge Base for Historical Context
  • Policy Validation Layer
  • Evaluation Pipeline
  • CSV-based Prediction Generation

Architecture

Incoming Messages
        │
        ▼
Dataset Loader
        │
        ▼
Knowledge Base
        │
        ▼
Message Intake Agent
        │
        ▼
Context Retrieval Agent
        │
        ▼
Rule-Based Reasoning Agent
        │
        ▼
Policy Validator
        │
        ▼
Output Formatter
        │
        ▼
output.csv

Project Structure

code/
│
├── agents/
│   ├── message_intake.py
│   ├── context_retrieval.py
│   ├── rule_based_reasoning.py
│   ├── policy_validator.py
│   └── output_formatter.py
│
├── knowledge/
│   ├── loader.py
│   └── knowledge_base.py
│
├── models/
│   ├── structured_message.py
│   ├── context_bundle.py
│   ├── reasoning_state.py
│   └── decision_result.py
│
├── services/
│   ├── prompt_builder.py
│   ├── groq_service.py
│   └── json_parser.py
│
├── evaluation/
│   └── main.py
│
├── main.py
└── requirements.txt

Decision Workflow

For every incoming message the system:

  1. Loads structured message data.
  2. Retrieves user, business, group and historical context.
  3. Applies rule-based reasoning using contextual evidence.
  4. Validates the decision against notification policies.
  5. Generates the final routing decision.
  6. Writes predictions to output.csv.

Notification Actions

Action Description
Notify Important messages requiring immediate attention
Digest Useful but non-urgent notifications
Mute Low-value, repetitive, spam or suspicious messages

Technologies Used

  • Python
  • Pandas
  • Pydantic
  • Rule-Based AI
  • Multi-Agent Architecture

Installation

Clone the repository:

git clone https://github.com/Harikarthik7124/Message-Notification-Router.git

Install dependencies:

pip install -r requirements.txt

Running the Project

Place the provided dataset in the project directory and run:

python main.py

The generated predictions will be saved as:

output.csv

Evaluation

Run the evaluation script:

python evaluation/main.py

The evaluation reports:

  • Number of predictions
  • Missing records
  • Duplicate IDs
  • Decision distribution
  • Average confidence

Future Improvements

  • Integrate LLM-based reasoning
  • Image OCR support
  • Voice note transcription
  • Hybrid Rule + LLM decision engine
  • Confidence calibration using model feedback

About

This repository contains my implementation of the Message Notification Router challenge from the HackerRank Orchestrate hackathon. The architecture, implementation, and decision pipeline represent my own solution developed for the challenge.


License

This repository is intended for educational and portfolio purposes.

About

AI-powered Message Notification Router that intelligently classifies WhatsApp messages into notify, digest, or mute using a modular multi-agent architecture.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages