This repository contains the artifacts associated with CAREForMe framework. The source code is structured as (1)Backend, (2)Intermediate, and (3)Frontend.
ContextualMAB.py
connects with the MangoDB database, updates designated user's CMAB score and clustering data, and makes recommendations.
MABInstance.py
communicates with the frontend and the backend to provide user feedback and offer suggestions generated by the backend.
All different frontend code (e.g., Discord, Telegram) reuses the same Backend and Intermediate source code. We have implemented 3 variations of the frontend.
-
discord_main.py
creates a Discord bot that interacts with the user to give recommendations and collect user's feedback. -
telegram_main.py
creates a Telegram bot that interact with the user to give recommendations and collect user's feedback. -
./mab-reco-app/main.py
creates a Progressive Web App (PWA) that interacts with the user to give recommendations and collect user's feedback on mobile devices, including both Android and iOS platforms.
gen_pivot.py
generates pre-designed cluster pivot for clusters. This is for testing and can be easily modified.
sim_users.py
creates simulated users with unique behaviors that act based on Gaussian's Distribution with some level of noise. This is for testing and can be easily customized.
configuration.yaml
contains the customizable parameters that are used in both backend and intermediate source code, which makes the system very versatile to fulfill different needs.