Skip to content

Repository files navigation

PersonalFinanceChatbot

Personal Finance Chatbot with Hybrid ML and LLM Approach Overview This project is a Personal Finance Chatbot designed to assist users with budgeting, expense tracking, savings prediction, and investment risk profiling. It integrates a hybrid approach combining traditional machine learning models (75%) for core analytics and Large Language Models (LLMs, 25%) powered by OpenAI for natural language interaction, delivering an intuitive and powerful financial assistant.

Features Core Machine Learning Components (75%) Budget Categorization Model: Classifies user transactions into categories such as food, bills, entertainment, etc., using classifiers like Naive Bayes and Random Forest.

Expense Anomaly Detection: Detects unusual or fraudulent spending behavior through models like Isolation Forest or One-Class SVM.

Savings Prediction Model: Predicts monthly savings based on past spending patterns with regression models such as XGBoost or Linear Regression.

Investment Risk Profiling: Clusters users into risk profiles (e.g., conservative, moderate, aggressive) using unsupervised learning (K-Means clustering).

Large Language Model Component (25%) Provides a conversational interface where users can ask finance-related questions naturally.

Utilizes OpenAI's API to interpret user queries and interact with the machine learning models' outputs.

Handles follow-up questions, clarifications, and personalized financial advice.

Technologies Used Programming Languages: Python, JavaScript

ML Libraries: scikit-learn, XGBoost

NLP and LLM: OpenAI API

Data Processing: Pandas, NumPy

Visualization: Tableau, Power BI (optional for dashboards)

Installation Clone the repository:

bash Copy code git clone https://github.com/your-username/personal-finance-chatbot.git cd personal-finance-chatbot Create a virtual environment and install dependencies:

bash Copy code python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txt Configure your OpenAI API key:

Add your OpenAI API key to an .env file or environment variables.

Run the chatbot application:

Follow the provided scripts or instructions for starting the chatbot interface.

Usage Interact with the chatbot by entering finance-related queries.

Upload or sync your financial transactions.

Ask questions such as:

"How much did I spend on groceries last month?"

"Detect any unusual transactions in my account."

"What is my predicted savings for next month?"

"What kind of investor am I based on my spending habits?"

Project Structure bash Copy code personal-finance-chatbot/ │ ├── models/ # ML models and training scripts ├── data/ # Sample datasets and preprocessing scripts ├── notebooks/ # Exploratory data analysis and model experimentation ├── requirements.txt # Python dependencies ├── README.md # Project documentation └── .env.example # Example environment variables file Contribution Contributions, issues, and feature requests are welcome!

License This project is licensed under the MIT License.

About

Personal Finance Chatbot

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages