Natural Language to SQL Interface
Build a conversational AI interface that converts natural language questions into executable SQL queries, featuring schema-aware RAG, conversation memory, and safety guardrails.
User Interface
Conversational chat interface for natural language queries with SQL visualization
Purpose-built for conversational AI with Python-native async support, streaming responses, and built-in SQL syntax highlighting perfect for database interactions
Lightweight data explorer with AI-powered natural language queries; useful as an admin/debugging interface alongside the main chat UI
Agent Orchestration
Stateful workflow engine managing the NL-to-SQL pipeline with error recovery
Graph-based state machine ideal for complex NL-to-SQL workflows: decompose questions, retrieve schema context, generate SQL, handle execution errors, and retry with corrections
All-in-one alternative that includes built-in agentic data analysis; suitable if you prefer a unified framework over composable components
NL-to-SQL Engine
Core text-to-SQL generation with schema-aware retrieval augmentation
Memory & Context
Persistent storage for conversation history and user-specific preferences
Universal memory layer providing user-level memory (preferred tables, common filters) and session context, enabling follow-up questions like 'show me last month's data' without re-specifying date ranges
Vector database for storing additional business context documents (data dictionaries, metric definitions) that Vanna can retrieve alongside raw schema
Safety & Validation
SQL validation and guardrails to prevent destructive operations
Data Layer
Target databases and execution environment