Skip to content
/ Eternal Public
forked from khg9859/Eternal

자연어 질의 기반 패널 데이터 검색 및 AI 시각화 플랫폼 | Natural Language Panel Data Search & AI Visualization Platform with RAG

Notifications You must be signed in to change notification settings

YJEND/Eternal

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

Eternel

25-2 프리캡스톤디자인 | 자연어 질의 기반 데이터 추출 및 시각화 아키텍처

최근 생성형 AI 기술은 다양한 분야에서 활용되고 있지만, 복잡한 패널 데이터를 일반 사용자가 직관적으로 검색하고 분석하는 데는 여전히 어려움이 있습니다.

Eternel은 자연어 질의를 통해 누구나 쉽게 패널 데이터를 검색하고, AI 기반 분석 결과를 시각화하여 데이터 인사이트를 발견할 수 있도록 돕는 플랫폼입니다.

Eternel 메인 화면


주요 기능

1. 자연어 기반 스마트 검색 및 AI 요약 분석

사용자는 "체력 관리", "결혼 상태" 등 일상적인 언어로 질문하면, AI가 관련 패널 데이터를 자동으로 검색하고 요약 분석 결과를 제공합니다.

AI 요약 분석 결과

주요 특징:

  • 자연어 질의: 일상 언어로 데이터 검색 가능
  • AI 요약 분석: 검색 결과에 대한 간결한 인사이트 제공
  • 실시간 검색: 백엔드 API와 연동하여 즉시 결과 반환

2. 다양한 데이터 시각화

검색 결과를 다양한 형태의 차트와 테이블로 시각화하여 직관적인 데이터 분석을 지원합니다.

데이터 시각화

제공하는 차트:

  • 퀵 차트: 주요 통계를 한눈에 확인
  • 나이대별 통계 분포: 막대 차트로 연령대별 응답 현황 표시
  • 지역별 응답 비중: 원형 차트로 지역별 분포 시각화
  • 데이터 테이블: 실제 이용자 데이터를 정렬, 페이지네이션하여 제공
  • 응답 순위 및 성별 응답률: 상세 통계 정보 제공

3. 스마트 필터링

카테고리, 지역, 나이별 동적 필터를 적용하여 원하는 데이터를 정밀하게 추출할 수 있습니다.

4. AI 채팅 인터페이스

검색창 클릭으로 활성화되는 AI 어시스턴트를 통해 데이터에 대한 자유로운 질문이 가능하며, 이전 대화 맥락을 유지하여 연속적인 질의응답을 지원합니다.

AI 챗봇

주요 특징:

  • 데이터 기반 대화형 응답: 패널 데이터를 기반으로 짧고 명확하게 요약하여 대답
  • 후속 질문 지원: 이전 대화 맥락을 유지하여 연속적인 질문 가능
  • 스몰톡 처리: 데이터와 관련 없는 일반 질문은 smalltalk_chat으로 자연스럽게 응대

5. 데이터 내보내기

차트 이미지, PDF, CSV 형식으로 분석 결과를 다운로드할 수 있습니다.


기술 스택

영역 스택
Frontend
Backend
Database
Infra
LLM

시스템 아키텍처

사용자 질의 (자연어)
   ↓
React Frontend (검색 UI)
   ↓
FastAPI Backend
   ↓
┌─────────────────────────────────┐
│  1. LangChain RAG Pipeline      │
│  2. PostgreSQL + pgvector       │
│  3. 임베딩 기반 유사도 검색      │
└─────────────────────────────────┘
   ↓
LLM (GPT) 응답 생성
   ↓
데이터 시각화 (Chart.js)
   ↓
사용자에게 결과 반환

프로젝트 구조

Eternal/
├── src/                     # React 프론트엔드 소스
│   ├── components/          # UI 컴포넌트
│   │   ├── AIChatInterface.js
│   │   ├── AdvancedChart.js
│   │   ├── ChatInterface.js
│   │   ├── DataTable.js
│   │   ├── DataVisualization.js
│   │   ├── DeviceMockup.js
│   │   ├── FilterPanel.js
│   │   ├── HeroSection.js
│   │   ├── Logo.js
│   │   ├── SearchBox.js
│   │   ├── SearchResults.js
│   │   ├── SearchTags.js
│   │   └── SmartChart.js
│   ├── App.js               # 메인 앱 컴포넌트
│   ├── index.js             # 진입점
│   └── index.css            # 전역 스타일
│
├── public/                  # 정적 파일
│   └── index.html
│
├── build/                   # 프로덕션 빌드
│   └── static/
│
├── images/                  # 프로젝트 이미지
│   └── 리드미.png
│
├── main.py                  # FastAPI 백엔드 서버
├── LLMlangchan.py          # LLM RAG 파이프라인
├── requirements.txt         # Python 의존성
├── package.json             # Node.js 의존성
├── tailwind.config.js       # Tailwind 설정
└── README.md

팀 역할

이름 역할 주요 담당
김홍근 팀장 / PM 일정 관리 · 주간 보고서 취합 · GitHub 관리 · 발표/브리핑 · 팀원 코드 리뷰
최용주 프론트엔드 React + Tailwind UI 제작 · 시각화 · UX 최적화
서정원 데이터 엔지니어 데이터 전처리 · 스키마 설계 · 임베딩 · PostgreSQL
김민석 LLM 엔지니어 LLM API 연동 · 프롬프트 설계 · RAG/Eval 관리
고범창 백엔드 FastAPI 서버 · DB 연동 · AWS 배포


시연

시연영상 보러가기


About

자연어 질의 기반 패널 데이터 검색 및 AI 시각화 플랫폼 | Natural Language Panel Data Search & AI Visualization Platform with RAG

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published