AI 기반 개인 맞춤형 영상 추천 시스템
Pick View는 사용자의 시청 패턴을 분석하여 AI를 통해 맞춤형 영상을 추천하는 서비스입니다. OTT 플랫폼의 방대한 콘텐츠 속에서 사용자가 선호할 만한 영상을 정확하게 찾아주는 것을 목표로 합니다.
- 사용자 시청 기록 기반 영상 추천
- Kafka를 통한 실시간 신규 영상 데이터 동기화
- Vector Similarity Search를 활용한 고정밀 콘텐츠 매칭
- Redis 캐싱을 통한 효율적인 추천 결과 제공
- Backend: Spring Boot, Spring AI
- AI/ML: OpenAI Embedding API (text-embedding-3-large)
- Message Queue: Apache Kafka
- Database: Elasticsearch, Redis
- Vector Store: MariaDB
- Infrastructure: Kubernetes, Docker
- Architecture: Hexagonal Architecture, Domain Model Pattern
- 개발 기간: 2025.10.09 ~ 2025.10.13 (5일)
- 개발 인원: 최준혁 (1인 프로젝트)
- Repository:
- pick-view - 메인 프로젝트
- pick-view-ott - 테스트용 OTT API 서버
현대의 OTT 서비스는 수많은 콘텐츠를 보유하고 있지만, 사용자가 자신의 취향에 맞는 콘텐츠를 찾기는 쉽지 않습니다. Pick View는 이러한 문제를 해결하기 위해 사용자의 시청 패턴을 분석하고, AI 임베딩 기술과 벡터 유사도 검색을 활용하여 개인화된 추천을 제공합니다.
- 70% 이상 시청한 콘텐츠만을 분석 대상으로 활용
- 장르, 출연진, 감독, 제작 국가 등 다각도 분석
- 문맥 기반 Summary 생성으로 높은 추천 정확도 달성
- Kafka를 통한 실시간 데이터 처리
- 신규 영상 등록 시 자동 임베딩 및 벡터화
- Kubernetes 기반 컨테이너 오케스트레이션
- 네임스페이스 분리를 통한 마이크로서비스 구성
- Network Policy를 통한 보안 강화
- 헥사고날 아키텍처 적용으로 높은 유지보수성
- 도메인 중심 설계로 비즈니스 로직 명확화
- 계층 간 명확한 의존성 관리
프로젝트 개발 과정에서 추천 정확도를 향상시키기 위해 다음과 같은 개선 작업을 수행했습니다:
- Summary 방식 개선: 키워드 나열 → 문맥 기반 문장 구성
- Embedding Model 업그레이드: text-embedding-3-small → text-embedding-3-large
- 데이터셋 확장: 83개 → 300개 영화 데이터
이를 통해 추천 결과의 유사도 점수가 평균적으로 크게 향상되었습니다.


