Skip to content

pnucse-capstone-2024-classroom-capstone-2024-Capstone-Template created by GitHub Classroom

Notifications You must be signed in to change notification settings

pnucse-capstone-2024/Capstone-2024-team-34

 
 

Repository files navigation

머신러닝, 자연어 처리 기반 중고차 추천 플랫폼

1. 프로젝트 소개

1.1. 배경 및 필요성

  • 기존 LLM은 일반적인 질문에는 쉽게 답변하지만, 특정 분야의 전문적인 지식이 요구되는 질문에는 한계가 있다.
  • 이를 보완하기 위해서는 해당 도메인에 특화된 추가 학습 또는 추가적인 정보 검색 및 연동 시스템이 필요하다.
  • 중고차 매물 및 관련 정보들은 매우 방대하지만, 일반 소비자들이 원하는 정보를 찾기에는 힘든 경우가 많다.

1.2. 목표 및 주요 내용

  • 중고차 관련 지식이 부족한 일반 사용자도 쉽게 정보를 얻고, 적합한 매물을 추천받을 수 있는 챗봇을 제작한다.
  • 간단하고 직관적인 인터페이스의 웹 애플리케이션 형태로 서비스를 제공하여 사용자가 쉽게 사용하도록 한다.

2. 상세설계

2.1. RAG 모델

RAG 모델

2.2. 챗봇 서비스

챗봇 서비스

2.3. 사용 기술

디자인 기술 스택

Tailwind CSS - 3.4.12
PostCSS - 8.4.47
Autoprefixer - 10.4.20

프론트엔드 기술 스택

React, React DOM - 18.3.1
React Router - 6.26.2
Axios - 1.7.7
React Cookie - 7.2.1
TypeScript - 4.4.2
React Scripts - 5.0.1

백엔드 기술 스택

Spring Boot - 3.3.2
MariaDB - 3.4.1
Java - Java 17

3. 설치 및 사용 방법

해당 서비스를 동작하기 위해 사전에 다음과 같은 프로그램을 설치합니다.

  1. node.js
  • 공식 홈페이지에서 node.js를 설치하세요(https://nodejs.org/en)
  • 설치를 완료하고 npm i -g yarn을 실행해 패키지 매니저를 다운받는다
  1. intellij IDEA
  1. Docker Desktop
  • 공식 홈페이지에서 docker desktop을 설치하세요 (https://www.docker.com/products/docker-desktop/)
  • 다운로드 후 실행했을 때 wsl 오류가 발생한다면 호스트 파일 변경을 차단하는 경우가 있을 수 있으니, 알약 등 백신 프로그램에서 해당 기능을 해제하세요.
  1. MariaDB

서비스 실행

  1. github에서 모든 파일을 local로 내려받는다.
  2. intellij에서 내려받은 경로를 통해 car-talk-develop 폴더를 열고 gradle 설정이 완료될 때 까지 기다린다.
  3. 좌측 terminal에서 pip install -r infra/requirements.txt 를 입력하고 실행한다.
  4. windows powershell을 실행하고 루트 폴더 (yarn.lock 파일이 존재하는 경로)로 이동해 yarn을 입력해 실행한다.
  5. docker desktop을 실행하고 intellij에서 docker-compose.yml 파일을 실행한다.
  6. docker에서 모든 파일이 ruuning 상태임을 확인하면 application-local(h2 database 사용), application-dev.yml(MariaDB 사용) 중 택하여 실행한다.
  7. springboot 프로젝트와 docker가 정상적으로 동작하면 windows powershell에서 루트 폴더 (yarn.lock 파일이 존재하는 경로)로 이동한 후 yarn start:dev를 입력하고 실행한다.
  8. localhost:3000으로 접속하거나, 잠시 기다려 서비스 동작을 확인한다.

4. 소개 및 시연 영상

2024년 전기 졸업과제 34 도미노

5. 팀 소개

  • 이은진 [email protected]

    • 챗봇 웹페이지 UI 디자인 설계
    • 중고차 관련 외부 데이터 수집
    • RAG 시스템 설계 및 모델 구현
    • 프론트엔드 일부 기능 개발
  • 최성빈 [email protected]

    • 데이터베이스 구조 설계
    • 백엔드 전체 시스템 개발
    • 프론트엔드 일부 기능 개발
    • 버그 수정 및 최종 테스트
  • 최희웅 [email protected]

    • 중고차 매물 크롤링 및 전처리
    • 중고차 관련 외부 데이터 수집
    • Flask를 이용한 챗봇 API 구축
    • 프론트엔드 일부 기능 개발

About

pnucse-capstone-2024-classroom-capstone-2024-Capstone-Template created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 55.2%
  • TypeScript 35.7%
  • Python 4.4%
  • CSS 2.2%
  • HTML 1.1%
  • JavaScript 1.0%
  • Other 0.4%