Default template for PDM package
Project description
Generate SQL that match a set of records by decomposing decision trees
- User doesn't want to write SQL.
- User uploads CSV to inversql streamlit app
- User selects cells (that will be selected by the SQL).
- We overfit a
scikit-learnbinary decision tree on the data. - We decompose the tree, convert to boolean logic (explainable AI part).
- We simplify the logic with
sympy. - Generate SQL from previous steps (joins to JOIN and boolean to WHERE).
- User sees the SQL.
- User is happy.
| 🎬 Demo in a GIF | 🏛️ Architecture diagram |
|---|---|
|
|
|
🏎️ Performance
For each individual SQL query candidate (the shortest one is displayed in the UI), we need to retrain a new decision tree.
But... The decision tree fitting is honestly fast, don't worry about this.
🌟 Give us a star!
That's pretty much it!
If you have read this far, please consider giving me a star (⭐) or a fork (🍴).
This will keep my motivation going!
Or if you have too much cash at hand:
If you REALLY like my work, nowadays I'm working on
aioway, it's an optimizing compiler approach to deep learning, check it out!
👨👨👦👦 Contributors
Contribution welcome!
To contribute, refer to CONTRIBUTING.md, and our CODE_OF_CONDUCT.md.
🎨 Inspiration.
Inspired by regexgen's process. Instead of regex we do SQL. Instead of selecting text we do select records. Decision tree is my inspiration tho.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file inversql-0.1.0.tar.gz.
File metadata
- Download URL: inversql-0.1.0.tar.gz
- Upload date:
- Size: 20.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.27.0 CPython/3.14.5 Linux/6.17.0-1015-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
152f1ee5fa74c74489b3bf18d7ff522bca758807e239acf9224a0669f3b41209
|
|
| MD5 |
9daf1dc50d491a363f9269b9bbcc8f7b
|
|
| BLAKE2b-256 |
183e603698a6b8b957c5a04fa3458a60d8bdb339b460f6381e8ea71e07999d50
|
File details
Details for the file inversql-0.1.0-py3-none-any.whl.
File metadata
- Download URL: inversql-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.27.0 CPython/3.14.5 Linux/6.17.0-1015-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8426d19b59e82537879f7be7517599e545d2c6416d0b470b2d1acba7997acdb0
|
|
| MD5 |
82953256142746af8d37a9a478967fde
|
|
| BLAKE2b-256 |
18f2cecb50a750af8777a9f51837b687f2a33b9772f1cbfc824fb2728b8dd0a8
|