Vanna is an open-source Python framework that enables natural language interaction with databases by converting user questions into executable SQL queries using large language models. The framework uses a retrieval-augmented generation architecture that learns from database schemas, documentation, and past query examples to generate accurate queries tailored to a specific dataset. Vanna can be integrated into many environments, including notebooks, web applications, messaging platforms, and data dashboards, making it flexible for analytics and data exploration workflows. The system streams query results, visualizations, and summaries directly to user interfaces, allowing non-technical users to interact with complex data systems through conversational queries. It also includes enterprise-grade features such as user-aware security, permission enforcement, and query auditing for production deployments.
Features
- Natural language to SQL query generation
- Retrieval-augmented generation trained on database schemas
- Interactive charts and tables generated from query results
- Streaming responses and conversational data exploration
- User-aware permissions and security controls
- Integration with notebooks, web apps, and messaging tools