Skip to content

This projects lets users upload CSVs and explore data with natural language queries using Pandas and a local LLM.

Notifications You must be signed in to change notification settings

arpitamisal/Multiple_CSV_ChatApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Multiple_CSV_ChatBot

Multiple_CSV_ChatBot is a Streamlit-based application that allows users to upload multiple CSV files and explore their data using natural language queries. It combines the power of Pandas for basic data analysis (rows, columns, column types) with a local LLM via PandasAI for advanced insights and interactive exploration.


Features

  • Upload and manage multiple CSV files.
  • View dataset previews directly in the app.
  • Get basic dataset info: row count, column count, column names, data types.
  • Ask natural language questions about your data and get automated insights using a local LLM.
  • Simple and interactive UI powered by Streamlit.

Installation

  1. Clone the repository**
    git clone <repo_url>
    cd Multiple_CSV_ChatBot
  2. Create and activate a virtual environment**
    python3 -m venv env
    source env/bin/activate
  3. Install dependencies
    pip install -r requirements.txt
  4. Run the app
    streamlit run app.py
    

Usage

  1. Open the app in your browser (usually http://localhost:8501).

  2. Upload one or more CSV files using the sidebar.

  3. Select a CSV file to explore.

  4. Enter your queries in natural language in the text area:

    Example queries:

    • "Total number of rows and columns"
    • "List the column names and their data types"
    • "Show the top 5 rows"
  5. Click "Chat with CSV" to get insights.


Technologies Used

  • Python
  • Streamlit for interactive UI
  • Pandas for data manipulation
  • PandasAI and a local LLM for natural language data querying

Notes

For queries about dataset structure (like rows, columns, or dtypes), the app uses Pandas directly to avoid sandbox restrictions in PandasAI.

More complex analysis queries are processed using the local LLM.

About

This projects lets users upload CSVs and explore data with natural language queries using Pandas and a local LLM.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages