Bert와 GPT를 이용한 영화추천 챗봇 개발
팀명: 신호등 사천황
팀원:
- 최동현 (팀장)
- 김상준
- 안성진
- 오승주
채팅과 동시에 이미지 인식 지원 모델을 개발하여 다양한 사용자 요구를 충족시키며 영화 추천 시스템을 중심으로 텍스트, 이미지, 음성 기능을 통합하는 프로젝트
- 자연어 이해 및 전처리
- 영화 추천 시스템
- 일반 대화 및 텍스트 요약
- 음성 인식 기능
- 웹을 이용한 사용자 편의성 기능 및 디자인
- 데이터 시각화를 통한 분석 내용 출력
- 영화 추천에 특화된 가벼운 모델
- 텍스트 요약 기능으로 독서 시간 절약
- 음성을 이용한 접근성 향상
- 전문가가 아니어도 쉽게 사용할 수 있는 환경 조성
- 추천 근거를 시각화하여 신뢰도 향상
- The Movie Database (TMDb) API
- MovieLens 데이터셋
- IMDb Datasets
- OMDb API (Open Movie Database)
- JustWatch API (비공식)
- Trakt.tv API
- TVmaze API
- YTS API (YIFY Torrents)
- YouTube Data API
- 비공식 Netflix API
- uNoGS (unofficial Netflix Online Global Search)
- AIhub
- 최동현: 백엔드, 음성인식, 프로젝트 관리
- 김상준: 프론트엔드, 데이터 분석, 머신러닝
- 안성진: 데이터 분석, 머신러닝(추천시스템)
- 오승주: 데이터 분석, 자연어 처리(GPT2)
- ~ 6/28: 주제 선정 및 일정 수립
- 7/1 ~ 7/6: 데이터 수집 및 분석, 웹 디자인 초안 구성, DB 설계 및 테이블 생성, 데이터 분석 진행
- 7/7 ~ 7/13: 데이터 전처리, 머신러닝 모델 개발 및 테스트, 웹 개발 시작, 데이터 분석 및 머신러닝 적용, Bert를 통한 이미지 생성(stable diffusion)
- 7/14 ~ 7/20: 웹 디자인 및 페이지 구성 완료, 챗봇 기능 개발, 영상 처리 진행, 음성 인식 및 텍스트 변환 기능 개발, 머신러닝 모델 테스트 및 튜닝
- 7/21 ~ 7/31: 챗봇 기능 테스트 및 수정, 영상 처리 기능 진행, 백엔드 데이터 처리 테스트, 웹에 머신러닝 모델 이식, 음성 인식 기능 테스트 및 웹에 이식
- 8/1 ~ 8/11: 챗봇 기능 추가 학습 및 테스트, 영상 처리 및 챗봇 연결(멀티모달)
- 8/12 ~ 8/17: 기능 보완 및 테스트, 발표 자료 준비
- 8/19: 프로젝트 발표
pip install -r requirements.txt
CPU 및 GPU 문제시 chatPage 폴더
views.py 파일에서 device = torch.device('cpu’) device = torch.device('cuda:0') checkpoint = torch.load(model_path,map_location='cpu') # cpu 사용시 heckpoint = torch.load(model_path) GPU 사용시 # gpu 사용시