I. 서론
II. 이론적 배경
1. 공간정보와 인공지능: GeoAI부터 GeoAGI로의 진화
2. 대규모 언어 모델(LLM)과 공간정보 자연어 처리
III. LLM 기반 생성형 AI 지원 시스템 설계 및 구현
1. 시스템 아키텍처 개요
2. 계층별 세부 아키텍처 설계 및 구현
3. 시스템에서의 질의어 처리 과정
IV. 생성형 AI를 이용한 관광 정보 GIS 서비스 구현 및 평가
1. 시스템 구현 환경 및 공간 데이터 구축
2. 생성형 AI를 지원하는 관광정보 웹 GIS 서비스 구현
3. 생성형 AI 지원 웹 GIS 서비스 평가 및 의의
V. 결론 및 고찰
I. 서론
최근 급성장하고 있는 인공지능(AI) 기술의 발달은 공간정보 처리와 분석 기술에도 큰 영향을 미치고 있다. 인공지능과 머신 러닝 기술이 도입되면서 공간정보의 처리와 분석과정에서 공간정보 빅데이터의 분석이 가능하게 되었다. 또한 딥러닝 기반의 영상처리를 통해 드론이나 위성영상을 이용한 원격탐사뿐만 아니라 및 로드뷰 영상 등을 활용한 다양한 연구가 활발히 이루어지고 있다. 이처럼 공간정보와 AI가 융합된 ‘지리공간 인공지능(GeoSpatial AI, GeoAI)’은 공간정보 분야의 핵심 패러다임으로 자리 잡게 되었다. GeoAI는 기존의 공간정보 빅데이터 분석과 결합하며 공간정보 분야에 큰 영향을 미치게 되었다.
그러나 최근 ChatGPT를 필두로 한 생성형 AI의 등장과 보급은 공간정보 분야에 또 다른 패러다임 전환을 요구하고 있다(조성진 등, 2026). GeoAI의 연구가 활발히 이루어지고 있는 시점에서, ‘생성형 AI 기반 공간정보기술(Geospatial Artificial General Intelligence, GeoAGI)’로의 변화가 가속화되고 있는 것이다. GeoAGI란, 일반적인 목적의 생성형 인공지능 기술과 공간정보가 결합한 분야이다. 기존의 GeoAI가 영상 분류나 범죄율 예측 등과 같이 특정한 목적을 위해 훈련된 단일 목적 인공지능 모델을 중심으로 접근하였다면, GeoAGI는 일반적인 목적을 위해 대규모 언어 모델(Large Language Model)과 멀티모달 AI(Multimodal AI)를 기반으로 인간처럼 공간적 맥락을 스스로 이해하고, 복잡한 공간 추론과 분석을 수행하는 것이다. 자연어 질의에 담긴 지리적 맥락을 AI가 이해하고, 공간분석을 수행하여 그 결과를 지도 형태로 제공할 수 있다면, 이는 공간정보와 생성형 AI의 완벽한 결합이라 할 수 있다. 이러한 GeoAGI 기술은 사용자가 지리학적 배경 지식이나 공간정보의 분석에 필요한 수학적, 기하학적 논리를 갖추지 않아도 인공지능을 통하여 지리학적 문제를 손쉽게 파악하고 분석할 수 있을 것이다.
생성형 인공지능의 기반이 되는 요소가 대규모 언어 모델(Large Language Model, LLM)이다. LLM은 방대한 데이터를 학습하여 자연어를 이해하고 공간 추론을 가능하게 하는 GeoAGI의 핵심 엔진이기 때문이다. 그러나 LLM과 웹 서비스의 연동 과정에서 네트워크 지연이나 서버 과부하 등의 문제가 발생하여 공간데이터의 처리 및 서비스 과정에서 많은 시간과 비용의 문제를 발생할 수 있다. 따라서 일반적인 웹 GIS 환경에서 눈에 보이지 않는 백엔드 부분에서 LLM을 제어할 필요가 있다.
본 연구에서는 웹 GIS 환경에서 대규모 언어 모델 기반의 생성형 AI 인터페이스를 개발하여 공간정보 서비스를 구현한 사례를 제시하고자 한다. 웹 GIS 서버 환경에서 공간정보 데이터를 LLM 학습 데이터와 연동하여, 자연어 질의 처리 결과를 지도 형태로 시각화하는 인터페이스를 구현하였다. 이를 위해 GitHub 서비스를 활용해 웹 GIS 서버를 구축하고, Google Gemini API를 이용하여 자연어 처리와 GIS 표현을 중계하는 백엔드 오케스트레이터를 구성하는 시스템을 설계하고 통합하였다. 구현된 시스템의 검증을 위해 문화 빅데이터 플랫폼에서 제공하는 국내 관광명소 데이터를 적용하였으며, 사용자 질의 유형에 따른 웹 GIS의 동작 및 응답 성능을 평가하였다.
본 연구에서 개발한 자연어 기반 웹 GIS 생성형 AI 인터페이스를 통하여 지리학적 전문지식이나 복잡한 GIS 소프트웨어 조작 능력이 없는 일반 사용자도 공간정보에 쉽게 접근할 수 있도록하여, 일반 대중이 공간정보를 쉽게 다룰 수 있는 인터페이스를 개발한 사례가 되기를 기대한다. 또한, LLM과 웹 GIS 서버 간의 효율적인 연동을 통해 네트워크 지연을 줄이고 지리적 맥락 학습 효율을 높여, 향후 GeoAGI 연구를 위한 기반 구축에 기여하고자 한다.
II. 이론적 배경
1. 공간정보와 인공지능: GeoAI부터 GeoAGI로의 진화
지구상의 위치에 관한 대용량 지리정보를 수집, 처리, 분석하는 공간정보 분야에 인공지능(AI)을 결합할 경우, 복잡하고 방대한 공간 데이터를 보다 효과적으로 분석하고 추론할 수 있다. 최근 머신러닝과 딥러닝 기술의 비약적 발전에 힘입어 공간정보 데이터의 처리 및 분석 과정에 AI 기법을 적용하는 연구가 급증하였으며, 이에 따라 공간정보와 인공지능이 융합된 지리공간 인공지능(Geospatial AI, GeoAI)이라는 새로운 학문 및 기술 분야가 정립되었다. 초기 GeoAI 연구는 주로 합성곱 신경망(CNN), 순환 신경망(RNN), 시공간 그래프 신경망(ST-GNN) 등의 기법을 활용하여 단일한 주제의 공간 문제를 해결하기 위한 개별 모델 구축에 집중되었다(강영옥, 2023). 특히 원격탐사 분야에서 토지피복 분류와 객체탐지, 영상 융합, 변화 탐지 등 다양한 분야에서 딥러닝 기술의 적용 사례가 활발히 나타나고 있다(이창희 등, 2021). 또한 도시 지역의 스트리트 뷰 영상을 이용한 딥러닝 기술은 도시 기반시설과 보건, 도시 경관, 교통 등 도시 연구 분야에도 이용되고 있다(Biljecki and Ito, 2021). 그리고 딥러닝 모델인 LSTM(Long Short-Term Memory)을 활용해 차량 궤적을 시계열로 분석하고, 이를 바탕으로 불법 주정차 구역을 예측하는 연구도 진행되고 있다(김동은・강영옥, 2019). 이러한 선행 연구들은 인공지능 모델이 실세계의 복잡한 공간 문제를 다루는 데 있어서 효과적인 분석 수단이 될 수 있음을 입증하였다.
그러나 초기 GeoAI 모델들은 특정 과업 해결에는 뛰어난 성능을 보이나, 학습 범위를 벗어난 시공간 데이터에 대한 일반화 능력이 부족하고 사용자의 포괄적인 의도를 유연하게 파악하지 못한다는 구조적 한계를 나타냈다. 이러한 한계를 극복하기 위해 최근 공간정보 분야에서는 단순한 문제 해결용 도구를 넘어 생성형 AI 수준의 일반화 능력과 지리적 추론을 목표로 하는 생성형 AI 기반 공간정보기술(Geospatial Artificial General Intelligence, GeoAGI) 중심 연구로 패러다임이 전환되고 있다. 특히 2022년 이후 대규모 언어 모델(LLM)과 생성형 AI의 급격한 확산은 이러한 패러다임 변화를 가속화하였다. GeoAGI는 기존 GeoAI의 제한적 기능성을 넘어서 인간의 지리적 추론 능력을 모방하는 범용 공간지능 체계를 의미한다(조성진 등, 2026). GeoAGI의 핵심 구성요소는 대규모 시공간 데이터를 사전 학습한 공간 기반 파운데이션 모델(Geospatial Foundation Model, GeoFM), 지리 객체와 관계를 체계화한 공간지식 그래프(Geospatial Knowledge Graph, GeoKG), 이종 자료를 연계하는 멀티모달 융합 계층, 논리 연산을 담당하는 공간추론 엔진, 그리고 분석 계획 수립부터 코드 생성 및 검증까지 전 과정을 자율 처리하는 자율형 GIS 에이전트(Autonomous GIS)로 구성된다. 이처럼 공간정보와 인공지능의 결합이 고도화됨에 따라 단순한 객체 탐지나 패턴 예측 수준을 지나, 자연어를 매개로 지리적 지식을 습득하고 복잡한 지역 문제를 해결하는 공간 지능 체계로 진화하고 있다(강전영 등, 2023).
2. 대규모 언어 모델(LLM)과 공간정보 자연어 처리
대규모 언어 모델(Large Language Models, LLM)은 방대한 텍스트 데이터를 사전 학습하여 인간의 언어를 이해・생성・추론할 수 있도록 설계된 초거대 인공신경망으로, 생성형 인공지능을 구동하는 핵심 엔진이다. 생성형 AI는 LLM 내에 구축된 지식을 바탕으로 데이터 처리, 분석 및 추론을 수행한다. LLM은 특정 과업에 한정되지 않고 하나의 모델로 다수의 작업을 처리할 수 있는 범용성을 지니며, 복잡한 프로그래밍 언어나 데이터베이스 질의어 대신 일상적 자연어를 통한 인간-컴퓨터 상호작용을 가능하게 한다. 또한 사용자의 요청을 해석하여 구체적인 실행 계획을 수립・이행하는 자율형 에이전트(Autonomous Agent)의 역할을 수행할 수 있을 뿐만 아니라, 텍스트 외에도 시공간 데이터, 영상, 센서 정보, 코드 등 이종(異種) 데이터를 통합 처리하는 멀티모달(multimodal) 체계로 확장된다는 특징을 가진다.
최근 GPT, Claud, Gemini 등 상용 LLM과 함께 LLaMA(Large Language Model Meta AI) 등 오픈소스 기반의 LLM 모델이 발전함에 따라 자연어 이해 및 추론 능력이 크게 향상되었으며, 이는 AI 기반 복합 프로세스를 사용자 친화적인 방향으로 혁신하고 있다(Nazir et al., 2024). 현재 상용화된 LLM은 웹 규모의 방대한 데이터를 학습하는 과정에서 이미 세계 지리, 행정구역, 장소명, 지형적 특성에 관한 1차적 개념을 체득하고 있다. 이를 기반으로 LLM은 단순한 키워드 매칭의 한계를 넘어 비정형 자연어 질의에 내포된 지리적 대상, 속성 조건 및 분석 범위를 포함하는 공간적 맥락을 파악하여 일반적인 장소 정보 검색 및 분석을 수행할 수 있다.
그러나 일반적인 LLM만을 활용하여 정교한 지리적 추론을 수행하는 데에는 명확한 한계가 존재한다. 지리학 및 GIS 분석의 핵심인 공간 중첩, 인근 분석 등의 연산은 좌표체계 및 위상(topology) 구조를 바탕으로 정밀하게 수행되어야 한다. 따라서 텍스트 데이터 중심의 LLM은 좌표 기반의 수치 연산 및 공간관계 추론 과정에서 오차를 유발하거나, 실제 존재하지 않는 공간 관계를 왜곡 생성하는 환각(hallucination) 현상을 일으킬 위험이 있다.
이러한 한계를 극복하기 위해 공간정보 분야에서는 전통적인 GIS 분석 절차를 벗어나 LLM 기반의 공간정보 자연어 처리 및 자율형 GIS(Autonomous GIS)에 관한 연구를 활발히 추진하고 있다(이창규 등, 2025, Li and Ning, 2023). 대표적으로 Akinboyewa et al.(2025)은 Open-source 환경인 QGIS 내에서 LLM을 연동하여 공간 분석을 수행하는 플러그인 도구인 ‘GIS Copilot’을 개발하고 그 유용성을 검증하였다. 또한 Wei et al.(2025)은 공간 데이터 처리에 특화하도록 LLM을 미세조정한 전문 공간 언어 모델인 ‘GeoTool-GPT’를 발표하였다. Ning et al.(2025)는 LLM을 기반으로 다양한 출처의 공간 데이터를 자동으로 탐색하고 수집하는 자율형 GIS 에이전트 프레임워크를 제시하였다. 이러한 일련의 연구들은 공간정보 분야가 복잡한 전용 소프트웨어 및 프로그래밍 기술에 의존하던 전통적 방식에서 벗어나, 비전문가도 자연어를 통해 공간 데이터에 쉽게 접근하고 복잡한 공간분석을 수행할 수 있는 대중적 환경으로 진화하고 있음을 시사하고 있다.
III. LLM 기반 생성형 AI 지원 시스템 설계 및 구현
1. 시스템 아키텍처 개요
본 연구에서는 대규모 언어 모델(LLM)을 활용하여 사용자의 자연어 질의로부터 공간 맥락을 추출하고, 이를 기반으로 웹 환경에서 지도 레이어를 실시간 제어하는 Web GIS 시스템을 설계하였다. 이를 위해서 전체의 시스템 아키텍처를 클라이언트 뷰(Frontend Client View), 백엔드 오케스트레이터(Backend Orchestrator), 그리고 LLM 추론 엔진(Gemini AI Engine)의 3계층 구조로 설계하였다(그림 1).
사용자가 웹 GIS 페이지에 접속하면 최전선의 프론트엔드(Frontend) 영역인 클라이언트 뷰 레이어가 활성화된다. 클라이언트 레이어는 지도, 기호, 텍스트, 사용자 입력 인터페이스가 통합 구성된 웹 기반 HTML 환경으로, 사용자의 직접적인 상호작용을 수용한다. 또한 GeoJSON 형태의 공간 데이터를 불러들여 웹 GIS 지도의 형태로 표현한다. 사용자가 자연어 질의어를 입력하면 해당 데이터는 클라이언트 뷰 하단의 백엔드 오케스트레이터로 전달된다. 백엔드 오케스트레이터는 API 키 보안 관리, 프롬프트 생성, 자연어 질의 전달 및 응답 파싱(Parsing) 등의 핵심 제어 로직을 수행한다.
백엔드 오케스트레이터를 거친 요청은 LLM 추론 엔진으로 전달되며, 본 연구에서는 Google의 Gemini 모델을 연동하여 활용하였다. 백엔드 오케스트레이터는 수신된 좌표 데이터를 검증하여 결함 객체를 정제하여 컨텍스트 데이터를 작성한다. 정제된 컨텍스트 데이터는 프롬프트 엔지니어링을 거친 프롬프트와 함께 LLM Engine으로 전달되고 정형화된다. 이후 추론된 결과 데이터는 다시 GeoJSON 구조로 변환되어 클라이언트 뷰에 전달되며, 클라이언트 뷰는 점(point) 형태의 공간 객체로 재구성하여 사용자 화면에 웹 GIS 지도의 형태로 시각화한다.
2. 계층별 세부 아키텍처 설계 및 구현
1) 클라이언트 뷰
클라이언트 뷰는 사용자와 직접 상호작용하는 인터페이스로 웹 환경의 경우 HTML 파일의 형태로 작성된다. 본 연구에서는 클라이언트 뷰를 index.html 파일로 작성하여 사용자가 웹 GIS에 접속할 때 초기 화면을 제공하고 상호작용하도록 하였다. 클라이언트 뷰는 입출력 인터페이스와 공간 시각화 엔진을 연동하여 구현된다. 자연어 질의 입력을 위한 사용자 인터페이스를 배치하였으며, 입력된 질의 데이터는 백엔드 엔드포인트(https://.../api/analyze-geo)를 이용하여 백엔드 오케스트라에 질의 요청하고 결과를 반환받을 수 있도록 하였다.
공간 데이터의 지도학적 시각화를 위해 오픈소스 벡터 지도 라이브러리인 MapLibre GL JS를 활용하였다. OpenStreetMap 데이터를 배경지도로 채택하고, GeoJSON 포맷의 공간 데이터를 전달받아 레이어로 표출한다. 특히 점(Point) 형태의 공간 객체를 축척에 따라 효율적으로 표현하기 위해 구자용(2026)이 적용하였던 동적 클러스터 맵 표현기법을 적용하였다.
소축척 화면(전국 단위 시점)에서는 인접한 점 객체들이 하나의 클러스터로 통합 표출되며, 포함된 객체 수에 따라 클러스터의 스케일과 색상이 동적으로 표현된다. 반면 대축척 화면(확대 시점)으로 전환될 경우 개별 점 객체로 분기되어 표현된다. 사용자가 클러스터를 클릭하면 해당 영역으로 지도가 확대되어 세부 클러스터가 노출되고, 개별 점 객체 클릭 시 해당 피처의 속성 정보가 팝업 형태로 구현되도록 설계하였다.
2) 백엔드 오케스트레이터
백엔드 오케스트레이터는 사용자 화면 뒤편에서 데이터 전처리, 보안 통신, AI 모델 연동을 관장하는 핵심 제어부이다. 사용자가 직접 눈으로 보면서 데이터를 입력하는 화면을 프론트엔드(frontend)라고 하며, 그 뒤에서 실질적인 작업을 처리하는 엔진을 백엔드(backend)라고 한다. 클라이언트 뷰(index.html)로부터 사용자 요청이 수신되면, 질의 의도를 명확히 전달하기 위해 프롬프트 엔지니어링 기반의 구조화된 프롬프트를 생성하여 LLM으로 전송하고, 반환된 추론 결과를 가공하여 클라이언트로 재전송한다. 본 연구에서는 백엔드 오케스트라 기능을 하는 자바스크립트 파일을 server.js라는 이름으로 작성하였다.
백엔드 오케스트레이터는 자바스크립트 환경에서 클라이언트 요청 파싱, 데이터 전처리, 프롬프트 생성, 예외 우회 라우팅을 수행한다. 특히 본 연구에서는 프롬프트 엔지니어링 기법인 ‘페르소나(Persona) 설정’과 ‘Few-shot 학습’을 적용하였다. 이를 통해 사용자 요청이 LLM에 명확히 전달되도록 유도하고, 추론 결과가 웹 GIS 상에 즉시 렌더링 가능한 데이터 형식으로 반환되도록 제약하였다. 프롬프트에 적용된 페르소나의 설정 사례는 다음과 같다.
이러한 페르소나를 부여함으로 생성형 AI가 공간 데이터 분석 및 MapLibre GL JS 제어 도구에 특화된 문맥으로 추론을 수행하도록 유도하였다. 이와 함께 아래와 같은 구체적 반환 규격 예시(Few-shot)를 프롬프트에 명시하였다.
[필터 작성 규칙 - 매우 중요!]
MapLibre GL v2.x 연산자 호환성을 위해 아래 규격을 반드시 엄수하라.
1. 지역 속성 필터:
- address 필드에서 "in" 연산자로 검색하라.
- 예시: ["in", "여수", ["get", "address"]]
2. 조건 조합 ("all"):
- 지역과 유형 조건이 동시에 들어온 경우 반드시 "all" 배열로 묶어서 반환하라.
- 예시: ["all", ["in", "여수", ["get", "address"]], ["in", "문화유산", ["get", "category"]]]
...
이처럼 구체적인 출력 포맷과 구문 예시를 제시함으로써 LLM이 웹 GIS에서 지도화할 수 있는 JSON 형태로 응답하도록 체계화하였다. 추론 결과가 반환되면 백엔드 오케스트레이터는 동적 데이터 평가 및 결함 검증을 거친 후, 자연어 질의에 대응하는 공간 좌표 데이터를 최종 반환한다. 반환된 문자열 데이터는 정규 표현식 및 문자열 파싱 과정을 거쳐 정제된 GeoJSON 포맷으로 변환된다.
아울러 AI API 연동 과정에서 발생할 수 있는 네트워크 장애나 트래픽 폭주에 대응하기 위해 예외 처리 및 비상 우회(Fallback) 라우팅 로직을 탑재하여 시스템 운영 안정성을 확보하였다.
3) 대규모 언어 모델 레이어(LLM Engine)
본 연구에서는 생성형 인공지능 구현을 위한 추론 레이어로 Google의 “gemini-3.6-flash” 모델을 이용하였다. Gemini LLM은 단순한 자연어 처리를 넘어, 공간 맥락 파악 및 지도 제어 구문 생성기로서 작동한다. 구체적인 작동 과정은 다음과 같다. 먼저 지리적 자연어 맥락을 추출한다. 질의어에서 행정구역이나 지명이 포함되어 있거나 특정 주제(문화유산 등)가 포함되어 있을 때 이를 이용하여 지리적 추론이 이루어진다. 또한 추론 결과의 지리적 영역을 지도의 형태로 표현하기 위해 해당 영역의 중심 좌표(“center”)와 줌 레벨(“zoom”)을 산출한다. 최종적으로 추론 결과를 공간 연산용 조건식으로 변환하고, 이를 GeoJSON 구조로 정규화하여 출력한다.
3. 시스템에서의 질의어 처리 과정
본 연구에서 구축한 Web GIS 아키텍처 기반의 자연어 질의를 처리하는 과정은 그림 2와 같다. 사용자가 클라이언트 뷰를 통해 자연어로 질의를 입력하면, 해당 요청은 백엔드 오케스트레이터로 전달되어 데이터 정제 및 질의 프롬프트 구성을 거친 후 LLM 엔진으로 수신된다. 전달된 질의 내용은 LLM에서 생성형 인공지능 엔진을 통해 추론을 수행하고, 그 결과는 다시 백엔드 오케스트레이터로 재전송되어 GeoJSON 형태로 파싱되며, 클라이언트 뷰를 통해 최종 지도로 표출된다.
구체적인 질의어 처리 과정은 다음과 같다. 먼저 사용자가 입력한 질의는 자연어 형태로 백엔드 오케스트레이터에 전송된다. 백엔드 오케스트레이터는 자연어 형태로 전달받은 질의 데이터를 정제하고 페르소나 및 출력 포맷과 구문 예시 등을 포함한 프롬프트 텍스트를 작성하고 이를 LLM으로 전송한다.
작성된 프롬프트 텍스트는 LLM 엔진(Gemini API)으로 전달된다. LLM 엔진은 지도 제어 파라미터와 분석 해설이 포함된 응답을 JSON 및 텍스트 형태로 생성한다. 수신된 반환값은 백엔드 오케스트라에서 데이터 구조 및 유효성 검증을 거치며, 검증을 통과한 파라미터만이 클라이언트 뷰로 전달된다.
최종적으로 클라이언트 뷰는 수신된 JSON 파라미터를 판독하여 최적의 중심 좌표와 줌 레벨로 지도 카메라를 이동시키고, 검색된 공간 객체를 지도상에 점 데이터의 형태로 표출한다.
IV. 생성형 AI를 이용한 관광 정보 GIS 서비스 구현 및 평가
1. 시스템 구현 환경 및 공간 데이터 구축
본 연구에서는 개발한 생성형 AI 지원 아키텍처를 기반으로 웹 GIS 서비스 시스템을 구현하였다. 백엔드 오케스트레이터의 동적 구동 및 테스트 환경을 구축하기 위해 GitHub에서 제공하는 클라우드 개발 환경인 GitHub Codespaces를 활용하였다.
GitHub Codespaces는 가상화된 컨테이너 환경에서 Node.js 기반의 자바스크립트 백엔드 오케스트라를 구동할 수 있는 환경을 지원한다. 이를 통해 클라우드 리포지토리(Repository) 내부에서 백엔드 오케스트레이터 구동을 위한 자바스크립트 실행 파일과 Gemini API Key 등이 수록된 환경변수(.env) 파일을 안전하게 관리하고 제어할 수 있다.
또한 제공되는 터미널 콘솔을 통해 서버 애플리케이션을 실행하고 관리할 수 있다. 본 연구에서는 백엔드 오케스트레이터 기능을 하는 자바스크립트 프로그램을 server.js로 구현하였으며, 터미널 상에서 다음의 명령어를 실행하여 백엔드 오케스트레이터 서비스를 활성화하였다.
이러한 명령어를 통하여 server.js 라는 자바스크립트 프로그램이 작동되어 백엔드 오케스트레이터 역할을 하게 된다.
본 연구에서 개발한 생성형 AI 지원 웹 GIS 서비스의 사례로 관광정보 GIS 서비스를 구축하였다. 데이터셋은 문화빅데이터플랫폼(https://www.bigdata-culture.kr)에서 제공하는 ‘국내 지역별 관광명소 데이터’를 수집하여 가공・활용하였다. 이 데이터는 매년 전국 주요 관광명소의 지리적 위치와 상세 속성 정보를 조사하여 구축되는 데이터이다.
데이터셋은 국보, 유적지, 식물원, 지역축제, 캠핑장 등 총 15개 세부 범주로 세분화된 53,886건의 전국 관광명소 데이터를 포함하며, 각 객체별 위치 정보(위도・경도 좌표)와 속성 정보를 CSV 포맷으로 제공한다.
본 연구에서는 데이터 처리 효율성과 시각화 명확성을 위하여 기존 세부 범주를 상위 개념인 3개 대분류(역사/문화유산, 자연/휴양/관광명소, 여행/행사/안내)로 재분류 체계화하였다. 이후 각 객체의 관광 명소명, 주소, 대분류, 중분류 속성 필드를 추출・정제하고 QGIS를 이용하여 공간 분석에 표준적으로 활용되는 GeoJSON 포맷으로 변환하였다. 최종 가공된 GeoJSON 데이터셋은 GitHub 저장소에 업로드되어 생성형 AI 기반 관광정보 웹 GIS 서비스의 공간 데이터베이스로 활용되었다.
2. 생성형 AI를 지원하는 관광정보 웹 GIS 서비스 구현
문화 빅데이터 플랫폼에서 제공하는 국내 관광명소 데이터를 가공하여 GeoJSON 파일로 변환하고, 이 데이터를 이용하여 생성형 AI를 지원하는 웹 GIS 서비스를 구현하였다. 본 연구에서 개발한 웹 GIS 인터페이스의 초기 화면은 그림 3과 같다. 그림과 같이 초기 화면에는 우리나라 전체 화면이 소축척으로 나타나기 때문에 각각의 관광명소 지점들은 군집화되어 클러스터 맵 형태로 나타난다. 여기서 마우스 휠 등을 이용하여 화면을 확대하거나 클러스터를 클릭하면 해당 부분이 확대되어 세부 클러스터 또는 각각의 관광명소 지점들이 나타난다. 관광명소 데이터는 역사/문화유산, 자연/휴양/관광명소, 여행/행사/안내로 구분하여 각각 다른 색상으로 표현되며 지도의 우측 하단에 범례를 표기하였다. 그리고 화면 좌측 상단에 생성형 AI를 이용하여 자연어를 입력할 수 있는 입력창을 표현하였다. 그림 3의 예시와 같이 검색창에서 “순천시의 문화유산 찾아줘” 등과 같은 자연어 형식의 요청사항을 입력하여 “요청” 화면을 누르면 해당 요청사항을 Google Gemini LLM에서 처리하여 결과를 지도의 형태로 보여준다.
그림 4는 요청사항 입력창에서 “순천시 데이터 보여줘”라는 요청사항을 입력했을 때의 결과 화면이다. 웹 화면에서 입력한 요청사항에서 “순천시”라는 지역이 언급되었기 때문에 백엔드 오케스트라에서는 행정구역 이름이 “순천시”인 지역을 검색하고 그 결과는 JSON 형식으로 반환하라는 프롬프트가 작성된다. 또한 관광 데이터의 종류는 별도로 지정하지 않았기 때문에 순천시 지역의 모든 관광명소 지점들을 검색하는 프롬프트가 작성된다. 작성된 프롬프트는 Gemini LLM에 전달되고 검색과 추론을 수행한다. 검색 결과는 백엔드 오케스트라에 반환되어 JSON 형식으로 변환되며, 이를 클라이언트 뷰에서 검색 결과에 해당하는 지역을 확대하고 기호화하여 지도로 표현한다. 그림 4(a)는 이러한 과정을 거쳐 나타난 결과 화면이다. 결과 지도에서 나타나는 영역은 순천시 지역이 확대되어 표현되었으며, 순천시의 모든 관광명소 지점들이 색상으로 구분되어 지도에 표현된다. 또한 검색된 순천시의 관광명소는 검색창 하단에 리스트의 형태로 나타난다. 또한 지도에 나타난 관광명소의 한 지점을 클릭하면 그림 4(b)와 같이 해당 지점의 관광명소에 대하여 이름, 분류명, 주소 등의 속성정보가 팝업 창으로 나타난다.
그림 5는 “포항시의 문화유산 보여줘”라는 요청사항을 입력했을 때의 결과 화면이다. 이 경우 “포항시”라는 지역 이름과 “문화유산”이라는 데이터 종류를 모두 언급하였기 때문에 백엔드 오케스트라에서 지역과 관광명소 종류를 모두 검색할 수 있는 프롬프트가 작성되며, 이를 LLM으로 전송한다. LLM에서는 포항시의 관광명소 중에서 대분류가 “역사/문화유산”에 해당하는 데이터를 검색하고 그 결과를 다시 백엔드 오케스트라에 반환하여 JSON 형태의 데이터를 작성한다. 그림 5(a)는 이러한 데이터 검색 과정을 거친 결과 화면이다. 그림과 같이 포항시의 역사/문화유산 분류에 해당하는 관광 명소들이 화면 왼쪽의 리스트와 함께 지도의 형태로 나타난다. 검색 결과 리스트 창에서 하나의 문화유산을 클릭하면 그림 5(b)와 같이 해당 문화유산이 위치한 지점이 확대되어 그 속성정보와 함께 표현된다. 화면 왼쪽의 “초기화” 버튼을 클릭하면 그림 3의 초기 화면으로 복원된다. 이와 같이 웹 GIS를 이용하여 요청사항을 입력하면 생성형 AI를 통하여 자연어 처리와 데이터 검색을 수행하고 그 결과를 지도의 형태로 표현할 수 있다.
3. 생성형 AI 지원 웹 GIS 서비스 평가 및 의의
본 연구에서는 LLM에 기반하여 생성형 AI를 지원하는 대화형 웹 GIS 인터페이스를 개발하고 우리나라 관광명소 데이터를 적용하여 서비스를 구현하였다. 구현된 웹 GIS 서비스를 이용하여 생성형 AI 지원 시스템의 구현 성능과 기능성을 평가한 결과는 다음과 같다. 먼저 본 시스템은 자연어를 기반으로 한 공간 질의를 처리할 수 있는 성능을 구현하였다. 예를 들어 “포항시 문화유산 보여줘”와 같은 자연어 명령을 통하여 생성형 AI를 통하여 사용자의 의도를 파악하고 그 결과를 JSON에서 이해할 수 있는 검색식으로 작성하여 공간 필터링을 수행할 수 있었다. 둘째로는 시각적 가독성을 향상시켰다. 웹 GIS 서비스의 초기 화면에는 점 데이터로 표현되는 관광명소의 개수가 지도 표현 영역에 비하여 많기 때문에 인접한 점 데이터는 합쳐서 클러스터로 표현하는 클러스터 맵 형태를 지원한다. 그러나 생성형 AI에 요청사항을 전송한 결과 화면에서는 검색 결과만을 표현하도록 함으로써 시각적으로 간섭이 일어나지 않도록 구현하였다. 셋째는 생성형 AI를 통하여 검색된 결과 지도를 하나의 화면에 표현하기 위하여 지도의 영역을 조정하였으며, 특히 검색 결과 리스트에서 특정 항목을 클릭할 경우 해당 지점으로 확대하는 등 지도 영역의 시점을 동적으로 조정하는 기능을 구현하였다. 또한 프롬프팅 엔지니어링에서 이용하는 페르소나와 few-shot 기법을 이용하여 생성형 AI의 프롬프팅 과정에서 지역명이나 분류명을 예외없이 검색할 수 있게 되도록 하였다. 이와 같이 본 연구에서 개발한 생성형 AI를 지원하는 웹 GIS 인터페이스는 시스템 성능과 지도 표현 측면에서 어느 정도 향상된 기능을 보여주고 있다. 그러나 생성형 AI가 가지고 있는 환각현상이나 검색 오류 등의 문제는 여전히 남아 있다. 예를 들어 “경주시의 국보를 보여줘”로 검색하는 경우 경주시의 국보만이 아니라 경주시의 모든 문화유산이 검색되는 경우가 나타난다. 따라서 생성형 AI의 프롬프트 작성과정에서 보다 세심한 수정과 보완이 필요하다.
본 연구에서는 대규모 언어 모델(LLM)과 오픈소스 웹 GIS 라이브러리(MapLibre GL JS)의 결합을 통해 생성형 AI 기반 공간정보 서비스의 가능성을 실증하였다는 점에서 의의가 있다. 구체적으로는 먼저 자연어 처리가 가능하도록 사용자 인터페이스를 개발함으로써 비전문가도 웹 GIS를 활용할 수 있도록 진입 장벽을 완화하였다. 전문적인 지식이 필요한 공간정보 처리 알고리듬을 자연어 기반의 대화형 인터페이스로 전환함으로써, 비전문가도 자연어 명령만으로도 공간 필터링 및 시각화 서비스를 활용할 수 있는 기틀을 마련하였다. 둘째로는 LLM을 이용하여 생성형 AI의 질의 결과를 웹 GIS에서 지도의 형태로 제공할 수 있는 기반을 마련하였다. 시스템 아키텍처를 클라이언트 뷰와 백엔드 오케스트레이터로 구분하여 생성형 AI의 검색 결과를 지도의 형태로 전달 할 수 있는 렌터링 파이프라인을 제시하였다. 마지막으로 본 연구에서 개발한 데이터 처리과정을 활용한다면, 국가 및 지방기관에서 활용되고 있는 다양한 유형의 공간정보를 생성형 AI 기반으로 결합하여 다양한 데이터 분석과 서비스가 가능할 것으로 사료된다.
V. 결론 및 고찰
본 연구에서는 최근 급격히 확산되고 있는 대규모 언어 모델(LLM) 기반의 생성형 인공지능을 웹 GIS에 접목하기 위한 대화형 인터페이스를 개발하였다. 기존 웹 GIS 인터페이스가 가지고 있는 복잡한 메뉴 조작, 레이어 설정, 조건문 검색 등의 한계를 극복하고자, 사용자 중심의 자연어 대화형 웹 GIS 환경을 구현하고 그 성능을 평가하였다. 이를 위해 클라이언트 뷰, 백엔드 오케스트레이터, LLM API로 구성된 시스템 아키텍처를 설계하였으며, 생성형 AI 모델인 Google Gemini를 활용하여 자연어 질의 처리 및 동적 지도 시각화 환경을 구축하였다. 본 연구의 구체적인 결과는 다음과 같다.
첫째, 생성형 AI의 자연어 처리 능력을 공간정보 처리 프로세스와 연계하여 자연어 기반 공간 제어 인터페이스의 구축이 가능함을 확인하였다. 구체적으로 사용자의 자연어 명령어를 백엔드 오케스트레이터에서 프롬프트와 결합하여 LLM으로 전달하고, JSON 형식의 데이터를 반환받도록 하여 LLM과 웹 GIS 간 공간 데이터를 실시간으로 연동하고 처리하도록 구현하였다.
둘째, 생성형 AI를 통해 처리된 결과를 웹 GIS에서 동적으로 렌더링할 수 있음을 확인하였다. 이러한 지도 렌더링을 위해 검색 결과 영역을 자동으로 인식하고 지도 시점의 자동 이동 기능을 구현하였다. 이를 통해 생성형 AI의 검색 결과를 지도상에 동적으로 표현함으로써 사용자의 공간적 이해도와 시각적 가독성을 크게 향상시켰다.
셋째, LLM의 언어적 맥락 파싱 능력과 웹 GIS의 공간정보 제어 능력을 유기적으로 결합하여 GeoAGI 구현을 위한 추진 방향을 제시하였다. 생성형 AI가 단순한 텍스트 응답에 그치지 않고 지도 인터페이스를 실시간 제어하는 ‘자율형 공간 에이전트(Spatial Agentic Workflow)’로서 적용될 수 있음을 제시하였다.
마지막으로, 사용자 친숙도가 높은 자연어 인터페이스를 통해 비전문가도 GIS에 용이하게 접근할 수 있는 대중화 기반을 마련하였다. 복잡한 GIS 전용 메뉴 조작이나 공간 SQL 작성 없이도 자연어 명령만으로 공간 데이터를 검색하고 그 결과를 지도로 표현할 수 있음을 확인하였으며, 이를 통해 공간정보 활용의 기술적 진입장벽을 낮추고 대중적 공간 의사결정을 지원하는 데 기여하였다.
그러나 본 연구는 자연어 처리를 통한 웹 GIS 서비스의 가능성을 확인했음에도 불구하고, 보다 고도화된 공간정보 처리 측면에서는 다음과 같은 한계가 있다. 우선, 현재 시스템은 단순 자료 검색과 속성 기반 공간 필터링, 위치 탐색, 화면 이동 등의 기능에만 집중되어 있어 전문적인 GIS 공간분석 기능까지는 제공하지 못하고 있다. 따라서 향후 연구에서는 버퍼 분석, 중첩 분석, 최적 경로 탐색 등 전문적인 GIS 연산을 LLM 명령으로 실행할 수 있는 전문적인 GIS 연산 엔진과의 통합 확장이 요구된다. 한편 생성형 AI의 한계로 지적되는 환각(Hallucination) 현상 및 응답 지연 문제에 대한 보완 연구 역시 필요하다. AI가 허위 정보를 사실처럼 생성하는 환각 현상을 제어하기 위해 프롬프트 엔지니어링의 정교화, 구조화된 JSON 스키마 강제, 클라이언트 환경에서의 2차 조건 검증 로직 도입 등 시스템적인 검증 메커니즘을 강화할 필요가 있다.
본 연구는 복잡한 GIS 데이터 처리 과정을 자연어로 대체하여 누구나 공간정보에 손쉽게 접근할 수 있는 환경을 개척했다는 점에서 의의가 있다. 본 연구 결과가 생성형 AI와 공간정보의 유기적 결합을 이끄는 GeoAGI 연구 활성화의 계기가 되기를 기대한다.







