MQL (My Query Language) ist ein leistungsstarkes Werkzeug, um natürliche Sprachabfragen in ausführbare SQL -Abfragen umzuwandeln. Was cool ist, ist, dass jeder es verwenden kann, auch ohne zu wissen, wie man codiert. Fügen Sie einfach Ihre Datenbank hinzu, indem Sie Schema an MQL verbinden oder hochladen, eine Abfrage in Ihrer Sprache fragen und den SQL erhalten.
Stellen Sie sicher, dass Sie Docker installiert haben.
Klonen Sie zunächst dieses Git -Repository:
git clone https://github.com/shurutech/mql Aktualisieren Sie den Server/Dockerfile mit Ihrem Taste OPENAI_API_KEY :
ENV OPENAI_API_KEY YOUR_TOKEN_HERE
Aktualisieren Sie die DataBase_url in der Server/.env -Datei gemäß den folgenden Regeln:
Navigieren Sie zum Repository -Ordner und führen Sie den folgenden Befehl aus:
make install
Sobald die Installation abgeschlossen ist, können Sie auf das MQL -Dashboard unter: http: // localhost: 3000 zugreifen
Bei Bedarf können Sie auch neu starten, um die lokalen Änderungen bei Verwendung von folgenden zu widerspiegeln:
make restart
Außerdem können Sie das lokale Setup mit:
make down
Außerdem können Sie alle Container mit:
make up
Ein Standardbenutzer wird zum Anmeldungszweck erstellt, während das Tool mit Docker ausgeführt wird.
Achten Sie auf die folgenden Schritte, wenn Sie es live machen möchten
Ab der aktuellen Version ist MQL so konzipiert, dass sie ausschließlich mit PostgreSQL zusammenarbeitet.
Dies sind die erforderlichen Pakete, die installiert werden müssen, um das Projekt lokal auszuführen.
Python
psycopg2
Knoten
PostgreSQL 15
PGVector -Erweiterung für PostgreSQL - PGVector
Führen Sie diese Befehle in Ihrem PostgreSQL -Befehlszeilen -Client aus
Erstellen der PostgreSQL -Rolle
Erstellen Sie eine PostgreSQL -Rolle mit Superuser -Berechtigungen und Anmeldungsfähigkeiten:
CREATE ROLE < role_name > WITH superuser;
ALTER ROLE < role_name > WITH LOGIN PASSWORD ' password ' ;Erstellen der Datenbanken
Erstellen Sie zwei Datenbanken, mql und mql_test , mit der shuru -Rolle:
CREATE DATABASE mql WITH OWNER < role_name > ;
CREATE DATABASE mql_test WITH OWNER < role_name > ;Erstellen der Erweiterung
So erstellen Sie die vector :
Verbinden Sie mit der Datenbank mit:
c < databse_name >Erstellen Sie die Vektorerweiterung:
CREATE EXTENSION vector;Aktualisieren Sie diese Werte auf 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> " Wenn die Datenbank lokal gehostet wird, ist Host localhost
Navigieren Sie zum Repository -Ordner und führen Sie den Befehl im Terminal aus
chmod +x ./setup.sh && ./setup.shSobald die Installation abgeschlossen ist, können Sie auf das MQL -Dashboard unter: http: // localhost: 3000 zugreifen
In unserem Testprozess wurden 50 Abfragen für natürliche Sprache über die MQL -Plattform mit Ressourcen wie einer eLearning_schema -Datei und einem CSV von Abfragebachbörsen in unserem Ordner test_data ausgeführt. Die MQL erreichte eine Erfolgsquote von rund 85% und übersetzte genau 43 von 50 Abfragen. Bei der Betrachtung der Präzision der Übersetzungen wurden jedoch etwa 74% (37 von 50) der Abfragen perfekt ausgeführt, wobei 6 Abfragen korrekt interpretiert, aber am Ende ein Halbkolon fehlten. Dies ließ uns mit 7 Abfragen zurück, die zu Fehlern führten. Wir arbeiten aktiv an Verbesserungen, um sowohl die Genauigkeit als auch die Vollständigkeit der SQL -Syntax -Generation zu verbessern, und begrüßen Beiträge, um unsere Plattform zu verfeinern.
Wir planen, nach der ersten Veröffentlichung weiter zu bauen und freuen uns auf das Feedback der Community. Ab sofort haben wir folgende Funktionen für die nächsten Veröffentlichungen geplant.
Wir schätzen die Beiträge jedes Entwicklers und ermutigen Sie, Ihre Ideen, Verbesserungen und Behebung mit uns zu teilen. Um einen reibungslosen Zusammenarbeitsprozess zu gewährleisten, befolgen Sie diese Richtlinien bitte.
Bevor Sie beginnen:
Meldung von Fehler
Vor dem Melden eines Fehlers bitte:
Wenn wir Verbesserungen vorschlagen, erhalten wir Vorschläge für Verbesserungen! Bitte:
Anfragen ziehen , um Code beizutragen? Folgen Sie folgenden Schritten:
Verhaltensweisen Wir sind bestrebt, für alle eine einladende und inspirierende Gemeinschaft zu bieten. Wenn Sie an diesem Projekt teilnehmen, wird erwartet, dass Sie unseren Verhaltenskodex aufrechterhalten, der Respekt und Zusammenarbeit fördert.