한 줄 소개
메타볼레(Metabole) — 상권 데이터 구조화 및 창업 분석 Hybrid RAG용 Agent 개발.
💡 쉽게 말하면: “이 동네에서 이 장사를 시작해도 될까?”라고 물으면, 서울 상권 공공데이터를 뒤져서 근거를 붙여 답해주는 AI를 만드는 프로젝트입니다. 검색 정확도는 Recall@5 91.5%, 응답 속도는 40% 개선이 목표입니다. 낯선 용어는 용어 정의에 쉬운 말로 풀어두었습니다.
코로나를 지나며 상권은 두 종류의 힘에 흔들려 왔습니다. 하나는 거리두기나 영업제한처럼 밖에서 갑자기 닥치는 충격이고, 다른 하나는 유동인구·임대료·경쟁 점포 수처럼 그 동네가 원래 가지고 있는 체력입니다. 창업을 준비하는 사람 눈에는 이 둘이 뒤섞여 보인다는 게 문제입니다. 그래서 저희는 공공데이터를 AI가 읽기 좋은 조각으로 정리(Chunking)해 검색 파이프라인(Hybrid RAG)에 올리고, “이 지역에서 이 업종으로 창업해도 되는가”에 근거를 들어 답하는 에이전트를 만듭니다.
기본사항
| 항목 | 내용 |
|---|---|
| 영문명 | Hybrid RAG for Structuring Commercial District Data and Agent Development for Entrepreneurship Analysis |
| 팀명 | Beyond Facade / 정책 공시 RAG 파이프라인 |
| 팀원 | 김충식 · 이은상 · 신채연 (3명) |
| 개발 기간 | 2026년 8월 20일 ~ 2026년 10월 27일 (10주) |
| 깃허브 | https://github.com/beyondfacade/metabole.beyondfacade.cloud |
| 데모 사이트 | https://metabole.beyondfacade.cloud |
지역 범위 — 왜 서울만 하는가
추정매출, 시간대별 생활인구, 개폐업률까지 빠짐없이 갖춘 공공데이터는 서울시 상권분석서비스가 유일합니다. 그래서 범위를 서울 25개 구로 잡았습니다.
다만 나중에 수도권이나 전국으로 넓힐 길은 미리 열어 둡니다. 전국 어디서나 구할 수 있는 데이터(LOCALDATA·상가정보·실거래가)로 만드는 코어 지표와, 서울에서만 나오는 데이터로 만드는 확장 지표를 코드 단계에서부터 분리합니다. 이렇게 해 두면 지역을 넓힐 때 코어 지표는 데이터를 새로 구하지 않아도 그대로 돌아갑니다.
타겟 업종 (10종)
업종을 고른 기준은 “손님이 왜 오는가(수요 동인)”입니다. 핵심 3종인 카페·노래방·부동산은 손님이 오는 이유가 서로 완전히 다른 세 유형의 대표 선수입니다. 하나의 분석 모델이 이 셋 모두에서 작동한다면, 나머지 업종으로도 일반화할 수 있다고 볼 근거가 생깁니다.
| 수요 동인 유형 | 업종 | MVP 역할 |
|---|---|---|
| 일상소비형 (경쟁밀도 민감) | 카페, 편의점, 미용실 | 기준 모델 |
| 여가형 (외생충격 민감) | 노래방, PC방, 헬스장, 당구장 | 특이변수 검증 |
| 경기민감형 (거시변수 민감) | 부동산(공인중개사무소) | 반례·일반화 검증 |
| 인구구조 민감형 | 학원, 어린이집 | 미래 인구 추계·정원/현원 |
- 학원은 조금 특별하게 다룹니다. “학원” 한 업종을 교습계열과 대상 학년, 두 개의 축으로 쪼개서 봅니다. 교습계열은 서울시 학원·교습소 데이터(NEIS 원천)의 원본 필드를 그대로 쓰고, 대상 학년은 교습과정명을 LLM으로 읽어서 뽑아냅니다.
- 업종을 10종까지 넓히는 진짜 이유는 업종 사이에 오가는 신호입니다. 어린이집이 문을 닫으면 몇 년 뒤 초등 학원 수요가 줄어드는 선행지표가 되고, 편의점이 새로 들어서는 곳은 이미 검증된 상권이라는 뜻이며, PC방·노래방·당구장 세 업종을 겹쳐 보면 세대별 여가 수요가 드러납니다.
분석 변수 체계
이 에이전트의 핵심 아이디어는 변수를 두 축으로 나눠서 보는 것입니다.
💡 쉽게 말하면: 가게가 망하는 이유는 크게 두 가지입니다. 동네 자체가 장사가 안 되는 곳이었거나(상권의 기초 체력), 동네는 괜찮았는데 코로나나 금리 같은 외부 충격을 세게 맞았거나. 이 둘을 따로 보여줘야 창업자가 폐업의 진짜 원인을 구분할 수 있고, 바로 이것이 이 에이전트의 차별점입니다.
- 전통 변수 8종 (상권의 기초 체력): 유동인구, 배후인구, 경쟁점포 밀도, 개폐업률·생존율, 임대료·공실률, 접근성, 추정매출, 집객시설
- 특이변수 4계층 (외부 충격): ① 정책·규제(거리두기, 최저임금, 주52시간 등) ② 거시경제(금리, 물가, 에너지 요금) ③ 사회·트렌드(무인점포, 홈트 — 뉴스에 얼마나 오르내리는지가 센서 역할) ④ 지역 이벤트(GTX 개통, 재개발, 대형시설 개폐점)
변수를 다룰 때 지키는 원칙도 세워 두었습니다.
- 재난지원금은 폐업 시점을 뒤로 미룹니다. 지원금이 끊기면 폐업이 한꺼번에 몰리는 “폐업 절벽”이 생기는데, 이 왜곡을 보정합니다.
- 외국인 거주 인구는 “상권이 나빠진다”는 지표가 아니라 “수요의 구성이 달라진다”는 지표로만 씁니다. 업종 타겟과 인구 구성이 서로 맞는지를 점수화하고, 차별적인 출력은 금지 규칙으로 명시해 막습니다.
- 뉴스 데이터(빅카인즈 1순위, 네이버 뉴스 API 보조)는 특이변수를 감지하는 센서이자, 에이전트가 답변할 때 내미는 근거 문서입니다.
서비스 설계
브이월드(VWorld) 지도 시각화
분석 결과는 지도 위에서 봅니다. 브이월드에서 배경지도(WMTS), 행정동 경계(WFS), 주소↔좌표 변환(지오코딩)을 받아오고, 폐업률·성장률 같은 지표는 LOCALDATA로 직접 계산해서 그 위에 얹는 구조입니다.
- 행정동별로 색을 칠한 지도(폐업률/성장률) + 업종 토글
- 점포 마커 클러스터링, 상권 카드(지표 요약 + 에이전트 분석 호출)
- 2019년부터 현재까지 시간을 되감아 보는 슬라이더로, 코로나 충격과 회복 과정을 한눈에 봅니다
금융 연계
“들어가도 되나?”(분석)에 답했다면 다음 질문은 “돈은 어떻게 마련하나?”(자금 조달)입니다. 이 흐름을 끊지 않고 하나로 잇습니다.
- 정책자금 공고 요약 카드 + 원문 링크 (MVP): 기업마당·중소벤처24·K-Startup 세 곳의 API로 시작합니다. 공고문에서 대상 업종·지역·한도·금리·마감일을 LLM으로 뽑아 카드로 보여줍니다. 신청 대행이나 중개는 하지 않습니다(금소법 경계 준수).
- 월세 vs 매입 대출 계산기 (MVP, 계산까지만): 실거래가로 매입가를 추정하고, 은행연합회 공시 금리(1군/2군 평균)와 스스로 입력한 신용도, 취득세 같은 부대비용까지 넣어 손익분기를 계산해 줍니다.
- 금융기관 제휴나 공제 연계는 MVP 이후 과제로 미룹니다.
주요 공공데이터 소스
- 상권 코어: 소진공 상가정보, 행안부 LOCALDATA 인허가(개폐업), 서울시 상권분석서비스, 서울 생활인구, 국토부 실거래가
- 보조: 한국부동산원 임대동향, 한국은행 ECOS, 은행연합회 공시 금리, 국세청 100대 생활업종, 지하철 승하차, KOSIS, 학원·교습소 정보(NEIS), 주민등록 인구통계, 외국인주민 현황, 어린이집정보공개포털
- 정책자금 공고 (API 검증 완료): 기업마당, K-Startup, 중소벤처24, 보조금24, 온통청년 — 5곳 API 확인 / 소진공·지역신보·서울시는 스크래핑 후보
- 뉴스: 빅카인즈(한국언론진흥재단), 네이버 뉴스 API
MVP 일정 (10주)
| 주차 | 내용 |
|---|---|
| 1~2주 | 공공데이터 API 검증, 업종코드 매핑표(10종), ERD 설계 |
| 3~4주 | 데이터 수집 파이프라인 + Fractal 11-File Set 구현 |
| 5~6주 | 전통 변수 산출 로직 + 상권×업종 분석 |
| 7~8주 | 특이변수(코로나·금리) 통합, Hybrid RAG Chunking |
| 9~10주 | 에이전트 응답 품질 평가(Recall@5 목표 91.5%), 데모 배포 |
MVP에서 하지 않는 것: 서울 외 지역(수도권 확장 포함), 확정 10종 외 업종, 권리금 등 비공공 데이터, 매출 예측 모델, 금융기관 제휴.