Our project comprises of an advanced online SQL query generator that leverages state-of-the-art machine learning techniques to simplify SQL query creation. We fine-tuned a pre-trained BERT model using the WikiSQL and Spider datasets for DML commands. Additionally, we created a custom dataset for DDL commands through web scraping (link to custom DDL dataset). We also employed transfer learning to enhance model performance.
The backend of the project is built using the following technologies:
- FastAPI: For building the API.
- Uvicorn: ASGI server for serving FastAPI applications.
- Google Speech Recognition: For converting speech to text.
- Pytesseract: For extracting text from images.
- Torch: For handling machine learning models.
- Pydantic: For data validation.
- Transformers: For implementing BERT.
- Text-Preprocessing: For preprocessing text data.
- Routers: For organizing the API endpoints.
- Pydub: For audio processing.
The frontend of the project is designed to provide a seamless and engaging user experience. Key features include:
- SVG Animations: Eye-catching animations to enhance visual appeal.
- Smooth Navigation: Intuitive and fluid navigation to improve usability.
Make sure you have the following installed on your system:
- Python 3.12+
- pip
-
Clone the repository:
git clone https://github.com/Aditya-Codes-247/QueryGen.git cd QueryGen
-
Install the dependencies:
pip install -r requirements.txt
-
Download the trained ML models: Place the models in the designated directory as mentioned in the repository.
-
Run the FastAPI application:
uvicorn main:app --reload
-
API Testing: Use Curl or any other API testing tool to test the endpoints.
With this setup, you'll be able to deploy and test our sophisticated SQL query generator on your local machine, utilizing cutting-edge machine learning models and an intuitive, animated frontend interface.
As of now the application is open sourced, however the future updates may deprecate this repo. to convert it into a hosted website, However the website still will be a free to use service