Skip to content

inseoul-platform/InSeoul

Repository files navigation

🚀 인서울(InSeoul) 프로젝트: 데이터로 설계하는 내 집 마련 최단 경로

"막막한 서울 내 집 마련, 감이 아닌 데이터로 확신을 드립니다." 안녕하세요, 인서울 프로젝트의 PM입니다. 우리 서비스는 복잡한 부동산 시장에서 사용자가 길을 잃지 않도록, 개인의 재무 상태와 시장 변수를 결합하여 정교한 '내 집 마련 시뮬레이션'을 제공하는 SaaS 플랫폼입니다.


🏗️ 프로젝트 개요

많은 이들이 서울 입성을 꿈꾸지만, 대출 규제(LTV/DSR)와 시시각각 변하는 금리 앞에 좌절합니다. **인서울(InSeoul)**은 마이데이터 연동 없이도 사용자가 직접 입력한 데이터를 기반으로 **'골든 크로스(자산 성장 곡선과 매수 가능 가격이 만나는 지점)'**를 예측하고, 현실적인 **'징검다리 전략'**을 제시합니다.


✨ 핵심 기능 (Key Features)

1. 스마트 위저드 (Smart Wizard)

사용자의 재무 상태를 3단계로 정밀하게 진단합니다.

  • 현재 자산: 예적금, 주식, 기존 부동산 등 가용 자산 파악.
  • 현금 흐름: 월 수입과 지출 분석. (30대 직장인 평균 생활비 등 스마트 가이드 제공)
  • 목표 설정: 희망하는 서울 자치구 및 아파트 평형 선택.

2. 골든 크로스 시뮬레이터

금융 공학 알고리즘을 통해 D-Day를 산출합니다.

  • FV(Future Value) 공식: 현재 저축액과 예상 수익률을 바탕으로 미래 자산 가치 계산.
  • 현실적 한도 계산: LTV, DSR 규제를 반영하고 취득세 등 거래 비용(약 3.5%)을 미리 산입하여 '실제 매수 가능 금액' 제시.

3. 리스크 관제탑 (Risk Control Tower)

다양한 시나리오에 따른 스트레스 테스트를 수행합니다.

  • 금리 인상 시 대출 상환액 변동 시뮬레이션.
  • 부동산 가격 급등/하락에 따른 D-Day 변화 추적.

4. 징검다리 리포트 (Stepping Stone Strategy)

목표 지역 진입이 당장 어려울 경우, 자산 형성의 중간 거점이 될 수 있는 **경기도 주요 요충지(성남, 광명, 과천 등)**의 대안 단지를 추천합니다.


🛠️ 기술적 원리 (Algorithm & Logic)

📈 D-Day 산출 로직

내 집 마련 가능 시점은 '목표 주택의 미래 가격'이 '미래 가용 자산(자기자본 + 대출 한도)'보다 작아지거나 같아지는 지점을 추적합니다.

  • Target Price: 목표 지역의 현재 시세에 예상 상승률을 반영한 미래 가치.
  • Available Capital: (현재 자산 * 복리 수익률) + (월 저축액 * 기간) + (LTV/DSR 기반 최대 대출액).
  • Action Guide: 사용자가 저축액을 10% 증액하거나 수익률을 1% 높일 때 단축되는 D-Day를 실시간으로 시각화하여 동기를 부여합니다.

🤖 AI 어드바이저 (RAG 챗봇)

우측 사이드바의 인서울 AI 어드바이저는 단순 LLM 챗봇이 아닌, 서비스 전용 지식 베이스를 활용한 RAG(Retrieval-Augmented Generation) 기반 어드바이저입니다. 사용자가 현재 보고 있는 페이지와 입력한 재무 데이터를 컨텍스트로 함께 전달하여, 개인화된 부동산 금융 조언을 제공합니다.

전체 흐름

사용자 질문
    │
    ▼
[Retriever] SentenceTransformer 임베딩 → ChromaDB 코사인 유사도 검색 (top-4 청크)
    │
    ▼
