-
-
A core feature where the AI automatically categorizes raw transaction data, offering deeper insights into your spending habits.
-
The app securely connects to your bank data using a JWT token from the Bank of Anthos demo.
-
Ask any question in natural language, and the AI provides an intelligent response from your transaction data.
-
This is a diagram of the cloud-native architecture for our 'Financial Co-pilot' project, showcasing the core technologies we used.
💡 The Inspiration Modern banking applications provide a wealth of data and charts, yet they often fall short in allowing users to ask simple, natural language questions about their money. The "Financial Co-pilot" project was born out of a desire to bridge this gap, creating a conversational AI assistant that makes financial management feel like a simple conversation.
🚀 What We Built Financial Co-pilot is an intelligent chatbot that connects to a user's transaction history and provides insights in natural language. Our application is built on a robust stack, featuring a Python and Flask backend powered by the Google Gemini API, all housed within a modern dark-themed user interface. The entire application is containerized with Docker, deployed to the Google Container Registry (GCR), and hosted on the Google Kubernetes Engine (GKE).
Key features of the application include:
AI-Powered Q&A: Users can ask complex questions about their spending, and the AI will analyze raw transaction data to provide intelligent answers.
Automatic Categorization: The AI automatically categorizes transactions based on their descriptions to provide deeper insights into spending habits.
Goal Management: Users can set and track financial goals, such as saving for a trip, and the AI will monitor their progress.
Budgeting: The application allows users to set monthly budgets for different spending categories and tracks their progress.
Proactive Tips: The system can automatically identify interesting spending patterns, such as a new subscription or a large expense, and proactively notify the user.
🧠 Lessons Learned and Challenges We Overcame This project was a journey through a series of real-world development challenges, teaching us invaluable lessons in cloud-native development and AI engineering.
Data Quality Limitations: The "Bank of Anthos" demo environment provided simplistic transaction data without detailed merchant names or categories. We solved this by developing a multi-stage process where the AI first automatically categorizes the data before answering the user's question, making the application much smarter.
Persistent Deployment Bugs: We encountered numerous GKE deployment issues, including CrashLoopBackOff errors due to code syntax errors. Diagnosing these required mastering tools like kubectl logs and kubectl describe pod to pinpoint and resolve the exact cause.
Complex Git Workflow: We navigated synchronization issues and merge conflicts between local and cloud development environments by implementing a structured git workflow involving git add, git commit, git push, and git pull --force.
API and Platform Challenges: We successfully debugged and fixed issues with expired API keys and ImagePullBackOff errors, which required deep dives into Docker and Kubernetes logs to resolve. At one point, facing persistent issues, we leveraged Kiro AI to perform a full, bug-free rewrite of our core backend logic, a testament to the power of modern AI-powered developer tools.
Through these challenges, we learned that combining a strong foundational understanding of cloud technologies with powerful AI tools is the key to building robust and resilient applications. This project is a testament to the power of perseverance and modern engineering practices.
Log in or sign up for Devpost to join the conversation.