Pi-SQL: Python을 중간 다리 삼아 Text-to-SQL의 정확도를 높이다
Pi-SQL은 Python을 중간 단계로 활용하여 자연어 질의를 SQL로 변환하는 Text-to-SQL 기술의 정확도와 효율성을 크게 향상시킨 새로운 방법론입니다. Python 프로그램의 단계별 가이드라인을 통해 보다 정확한 SQL 생성이 가능해졌으며, 다양한 전략을 통한 최적 프로그램 선택으로 실행 속도와 정확도를 향상시켰습니다.

데이터베이스 전문가가 아니더라도 자연어로 질의하여 데이터를 얻을 수 있도록 하는 Text-to-SQL 기술이 주목받고 있습니다. 하지만 기존의 Text-to-SQL 모델들은 자연어와 SQL 사이의 큰 의미 차이와 SQL 데이터의 부족으로 정확도 향상에 어려움을 겪었습니다.
용동 치 박사를 비롯한 연구팀은 이러한 문제를 해결하기 위해 획기적인 방법을 제안했습니다. 바로 Pi-SQL입니다. Pi-SQL은 Python 프로그램을 중간 단계로 활용하여 자연어 질의와 SQL 프로그램 사이의 간극을 메우는 기술입니다.
Pi-SQL은 먼저, 자연어 질의를 바탕으로 각 단계별 가이드라인을 포함하는 Python 프로그램을 생성합니다. 이 Python 프로그램의 코드 블록이나 주석에는 SQL 생성에 필요한 상세한 정보들이 담겨 있습니다. 그 후, 이 Python 프로그램의 가이드라인을 따라 SQL 프로그램을 생성합니다. 마치 Python이 SQL 생성을 위한 상세한 지도 역할을 하는 셈이죠.
중요한 점은, 최종 생성된 SQL 프로그램은 참조 Python 프로그램의 질의 결과와 일치해야 한다는 것입니다. 연구팀은 다양한 전략으로 생성된 후보 SQL 프로그램들 중에서 가장 효율적인 프로그램을 선택하여 사용합니다. 이를 통해 기존 최고 성능 모델보다 최대 4.55배 높은 유효성 점수를 달성했으며, 실행 정확도도 최대 3.20% 향상시켰습니다.
이 연구 결과는 Text-to-SQL 분야에 큰 진전을 가져올 것으로 기대됩니다. Python과 같은 고급 언어의 풍부한 자원을 활용하여 보다 정확하고 효율적인 SQL 프로그램을 생성할 수 있는 길을 열었기 때문입니다. 이는 데이터베이스 활용의 문턱을 낮추고, 더 많은 사람들이 데이터 분석의 혜택을 누릴 수 있도록 하는 데 기여할 것입니다. 앞으로 Pi-SQL의 발전과 응용 분야 확장에 큰 관심이 집중될 것으로 예상됩니다.
Reference
[arxiv] Pi-SQL: Enhancing Text-to-SQL with Fine-Grained Guidance from Pivot Programming Languages
Published: (Updated: )
Author: Yongdong chi, Hanqing Wang, Zonghan Yang, Jian Yang, Xiao Yan, Yun Chen, Guanhua Chen
http://arxiv.org/abs/2506.00912v2