[Prompt Builder] 시스템 역할 + 검색 문서 + 사용자 컨텍스트(페이지·자산·시뮬설정) + 대화 히스토리(최대 10턴)
    │
    ▼
[OpenAI API] gpt-5-nano 스트리밍 호출
    │
    ▼
[SSE 스트리밍] data: {"type": "delta", "content": "..."} → 프론트엔드 실시간 렌더링

지식 베이스

backend/knowledge/ 디렉터리의 Markdown 파일 5종이 RAG의 근거 문서입니다.

파일 내용
calculation_logic.md D-Day 산출 공식, FV 계산, LTV·DSR 로직
financial_concepts.md LTV, DSR, 취득세 등 금융 개념 설명
loan_products.md 보금자리론, 디딤돌대출 등 대출 상품 정보
seoul_districts.md 서울 자치구별 아파트 시세 및 특성
strategies.md 징검다리 전략, 경기도 요충지 투자 전략

문서는 ## 헤딩 기준으로 청킹(최대 500토큰, 50토큰 오버랩)된 뒤 paraphrase-multilingual-MiniLM-L12-v2 모델로 임베딩되어 ChromaDB에 저장됩니다.

컨텍스트 인식

AI 어드바이저는 현재 상태를 시스템 프롬프트에 자동으로 포함합니다.

  • 현재 페이지: 어느 화면에서 질문하는지 (대시보드, 리포트, 지도 등)
  • 사용자 프로필: 보유 현금, 월 저축액, 연 소득, 목표 아파트 가격 등
  • 시뮬레이션 설정: LTV 비율, 아파트 연간 상승률, 투자 수익률 등

덕분에 같은 "LTV가 뭔가요?" 질문이라도 사용자의 실제 수치를 바탕으로 구체적인 답변이 제공됩니다. 각 페이지에는 힌트 칩도 표시되어 처음 사용자도 쉽게 질문을 시작할 수 있습니다.

백엔드 실행 방법

cd backend

# 1. 의존성 설치
pip install -r requirements.txt

# 2. 환경변수 설정
cp .env.example .env
# .env 파일에서 OPENAI_API_KEY 입력

# 3. 지식 베이스 인제스트 (최초 1회 또는 knowledge/ 변경 시)
python scripts/ingest.py

# 4. FastAPI 서버 실행
uvicorn main:app --reload --port 8000

.env.example에서 설정 가능한 항목:

환경변수 기본값 설명
OPENAI_API_KEY OpenAI API 키 (필수)
CHROMA_PERSIST_DIR ./vectorstore ChromaDB 저장 경로
ALLOWED_ORIGINS http://localhost:5173 CORS 허용 출처

프론트엔드에서 백엔드 주소를 변경하려면 .env 파일에 VITE_CHATBOT_API_URL=http://... 를 추가하세요.


🔒 보안 및 신뢰성

  • Local-First Data: 사용자가 입력한 모든 민감한 재무 데이터는 서버에 저장되지 않고 브라우저의 로컬 스토리지에만 보관되어 개인정보 유출 우려가 없습니다.
  • Transparent Logic: 모든 계산 근거와 공식을 투명하게 안내하여 사용자가 시뮬레이션 결과를 신뢰할 수 있도록 돕습니다.

🏃 시작하기 (Getting Started)

  1. Welcome: PM의 안내에 따라 현재 재무 상태를 입력하세요.
  2. Simulation: 실시간으로 변하는 차트를 통해 당신의 '골든 크로스' 지점을 확인하세요.
  3. Action: 제시된 'Action Guide'를 통해 오늘부터 당장 실행할 수 있는 변화를 확인하세요.

🤝 기여 및 문의

인서울 프로젝트는 더 정교한 알고리즘 고도화를 위해 열려 있습니다.

  • Issues: 버그 리포트나 기능 제안은 Issue 탭을 이용해 주세요.

"당신의 서울 입성, 인서울 프로젝트가 데이터로 끝까지 함께하겠습니다."

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors