This repository releases a FastSQL demo.
Execute the following commands in your terminal:
apt-get update
apt-get install -y openjdk-11-jdk
Run these commands to set up your virtual environment:
conda create -n demo python=3.8.5
conda activate demo
Ensure you have all necessary packages by running:
conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.7 -c pytorch -c nvidia
pip install -r requirements.txt
Download the the file sic_ckpts.zip for the schema item classifier. Then, unzip the downloaded file in the root directory of the project:
unzip sic_ckpts.zip
By default, this project includes only one database (i.e., car
) in the databases
folder.
- To add and use your own databases:
- Place your SQLite database file in the
databases
directory. - Update the
./data/tables.json
file with the necessary information about your database, including:db_id
: The name of your database (e.g.,my_db
for a database file located atdatabases/my_db/my_db.sqlite
).table_names_original
andcolumn_names_original
: The original names of tables and columns in your database.table_names
andcolumn_names
: The semantic names (or comments) for the tables and columns in your database.
- Place your SQLite database file in the
Upon completing these steps, your project should be fully configured.
To initiate the website, execute the following command:
python -u app_fastsql.py
This action will start the web application, making it accessible at http://your_ip:8080/chatbot
. Please note that user's history questions will be logged and can be accessed in the data/history/history.sqlite
file.
Our code are mainly based on text2sql-demo, thanks for their magnificant work.
ALso thanks to the teams behind ChatBot㪠WebApp in Python using Flask, BIRD, and Spider for their outstanding contributions to the field.