Turn your words into SQL magic
Visualize your data dynamically
Multi-database support
🎯 Core Features
- Natural Language to SQL 🗣️ → 📝
- Convert text queries into SQL commands using Azure OpenAI
- Intelligent query interpretation and generation
- Multi-Database Support 🗄️
- SQLite compatibility
- PostgreSQL integration
- Dynamic database switching
- Interactive Data Explorer 🔍
- Real-time data filtering
- Interactive query results
- Dynamic table views
📊 Visualization & Analytics
- Dynamic Visualizations 📈
- Multiple chart types
- Interactive configurations
- Smart visualization suggestions ⭐️
- Summary Statistics 📋
- Numeric data insights
- Categorical analysis
- Trend identification
🛡️ Security & Management
- Safe SQL Execution 🔒
- Query validation
- SQL injection prevention
- Error handling
- Query History 📚
- Searchable log
- Re-runnable queries
- Export capabilities
graph LR
A[User Input] --> B[NLP Engine]
B --> C[SQL Generator]
C --> D[Database]
D --> E[Results]
E --> F[Visualization]
1️⃣ Clone the Repository
git clone https://github.com/lohitkolluri/NLP2SQL.git
cd NLP2SQL
2️⃣ Set Up Environment
# Create .env file
cat << EOF > .env
OPENAI_API_KEY="Your Azure OpenAI API Key"
OPENAI_ENDPOINT="https://name_of_openai_resource.openai.azure.com/"
OPENAI_API_VERSION="API Version"
MODEL_NAME="Name of Your Model from Azure OpenAI"
EOF
3️⃣ Install Dependencies
pip install -r requirements.txt
4️⃣ Launch the App
streamlit run app/NLP2SQL.py
mindmap
root((NLP2SQL))
Query Processing
Natural Language Input
SQL Generation
Validation
Visualization
Charts
Tables
Statistics
Database
PostgreSQL
SQLite
Schema Explorer
Security
Query Validation
Error Handling
Safe Execution
- Query Input ➡️ User enters natural language query
- Processing ➡️ Azure OpenAI translates to SQL
- Execution ➡️ Query runs against selected database
- Visualization ➡️ Results displayed with appropriate charts
- Export ➡️ Download results in preferred format