MQL (Query Language)은 자연어 쿼리를 실행 가능한 SQL 쿼리로 변환하는 강력한 도구입니다. 멋진 것은 코딩 방법을 모르더라도 누구나 사용할 수 있다는 것입니다. 스키마를 MQL에 연결하거나 업로드하여 데이터베이스를 추가하고 언어로 쿼리를 요청하고 SQL을 얻으십시오.
Docker가 설치되어 있는지 확인하십시오.
시작하려면이 git 저장소를 복제하십시오.
git clone https://github.com/shurutech/mql OPENAI_API_KEY 키로 서버/DockerFile 업데이트 :
ENV OPENAI_API_KEY YOUR_TOKEN_HERE
다음 규칙에 따라 서버/.env 파일에서 database_url을 업데이트하십시오.
리포지토리 폴더로 이동하여 다음 명령을 실행하십시오.
make install
설치가 완료되면 http : // localhost : 3000에서 MQL 대시 보드에 액세스 할 수 있습니다.
필요한 경우 다시 시작하여 로컬 변경 사항을 반영하여 다음을 사용합니다.
make restart
또한 다음을 사용하여 로컬 설정을 종료 할 수 있습니다.
make down
또한 다음을 사용하여 모든 컨테이너를 시작할 수 있습니다.
make up
Docker를 사용하여 도구를 실행하는 동안 로그인 목적으로 기본 사용자가 생성됩니다.
라이브로 만들려면 아래 단계를 처리하십시오.
현재 버전에서 MQL은 PostgreSQL과 독점적으로 작동하도록 설계되었습니다.
프로젝트를 로컬로 실행하기 위해 설치 해야하는 필수 패키지입니다.
파이썬
psycopg2
마디
Postgresql 15
postgresql -pgvector에 대한 pgvector 확장
PostgreSQL 명령 행 클라이언트 에서이 명령을 실행하십시오
PostgreSQL 역할 생성
Superuser 권한 및 로그인 기능을 사용하여 PostgreSQL 역할을 작성하십시오.
CREATE ROLE < role_name > WITH superuser;
ALTER ROLE < role_name > WITH LOGIN PASSWORD ' password ' ;데이터베이스 생성
shuru 역할을 가진 두 개의 데이터베이스 인 mql 및 mql_test 만듭니다.
CREATE DATABASE mql WITH OWNER < role_name > ;
CREATE DATABASE mql_test WITH OWNER < role_name > ;확장 제작
vector 확장을 만들려면 :
다음을 사용하여 데이터베이스에 연결하십시오.
c < databse_name >벡터 확장자 생성 :
CREATE EXTENSION vector;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> " 데이터베이스가 로컬로 호스팅되면 호스트는 localhost 됩니다.
저장소 폴더로 이동하여 터미널에서 명령을 실행하십시오.
chmod +x ./setup.sh && ./setup.sh설치가 완료되면 http : // localhost : 3000에서 MQL 대시 보드에 액세스 할 수 있습니다.
우리의 테스트 프로세스에는 eLearning_schema 파일과 같은 리소스와 Test_Data 폴더에있는 CSV의 쿼리 매핑과 같은 MQL 플랫폼을 통해 50 개의 자연어 쿼리를 실행하는 것이 포함되었습니다. MQL은 약 85%의 성공률을 달성하여 50 쿼리 중 43 개를 정확하게 번역했습니다. 그러나 번역의 정밀도를 고려할 때 쿼리의 약 74% (50 개 중 37 개)가 완벽하게 실행되었으며 6 개의 쿼리가 올바르게 해석되었지만 마지막에는 세미콜론이 없습니다. 이로 인해 7 개의 쿼리가 발생하여 오류가 발생했습니다. 우리는 SQL 구문 생성의 정확성과 완전성을 모두 개선하기 위해 향상을 적극적으로 노력하고 있으며 플랫폼을 개선하는 데 도움이되는 기여를 환영합니다.
우리는 초기 출시 후 계속 구축 할 계획이며 커뮤니티의 피드백을 기대합니다. 현재 우리는 다음 릴리스를 위해 계획된 다음 기능을 가지고 있습니다.
우리는 각 개발자의 기여를 소중히 여기며 귀하의 아이디어, 개선 및 수정 사항을 우리와 공유하도록 권장합니다. 원활한 협업 프로세스를 보려면 다음 지침을 따르십시오.
시작하기 전에 :
보고 버그
버그를보고하기 전에 :
개선을 제안하는 우리는 향상에 대한 제안을받는 것을 좋아합니다! 제발:
코드를 기여할 수있는 요청을 가져 오 시겠습니까? 다음 단계를 따르십시오.
우리는 모든 사람들에게 환영하고 영감을주는 커뮤니티를 제공하기 위해 최선 을 다하고 있습니다. 이 프로젝트에 참여함으로써 귀하는 존중과 협력을 촉진하는 우리의 행동 강령을지지해야합니다.