Skip to content

tun1r/findoc-gpt-full

Repository files navigation

FinSight.ai - Your AI-Powered Financial Analyst

Submission for the Hack-Nation Global AI Hackathon (Aug 2025)


1. Project Description

FinSight.ai is a full-stack, AI-powered application designed to solve the problem of information overload in financial analysis. It transforms dense, impenetrable SEC 10-K filings and real-time market news into a clear, actionable, and interactive investment briefing.

Our system allows a user to enter any major US stock ticker and receive a comprehensive, AI-generated report in seconds. This report includes a strategic executive summary, a data-driven Bull vs. Bear case, a snapshot of key financial metrics, and a summary of critical risks admitted to by the company itself.

The core innovation is a stateful, conversational RAG (Retrieval-Augmented Generation) pipeline. After viewing the report, users can engage in an interactive Q&A to interrogate the source documents directly, with every answer grounded in verifiable evidence, making our tool not just intelligent, but trustworthy.

2. Tech Stack

  • Backend: Python, FastAPI, LangGraph (for agent orchestration)
  • Frontend: Next.js, React, Tailwind CSS
  • AI / ML Models:
    • Synthesis: Gemini 1.5 Pro
    • Chat & Routing: Gemini 1.5 Flash
    • Embeddings: Google embedding-001
  • Vector Store: FAISS (in-memory)
  • Data APIs: SEC-API, Tavily Search, yfinance

3. How to Run Locally

This is a full-stack application with a Python backend and a Next.js frontend. You will need two terminals running simultaneously from this root project folder.

Prerequisites

  • Python 3.10+
  • Node.js and npm
  • API keys (see .env.example)

Terminal 1: Start the Python Backend

  1. Set up the environment:

    # Create and activate a virtual environment (recommended)
    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
    # Install Python dependencies
    pip install -r requirements.txt
  2. Add API Keys:

    • Create a file named .env in the root directory.
    • Copy the contents of .env.example into it and fill in your actual API keys.
  3. Run the server:

    uvicorn main:api_app --reload

    The backend will be running at http://127.0.0.1:8000.

Terminal 2: Start the Next.js Frontend

  1. Set up the environment:

    # Install Node.js dependencies
    npm install --legacy-peer-deps
  2. Add API URL:

    • Create a file named .env.local in the root directory.
    • Add the following line to it:
      NEXT_PUBLIC_API_BASE_URL=http://127.0.0.1:8000
      
  3. Run the server:

    npm run dev

    The frontend will be running at http://localhost:3000.

  4. Open http://localhost:3000 in your browser to use the application.

About

FinDocGPT: A RAG-based Financial Document Analysis System

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors