Skip to content

mrhello291/financeTrackerFrosthack2k25

Repository files navigation

Finance Tracker - AI-powered Financial Analysis

Overview

  • First Prize Winner at Frosthack 2025
  • This project is an AI-powered financial analysis system that processes and analyzes transaction data to provide insights and answer user queries. It integrates LangChain, Fetch.ai, and Pathway for efficient data processing and retrieval.

PS

video

Our Result

Features

  • Parses and extracts financial transactions from documents.
  • Stores structured financial data for quick retrieval.
  • Provides financial insights based on user queries.
  • Implements advanced retrieval-augmented generation (RAG) techniques.
  • Uses Fetch.ai and Pathway for efficient data processing.
  • Supports visualization of financial data trends.

Project Structure

├── agent_fetchai.py  #fetchAI Agents
├── agents
│   ├── DocToGDrive.py
│   ├── DocumentParsingAgent2.py
│   ├── DocumentParsingAgent.py
│   ├── GetReleventTransactionByDate.py
│   ├── GetReleventTransaction.py
│   ├── GetUserQueryOutput.py
│   ├── IsContextNeeded.py
│   └── __pycache__
├── app.py  
├── Cache
│   ├── 1-0-0
│   └── 1-0-1
├── credentials.json
├── data
│   └── finance_docs_extracted.csv
├── INFO
│   ├── data
│   ├── filtered_transactions.json
│   ├── output.json
│   ├── processed_output.json
│   ├── staticPlots
├── LanggraphApp.py
├── output_chunks
├── pathwayF
│   ├── baseModel.py
│   ├── langchainPathwayClient.py
│   ├── pathwayServer.py
│   ├── pdfToCSVByLLM.py
│   └── __pycache__
├── README.md
├── requirements.txt
└── staticVisualizationAgent.py

App Diagrams

Project Diagram

alt text

Fetch-AI Agent Diagram

alt text

Installation

1. Set Environment Variables

Before running the application, configure the following environment variables:

export PATHWAY_KEY=""
export LANGSMITH_TRACING=true
export LANGSMITH_ENDPOINT="https://api.smith.langchain.com"
export LANGSMITH_API_KEY=""
export LANGSMITH_PROJECT=""
export GEMINI_API_KEY="--"
export GROQ_API_KEY=""
export TAVILY_API_KEY=""
export DEEPSEEK_API_KEY=""
export HUGGINGFACEHUB_API_TOKEN=""
export GDRIVEFOLDERID=""

2. Set Up credentials.json

Create a credentials.json file in the root directory and populate it with your Google Cloud credentials:

{
  "type": "service_account",
  "project_id": "rag-app-frosthack",
  "private_key_id": "<PRIVATE_KEY_ID>",
  "private_key": "-----BEGIN PRIVATE KEY-----\n<PRIVATE_KEY>\n-----END PRIVATE KEY-----\n",
  "client_email": "<CLIENT_EMAIL>",
  "client_id": "<CLIENT_ID>",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/<SERVICE_ACCOUNT>.iam.gserviceaccount.com",
  "universe_domain": "googleapis.com"
}

Note: Replace <PRIVATE_KEY>, <CLIENT_EMAIL>, <CLIENT_ID>, and <SERVICE_ACCOUNT> with your actual credentials.

3. Install Dependencies

Run the following command to install required dependencies:

pip install -r requirements.txt

Running the Application

Follow these steps to start the application:

  1. Start the Fetch.AI Agents

    python -m agents.ActivateVectorStore
    python -m agents.DocParserAgent
    python -m agents.getReleventTransaction
    python -m agents.GetUserQueryOutput
    python -m agents.GraphingAgent
    python -m agents.IsContextNeeded
  2. Run the Streamlit App

    streamlit run app.py

Relevant Resources

Contributing

Feel free to open issues and submit pull requests for improvements.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages