### **기능 설명 (Description)** - SelectBox에서 다양한 SQL 엔진 프리셋을 선택할 수 있도록 구현 - 동시에 사용자가 직접 커스텀 다이얼렉트/프롬프트를 입력할 수 있는 기능 제공 - 현재는 제한된 엔진만 제공되며 langchain의 SQL_PROMPTS 도 사용하지 않아, 유연성이 부족합니다. - [현재 코드](https://github.com/CausalInferenceLab/Lang2SQL/blob/master/interface/lang2sql.py#L347C1-L351C2) ### **왜 필요한가요? (Motivation / Use Case)** - 특정 엔진이 프리셋에 없더라도, 사용자가 직접 규칙(예: identifier quote, 예약어, 함수 alias)을 정의해 실험/운영 환경에 맞게 적용할 수 있습니다. ### **제안하는 해결 방법 (Proposed Implementation)** - SelectBox 옵션 확장: Trino, Snowflake, RedShift Etc... - 사용자 정의(Custom) 옵션 제공: 선택 시 별도 입력 필드 노출 - 내부적으로는 PRESET_DIALECTS 딕셔너리를 두고, 커스텀 모드는 입력값을 동적으로 DialectOption에 매핑 ``` PRESET_DIALECTS = { "PostgreSQL": DialectOption(identifier_quote='"', keyword_hints=["LIMIT 사용", "ILIKE 지원"]), "ClickHouse": DialectOption(identifier_quote='`', keyword_hints=["LIMIT", "toDate"]), ... } ``` ### **대안 (Alternatives)** - sqlglot 활용? - 제안주세요! ### **추가 고려사항 (Additional Context)** - Streamlit UI 반영 작업 - Documentation 작업
기능 설명 (Description)
왜 필요한가요? (Motivation / Use Case)
제안하는 해결 방법 (Proposed Implementation)
대안 (Alternatives)
추가 고려사항 (Additional Context)