MQL (bahasa kueri saya) adalah alat yang ampuh untuk mengubah kueri bahasa alami menjadi kueri SQL yang dapat dieksekusi. Yang keren adalah bahwa siapa pun dapat menggunakannya, bahkan tanpa mengetahui cara membuat kode. Cukup tambahkan database Anda dengan menghubungkan atau mengunggah skema ke MQL, tanyakan kueri dalam bahasa Anda dan dapatkan SQL.
Pastikan Anda telah menginstal Docker.
Untuk memulai, klon repositori git ini:
git clone https://github.com/shurutech/mql Perbarui Server/DockerFile dengan kunci OPENAI_API_KEY Anda:
ENV OPENAI_API_KEY YOUR_TOKEN_HERE
Perbarui database_url di file server/.env sesuai dengan aturan berikut:
Arahkan ke folder repositori dan jalankan perintah berikut:
make install
Setelah instalasi selesai, Anda dapat mengakses dasbor MQL di: http: // localhost: 3000
Jika perlu, Anda juga dapat memulai ulang untuk mencerminkan perubahan lokal, jika ada, menggunakan:
make restart
Anda juga dapat menghentikan pengaturan lokal menggunakan:
make down
Anda juga dapat memulai semua wadah yang menggunakan:
make up
Pengguna default dibuat untuk tujuan login saat menjalankan alat menggunakan Docker.
Jaga langkah -langkah di bawah ini jika Anda ingin membuatnya hidup
Pada versi saat ini, MQL dirancang untuk bekerja secara eksklusif dengan PostgreSQL.
Ini adalah paket yang diperlukan yang perlu diinstal untuk menjalankan proyek secara lokal.
Python
psycopg2
Node
PostgreSQL 15
Ekstensi PGVector untuk PostgreSQL - PGVector
Jalankan perintah ini di klien baris perintah postgresql Anda
Membuat Peran PostgreSQL
Buat peran PostgreSQL dengan izin superuser dan kemampuan login:
CREATE ROLE < role_name > WITH superuser;
ALTER ROLE < role_name > WITH LOGIN PASSWORD ' password ' ;Membuat database
Buat dua database, mql dan mql_test , dengan peran shuru :
CREATE DATABASE mql WITH OWNER < role_name > ;
CREATE DATABASE mql_test WITH OWNER < role_name > ;Membuat ekstensi
Untuk membuat ekstensi vector :
Terhubung dengan database menggunakan:
c < databse_name >Buat ekstensi vektor:
CREATE EXTENSION vector;Perbarui nilai -nilai ini di server/.env
DATABASE_URL = " postgresql://<role_name>:<password>@<host>:5432/mql "
TEST_DATABASE_URL = " postgresql://<role_name>:<password>@<host>:5432/mql_test "
OPENAI_API_KEY = " <key> " Jika database di -host secara lokal maka host akan menjadi localhost
Arahkan ke folder repositori dan jalankan perintah di terminal
chmod +x ./setup.sh && ./setup.shSetelah instalasi selesai, Anda dapat mengakses dasbor MQL di: http: // localhost: 3000
Proses pengujian kami melibatkan menjalankan 50 kueri bahasa alami melalui platform MQL, dengan sumber daya seperti file eLearning_schema, dan CSV pemetaan kueri yang terletak di folder test_data kami. MQL mencapai tingkat keberhasilan sekitar 85% , secara akurat menerjemahkan 43 dari 50 pertanyaan. Namun, ketika mempertimbangkan ketepatan terjemahan, sekitar 74% (37 dari 50) kueri dieksekusi dengan sempurna, dengan 6 kueri ditafsirkan dengan benar tetapi kehilangan semi-kolon pada akhirnya. Ini meninggalkan kami dengan 7 pertanyaan yang mengakibatkan kesalahan. Kami secara aktif bekerja pada peningkatan untuk meningkatkan akurasi dan kelengkapan generasi sintaks SQL, dan kami menyambut kontribusi untuk membantu memperbaiki platform kami.
Kami berencana untuk terus membangun setelah rilis awal dan menantikan umpan balik dari masyarakat. Sampai sekarang kami memiliki fitur berikut yang direncanakan untuk rilis berikutnya.
Kami menghargai kontribusi masing -masing pengembang dan mendorong Anda untuk berbagi ide, peningkatan, dan perbaikan dengan kami. Untuk memastikan proses kolaborasi yang lancar, silakan ikuti pedoman ini.
Sebelum Anda mulai:
Melaporkan bug
Sebelum melaporkan bug, tolong:
Menyarankan Peningkatan Kami senang menerima saran untuk peningkatan! Silakan:
Permintaan tarik siap untuk menyumbangkan kode? Ikuti langkah -langkah ini:
Perilaku Kami berkomitmen untuk menyediakan komunitas yang ramah dan menginspirasi untuk semua. Dengan berpartisipasi dalam proyek ini, Anda diharapkan untuk menjunjung tinggi kode etik kami, yang mempromosikan rasa hormat dan kolaborasi.