Skip to content

Latest commit

 

History

History
105 lines (72 loc) · 2.54 KB

File metadata and controls

105 lines (72 loc) · 2.54 KB

🧠 intelliquery — Natural Language to SQL for Non-Tech Users

intelliquery is an intelligent Java-powered backend system that allows non-technical users to query relational databases using natural language.

It uses a large language model to:

  1. Translate natural language into SQL queries
  2. Run those queries on a MariaDB database using JDBC
  3. Explain the results back in plain English

🎯 Targeted Users

This tool is designed for non-technical professionals who interact with structured data:

  • HR representatives
  • Office administrators
  • Receptionists
  • Project managers

Users can interact with complex databases without writing a single line of SQL.

Screenshot of javafx frontend


🚀 Getting Started

Prerequisites

  • Java 17+
  • Maven
  • MariaDB running locally or remotely
  • Ollama installed with a supported LLM (or access to API)

How to Run

PRE-REQUISITES:

  • Ensure you have a MariaDB instance running and accessible (with 'monza' database).
  • Make Sure you have Ollama installed and running with a compatible LLM model. (Qwen3:8b is default rn I think)
  • Make sure the OllamaAPI url variable is updated in the App.java files.
  • Update the application.properties file with your MariaDB connection details:
  • Make sure you are in the Intelliquery project directory while running the following commands.
1. **Install dependencies:**
   ```bash
   mvn clean install
  1. Run the backend:

    mvn spring-boot:run
  2. Run the frontend (if available):

    mvn javafx:run

That's it! The application will be running and ready to use.


🧠 Future Plans

  • Web frontend with chat interface


🔧 Technologies Used

  • Java 17
  • Maven
  • Spring Boot
  • JDBC (MariaDB)
  • OkHttp
  • Ollama LLM API
  • REST API for frontend/CLI support

mini API docs:

  • POST /api/query

    • Accepts natural language input
    • Returns: SQL query, execution result, explanation
  • POST /api/to-sql

    • Converts natural language → SQL
    • For previewing or validating SQL before running it
  • POST /api/execute

    • Accepts SQL query → returns raw result
  • POST /api/explain

    • Accepts SQL output → gets LLM-generated explanation

🧙 About Einheit-Zenkai

small team of @lohitaksha06 , @AditiSinghal11 , @nithitsuki made for clg projects. feel free to reach out for any queries or contributions. discord-id: nithitsuki