Favicon of SnowChat

SnowChat

Self-hosted text-to-SQL chat for Snowflake data, with conversational context and external model APIs, Supabase schema storage and Cloudflare caching.

SnowChat is a self-hosted text-to-SQL app for people who want to ask questions about their Snowflake data in plain language. It generates SQL and returns results through a Streamlit chat interface, so analysts and business users can explore data without writing every query themselves. A hosted demo is also available.

The conversation retains context, which lets users ask follow-up questions without starting over. When SQL produces an error, SnowChat suggests ways to fix it. An AI agent manages the conversation and its use of tools, while database schema information gives the app context for generating queries.

The repository documents several model-provider integrations, including GPT-4o. Some listed model versions are legacy choices, so provider availability needs checking before deployment. Model requests use external services; listing a Llama model does not establish local inference.

The Python application can run on your own machine or server, but its setup connects to external services. Snowflake holds and queries the data, Supabase stores the schema embeddings, and Cloudflare KV caches Snowflake responses. The documented setup also uses an OpenAI API key, so hosting the app yourself doesn't make it a fully offline system.

Similar to SnowChat