Skip to content

FinGuard is a decentralized Supervisory Technology (SupTech) tool built to bridge the gap between marketing promises and customer reality. It ingests financial brochures (Expectation) and simulated user reviews (Reality) to flag mis-selling risks in real-time. Built with Python, LangChain, and Streamlit.

Notifications You must be signed in to change notification settings

utsav-mistry/FinGuard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

FinGuard: The Mis-selling Radar

A Proactive AI Tool for Supervisory Technologies (SupTech)

Overview

FinGuard is a decentralized "SupTech" (Supervisory Technology) prototype designed to assist financial regulators in monitoring mis-selling risks in real-time.

Financial products often suffer from a gap between "Expectation" (marketing promises) and "Reality" (customer experience). FinGuard bridges this gap by autonomously comparing product documentation against unstructured consumer feedback.

The Goal: Move regulatory oversight from reactive (waiting for formal complaints) to proactive (flagging discrepancies as they emerge).

Core Architecture

FinGuard operates on a Dual-Pipeline Architecture that converges into a central Gap Analyzer.

  1. The Expectation Engine (Pipeline A):
  • Input: Product PDFs (Brochures, Scheme Information Documents).
  • Tech: OCR, NLP (LLMs/LangChain).
  • Function: Extracts semantic "Promises" (e.g., "Guaranteed Returns," "Zero Exit Load").
  • Output: A structured JSON Promise_Profile.
  1. The Reality Engine (Pipeline B):
  • Input: Unstructured text (Social media, reviews, forums).
  • Tech: Sentiment Analysis, Topic Modeling (BERTopic/RoBERTa).
  • Function: Extracts "Lived Experiences" and maps sentiment to specific product features.
  • Output: A Customer_Dissatisfaction_Index.
  1. The Gap Analyzer:
  • Function: Calculates vector distances and semantic discrepancies between Promises and Reality.
  • Result: A Mis-selling Risk Score (0-100).

Key Features

  • Automated Promise Extraction: Parses complex financial PDFs to identify key claims regarding Lock-in periods, Risk profiles, and Fees without manual entry.
  • Aspect-Based Sentiment Analysis: Doesn't just tell you if a review is "sad"; it tells you why (e.g., "Positive on Returns" but "Negative on Hidden Fees").
  • The Fine-Print Detector: Compares prominent marketing text against obscure footnotes to flag "visual obfuscation."
  • Real-time Dashboard: A Streamlit-based UI for regulators to view Risk Scores and drill down into specific product discrepancies.

Technology Stack

| Component | Technology | Role | | | | | | Language | Python 3.10+ | Core Application Logic | | Orchestration | LangChain | LLM Framework for Promise Extraction | | LLM Provider | OpenAI API / Local Llama | Zero-shot Entity Extraction | | NLP & Topic Modeling | BERTopic, Spacy | Clustering Customer Feedback | | Vector Store | ChromaDB / FAISS | Semantic Similarity Search | | Frontend | Streamlit | Interactive Regulatory Dashboard | | Data Processing | Pandas, PyMuPDF | Data Manipulation & PDF Parsing |

Quick Start

Prerequisites

  • Python 3.10 or higher
  • An OpenAI API Key (or a local LLM endpoint setup)

Installation

  1. Clone the Repository
git clone https://github.com/yourusername/finguard.git
cd finguard
  1. Create Virtual Environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install Dependencies
pip install -r requirements.txt
  1. Configuration Create a .env file in the root directory:
OPENAI_API_KEY=sk-your-key-here
DATA_SOURCE_PATH=./data

Running the Application

To launch the regulatory dashboard:

streamlit run app.py

Project Structure

finguard/
├── assets/              # Simulated PDF brochures & review datasets
├── src/
│   ├── engines/
│   │   ├── expectation.py  # PDF Parsing & Extraction Logic
│   │   └── reality.py      # Sentiment & Topic Modeling Logic
│   ├── analyzer/
│   │   └── gap_logic.py    # Comparison Algorithms
│   └── utils/
│       └── data_loader.py
├── app.py               # Main Streamlit Dashboard entry point
├── requirements.txt     # Python dependencies
├── README.md            # Project documentation
└── COOKBOOK.md          # Developer Guide & User Flows

Team

  • [Nishit Somani] - AI Engineering and Optimization (Kaptaan Sahab)
  • [Vedant Hingu] - Frontend Design and Database organization
  • [Hetansh Panchal] - Database Enginnering and Optimization
  • [Neel Patel] - Backend monitoring and tool control
  • [Utsav Mistry] - Backend impplememntation and Architecture

Built with ❤️ and ☕ at [DA-IICT].

About

FinGuard is a decentralized Supervisory Technology (SupTech) tool built to bridge the gap between marketing promises and customer reality. It ingests financial brochures (Expectation) and simulated user reviews (Reality) to flag mis-selling risks in real-time. Built with Python, LangChain, and Streamlit.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published