블로그 목록
NL→SQLText-to-SQL온톨로지자연어 데이터 조회IRISTeams 봇PII 마스킹기업용 AI

자연어로 DB 를 묻는다는 것 — IRIS 온톨로지 우선 설계, 운영 편

「올해 이직률이 가장 높은 부서는?」을 SQL 로 바꾸는 플랫폼 IRIS 의 운영 편. 온톨로지 우선 설계, 3 Tier 쿼리 처리, 실제 데이터를 LLM 에 보내지 않는 구조, 테스트 65/65.

2026년 9월 17일7 min read

앞선 글 스키마가 아니라 개념으로 가 설계 이야기였다면, 이 글은 IRIS 를 실제로 돌리며 정한 것들의 기록입니다.

문제

직장 내에서 데이터 기반 의사결정을 내리려는 임원이나 실무자에게 가장 큰 장애물은 기술적 한계가 아니라 접근성의 부재입니다. "올해 이직률이 가장 높은 부서는 어디인가?"와 같은 단순한 질문을 해결하기 위해 SQL 쿼리를 작성해야 하지만, 이를 직접 수행할 수 없는 사용자는 매번 IT 팀에 요청을 보내야 합니다. 이러한 프로세스는 즉각적인 인사이트를 얻는 것을 방해하며, 답변을 받기까지 며칠의 대기 시간을 발생시킵니다. 데이터 조회의 병목 현상은 비즈니스 민첩성을 저해하는 주요 원인이 됩니다.

왜 어려운가

데이터베이스 스키마는 컬럼명과 데이터 타입만 정의되어 있을 뿐, '이직률' 같은 비즈니스 개념을 포함하지 않습니다. 이 간극을 메우기 위해 누군가는 비즈니스 용어를 데이터 구조로 번역하는 복잡한 작업을 수행해야 합니다. 또한, 대규모 언어 모델(LLM)에 스키마와 실제 데이터를 모두 전송하는 방식은 비용 증가와 개인정보 보호 문제를 야기합니다. 더 큰 문제는 동일한 질문에 대해 LLM이 매번 다른 SQL을 생성할 수 있어 결과의 재현성을 보장하기 어렵다는 점입니다.

우리가 한 것

비즈니스 개념과 DB 스키마를 분리하기 위해 YAML 형식의 온톨로지를 설계했습니다. 도메인 변경 시 온톨로지만 수정하면 되므로 시스템 유지보수성이 향상됩니다. 쿼리 처리는 세 단계로 나누어 효율성을 극대화했습니다. Tier 1에서는 골든 쿼리 정규화 매칭을 수행하고, Tier 1.5에서는 임베딩 유사도를 활용하며, Tier 2에서만 LLM을 통해 의도를 파싱하고 SQL을 생성합니다.

LLM에는 온톨로지 개념 목록과 파싱 결과만 전달하여 실제 데이터가 외부로 유출되지 않도록 통제했습니다. 응답 포맷터 단계에서 집계값만 PII 마스킹을 거쳐 전달함으로써 보안 리스크를 최소화했습니다. 사용자는 Microsoft Teams 봇(Adaptive Card)을 통해 기존 업무 채널에서 바로 질문할 수 있습니다. 온톨로지 자기강화 루프를 도입하여 새로운 별명과 표현을 승인하거나 거절하며 운영 중 어휘를 지속적으로 축적합니다. 비교, 추세, 코호트, 순위 분석을 위한 SQL 생성기와 4단계 체인의 HR 에이전트를 구축하여 복잡한 분석도 지원합니다.

3 Tier 의 순서에는 이유가 있습니다. 자주 묻는 질문은 골든쿼리로 고정해 같은 질문에 같은 SQL 이 나오게 하고, 표현만 다른 질문은 임베딩 유사도로 골든쿼리에 붙이며, 그래도 잡히지 않는 새 질문만 LLM 에 보냅니다. 그래서 LLM 호출이 줄고 답이 재현됩니다.

숫자로 보면

지표값비고
테스트 통과율65/65Phase A~D 전 구간 통과
실제 데이터 LLM 전송 건수0건온톨로지 개념·집계값만 전송
파일럿 기간4주제안 기준
Teams 봇 배포일2026-03-11Teams 연동 완료

이 글이 말하는 것

자연어 데이터 조회 시스템의 핵심은 모델의 성능이 아니라 온톨로지의 정교함에 있습니다. 온톨로지를 먼저 탄탄하게 구축하면 LLM은 마지막 단계의 의도 파싱만 담당하게 되어 안정성과 보안이 확보됩니다. 독자는 내일 임원이 자주 묻는 질문 20개를 수집하고, 각 질문의 명사가 데이터베이스의 어느 컬럼과 연결되는지 표를 만들어 보십시오. 이 표가 온톨로지의 첫 번째 판본이 될 것입니다. 표를 만들다 보면 같은 명사가 팀마다 다른 컬럼을 가리키는 경우가 나오는데, 그 충돌을 정리하는 일이 곧 온톨로지 설계입니다.

더 읽기


CoreCode 는 호치민에 법인을 둔 한국 개발팀입니다. 기업용 AI · 베트남 진출 기업의 웹·앱 · 토스 앱인토스 미니앱을 만들며, 데모가 아니라 운영되는 것을 납품합니다. 지금 상태를 알려 주시면 30분 상담에서 수치로 정리해 드립니다 — 30분 상담 신청.