## Why ❓ ### 현재 상황: - 현재 `llm_utils/chains.py` 파일의 `create_query_maker_chain` 함수에서 Few-Shot SQL예제가 모든 DBMS에 동일하게 적용되고 있습니다. https://github.com/CausalInferenceLab/Lang2SQL/blob/36b5a887183091d6aab413673b684c61877cc12c/llm_utils/chains.py#L90-L104 ### 문제점 👿: - DBMS마다 SQL 문법이 다르므로, 특정 DBMS에서는 올바르지 않은 SQL이 생성될 가능성이 있습니다. ## How 🤔 - 해결 방안 ✅: - DBMS에 따른 `SQL-FewShot`을 위 프롬프트에 추가하여 데이터베이스 환경에 맞는 올바른 쿼리를 생성하게 합니다. - DBMS에 따른 Syntax 용어 사전을 생성해 SQL 문법 구조를 반영하여 쿼리를 생성할 수 있습니다. ## What 🛠️ - [ ] DBMS 종류 선정 논의 - [ ] Oracle, MySQL, PostgreSQL, DuckDB 등 종류 선정 - [ ] DBMS별 SQL 예제 맞춤화 - [ ] DBMS별 문법 차이 분석 (키워드 등) - [ ] DBMS별 예제 코드 정의 및 추가 - `best_practice_query`에 따른 로깅이나 최적의 케이스 수동 추가 - [ ] DBMS Syntax 용어 사전 구현 - [ ] SQL 용어 사전 정의 - 함수 및 키워드에 따른 설명 작성 - [ ] `create_query_maker_chain`과 용어 사전 결합을 통해 올바른 쿼리 생성
Why ❓
현재 상황:
llm_utils/chains.py파일의create_query_maker_chain함수에서 Few-Shot SQL예제가 모든 DBMS에 동일하게 적용되고 있습니다.Lang2SQL/llm_utils/chains.py
Lines 90 to 104 in 36b5a88
문제점 👿:
How 🤔
SQL-FewShot을 위 프롬프트에 추가하여 데이터베이스 환경에 맞는 올바른 쿼리를 생성하게 합니다.What 🛠️
best_practice_query에 따른 로깅이나 최적의 케이스 수동 추가create_query_maker_chain과 용어 사전 결합을 통해 올바른 쿼리 생성