Conversational Data Analysis Bot

🚀 Elevator Pitch

"Unlock insights from your data using natural language!"
Conversational Data Analysis Bot allows users to upload a CSV file and ask questions in plain English. The bot converts queries into SQL, runs them on Snowflake, and visualizes the results.

💡 Inspiration

Data analysis can be overwhelming for non-technical users. We wanted to create an intuitive way for people to interact with their data without needing to write complex SQL queries.

🔍 What It Does

  • Upload a CSV file to Snowflake.
  • Ask questions about the data using natural language.
  • Converts the query into a valid Snowflake SQL statement using Google Gemini AI.
  • Runs the query on Snowflake and retrieves the results.
  • Displays data insights through tables and visualizations.

🛠️ How I Built It

  • Frontend: Streamlit for UI.
  • Backend: Python for processing queries and handling API calls.
  • Database: Snowflake for data storage and querying.
  • AI Integration: Google Gemini API to convert natural language into SQL.
  • Visualization: Matplotlib and Seaborn for graphical insights.

🚧 Challenges I Ran Into

  • Ensuring that AI-generated SQL queries were syntactically correct.
  • Handling various data types and missing values in CSV files.
  • Optimizing performance for large datasets.
  • Debugging Snowflake SQL compilation errors (e.g., handling VARCHAR in EXTRACT functions).

🎉 Accomplishments That I'm Proud Of

  • Successfully integrated AI to convert natural language to SQL.
  • Built a seamless workflow from data upload to visualization.
  • Provided a simple yet powerful tool for data exploration.

📚 What I Learned

  • Effective AI prompting for structured query generation.
  • Handling different data formats in Snowflake.
  • Streamlit-based UI development.
  • Error handling and debugging in SQL and Python.

🔮 What's Next for Conversational Data Analysis Bot

  • Support for multiple databases beyond Snowflake.
  • Advanced AI capabilities for more complex queries.
  • Enhanced visualizations and interactive dashboards.
  • User authentication and session management.

Built With

Share this project:

Updates