← all repositories
kaarthik108/snowChat

Snowflake SQL by committee: five LLMs, one database

A Streamlit app that lets you chat with your Snowflake warehouse through whichever LLM you trust least today.

554 stars Python AgentsRAG · Search
snowChat
Velocity · 7d
+0.5
★ / day
Trend
steady
star history

What it does

snowChat is a Streamlit interface that takes natural language questions, routes them through an LLM agent, and returns SQL results from your Snowflake database. It keeps conversational context, caches responses in Cloudflare KV, and stores schema embeddings in Supabase for retrieval-augmented generation.

The interesting bit

The project hedges its bets on model quality by supporting five different LLMs — from GPT-4o to a 3B parameter Llama — letting you swap backends without changing your data layer. The “self-healing SQL” feature attempts to catch and fix query errors automatically, which is where most text-to-SQL demos quietly fall apart.

Key highlights

  • Agent-based architecture with LangChain/LangGraph orchestration
  • Conversational memory for multi-turn querying
  • Cloudflare KV caching to avoid redundant Snowflake compute
  • Supabase vector storage for schema embeddings
  • Live demo at snowchat.streamlit.app

Caveats

  • Setup is involved: requires Snowflake, Supabase, Cloudflare, and OpenAI credentials plus manual schema ingestion
  • README contains typos (“Make you’re schemas”) and a broken clone URL pointing to yourusername
  • No mention of how “self-healing” actually works or its success rate

Verdict

Worth a look if you need a working reference implementation for multi-LLM text-to-SQL with Snowflake. Skip it if you want a polished product — this is glue code with ambition, and you’ll be debugging the glue.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.