데이터 과학자의 고충을 해결하기 위해 SvelteKit, PostGIS, LLM을 활용한 텍스트-GIS 엔진을 개발함
사용자의 자연어 쿼리를 SQL 쿼리로 변환하여 GeoJSON 형태로 시각화하는 시스템을 구축함
Schema Context 주입 및 엄격한 규칙 설정을 통해 LLM의 SQL 생성 정확도를 향상시킴
사용자의 자연어 쿼리를 LLM이 SQL 쿼리로 변환하고, PostGIS가 쿼리를 실행하여 GeoJSON 데이터를 반환한다. SvelteKit 기반 프론트엔드는 MapLibre GL을 사용하여 GeoJSON을 시각화한다. 따라서, 사용자 친화적인 인터페이스를 통해 복잡한 공간 데이터 쿼리를 쉽게 수행할 수 있다.
LLM의 SQL 생성 정확도를 높이기 위해 를 주입하고 엄격한 규칙을 적용한다. 구체적으로, 를 LLM에 제공하여 을 생성하는 문제를 방지한다. 사용 규칙은 을 가능하게 하여 사용자 편의성을 높인다.
초기에는 작은 모델을 사용했지만, SQL 쿼리 오류가 빈번하게 발생했다. qwen3-coder:30b 모델은 SQL 구문 일관성과 Schema Context를 잘 처리하여 더 나은 성능을 보였다. 따라서, 모델 선택은 정확도와 자원 사용량 사이의 트레이드오프를 고려하여 결정해야 한다.