Home

Awesome

snowChat 💬❄️

Streamlit OpenAI Snowflake Supabase AWS Langchain

Streamlit App

156shots_so

snowChat is an intuitive and user-friendly application that allows users to interact with their Snowflake data using natural language queries. Type in your questions or requests, and SnowChat will generate the appropriate SQL query and return the data you need. No more complex SQL queries or digging through tables - SnowChat makes it easy to access your data! By bringing data one step closer, SnowChat empowers users to make data-driven decisions faster and more efficiently, reducing the barriers between users and the insights they seek.

Supported LLM's

https://github.com/kaarthik108/snowChat/assets/53030784/24105e23-69d3-4676-b6d6-d8157dd1580a

🌟 Features

🛠️ Installation

  1. Clone this repository: git clone https://github.com/yourusername/snowchat.git

  2. Install the required packages: cd snowchat pip install -r requirements.txt

  3. Set up your OPENAI_API_KEY, ACCOUNT, USER_NAME, PASSWORD, ROLE, DATABASE, SCHEMA, WAREHOUSE, SUPABASE_URL , SUPABASE_SERVICE_KEY, SUPABASE_STORAGE_URL,CLOUDFLARE_ACCOUNT_ID, CLOUDFLARE_NAMESPACE_ID, CLOUDFLARE_API_TOKEN in project directory secrets.toml. Cloudflare is used here for caching Snowflake responses in KV.

  4. Make you're schemas and store them in docs folder that matches you're database.

  5. Create supabase extention, table and function from the supabase/scripts.sql.

  6. Run python ingest.py to get convert to embeddings and store as an index file.

  7. Run the Streamlit app to start chatting: streamlit run main.py

Star History

[Star History Chart]

🤝 Contributing

Feel free to contribute to this project by submitting a pull request or opening an issue. Your feedback and suggestions are greatly appreciated!

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.