구로구 숭실대(AI+X 프로젝트): 인스타를 대체할 토막지식 앱, 큐레피디아

구로구 숭실대(AI+X 프로젝트): 인스타를 대체할 토막지식 앱, 큐레피디아







지식 탐험을 위한 AI 기반 추천 시스템 Curaepedia


--

인스타를 대체한다고? AI 로직을 기반으로, 검색어를 토막지식을 알려주는 앱! 도파민 중독인 여러분을 지식의 세계로 초대합니다.

AI 부터 앱까지, A-Z을 모두 만들어버리신 한정만님의 지식 큐레이션 앱 프로젝트 소개입니다.

--







서비스 소개: Curaepedia란? (한정만)


"Curaepedia"는Curation + Encyclopedia의 합성어입니다.

단순한 정보 검색을 넘어, 사용자의 관심사에서 시작해 AI 추천을 통해꼬리에 꼬리를 무는 지식 탐험을 가능하게 하는 서비스입니다. 사용자의 작은 호기심이 예상치 못한 발견으로 이어지는, 개인화된 콘텐츠 탐색 경험을 제공하는 것을 목표로 합니다.


예를 들어, '고양이'라는 키워드로 시작해 '고양이의 보은(애니메이션)'을 거쳐 '일본 애니메이션의 역사', 그리고 '스튜디오 지브리'까지, 사용자의 선택에 따라 탐험의 경로가 실시간으로 만들어집니다.







주요 기능


Curaepedia는 다음과 같은 핵심 기능을 통해 동적인 탐색 경험을 제공합니다.


① 연속적 추천 시스템 (Continuous Recommendation)사용자가 특정 아티클을 선택 하는 행위 자체가 다음 추천 목록을 만드는 가장 중요한입력값이 됩니다. '좋아요'/'싫어요' 피드백을 실시간으로 반영하여 즉시 다음 추천 결과가 개인화됩니다.

(사용 모델:SBERT)


② AI 기반 아티클 요약

긴 분량의 아티클을 AI가 핵심 내용만 요약하여 제공함으로써, 사용자는 적은 시간 안에 더 많은 정보를 효율적으로 탐색할 수 있습니다.(사용 모델:gogamza/kobart-summarization)


③ 탐색 히스토리 관리

사용자가 탐험했던 모든 아티클의 경로를세션 단위로 자동 저장합니다. 과거의 탐색 과정을 언제든지 다시 확인하고, 관심사의 흐름을 시각적으로 파악할 수있습니다. 스와이프 내비게이션: 화면을 좌우로 스와이프하여 이전/다음 추천 아티클로 빠르게 이동할 수 있습니다.


④ 외부 콘텐츠 연동 및 확장

- YouTube: Google 로그인 시, 사용자의 YouTube 구독 채널을 분석하여 초기 관심사 키워드를 자동으로 설정해줍니다.

- Nasa 공공 API: '우주의 신비' 카테고리를 통해 우주와 천문학에 관심 있는 사용자를 위해 Nasa의 방대한 이미지 및 정보 데이터를 탐색할 수 있는 카테고리를 제공합니다.

- 메트로폴리탄 박물관: '고대 미술사' 카테고리를 통해 박물관의 방대한 미술 작품 데이터를 검색하고 탐색하는 경험을 제공합니다.






AI 서버 구현 방식


AI 추천 및 요약 기능은 Python FastAPI서버를 통해 구현되었습니다.

1) 추천 로직

Curaepedia의 추천 시스템은 **'사용자의 현재 관심 맥락'**을 하나의 벡터로 요약하고, 그 벡터와 가장 가까운 새로운 지식을 찾아주는 방식으로 동작합니다. 예를 들어, 사용자가 다음과 같은 순서로 아티클을 탐색했다고 가정해 보겠습니다.

1.시작: '고양이' 키워드 입력 (관심도 가중치: 1.2)

2.선택: <나는 고양이로소이다 (영화)> 아티클 선택 (관심도 가중치: 0.8)

3.좋아요: <고양이의 보은> 아티클에 '좋아요' (관심도 가중치: 1.0)

4.싫어요: <캣츠 (영화)> 아티클에 '싫어요' (관심도 가중치: -1.0)


이때 AI 서버는 다음과 같은 4단계를 거쳐 다음 추천 목록을 생성합니다.


1단계: 상호작용 데이터 전송

Flutter 앱은 사용자의 탐색 여정을 위와 같은 상호작용 목록과 가중치 정보가 담긴 JSON 데이터로 만들어 FastAPI 서버의

/recommend API로 전송합니다.


2단계: 아티클 제목의 벡터화 (SBERT 모델)

서버는 전송받은 각 아티클 제목("고양이","고양이의 보은"등)을SBERT라는 AI 모델을 통해 다차원 공간의 좌표, 즉 **벡터(Vector)**로 변환합니다. 이 벡터는 단어의 의미와 문맥을 숫자로 표현한 값입니다.


V_고양이= [0.1, 0.9, 0.2, ...]
V_고양이의보은= [0.3, 0.8, 0.4, ...]
V_캣츠= [0.8, 0.2, 0.9, ...]


3단계: '관심사 벡터' 계산 (가중 평균)

이 단계가 추천 로직의 핵심입니다. 서버는 각 아티클의 벡터에 사용자의 상호작용 가중치를 곱한 후 모두 더하여, 현재 사용자의 **종합적인 관심사를 나타내는 단 하나의 '평균 벡터'**를 계산합니다.


V_관심사 = (V_고양이 × 1.2) + (V_나는고양이로소이다 × 0.8) + (V_고양이의보은 × 1.0) + (V_캣츠 × -1.0)


이 계산을 통해 만들어진 V_관심사벡터는 '고양이'와 '고양이의 보은' 방향으로 강하게 이끌리고, '캣츠 (영화)'와는 의미적으로 반대 방향을 향하게 됩니다. 즉, 사용자의 긍정적/부정적 피드백이 모두 반영된 정교한 취향 벡터가 생성되는 것입니다.


4단계: 유사도 검색 및 결과 반환

마지막으로, 서버는 계산된 V_관심사 벡터와 데이터베이스에 있는 모든 아티클의 벡터들을 비교하여 코사인 유사도가 가장 높은 상위 10개의 아티클을 찾습니다. 이때, 사용자가 이미 본 아티클들은 추천 목록에서 제외하여 항상 새로운 탐험이 가능하도록 합니다. 이 최종 목록이 앱으로 반환되어 사용자에게 새로운 추천 목록으로 표시됩니다. 이러한 과정을 통해 Curaepedia는 사용자의 미묘한 관심사 변화를 실시간으로 포착하여 매우 개인화된 추천을 제공할 수 있습니다.







요약 로직 (KoBART 모델)

* `POST /summarize` 엔드포인트를 통해 아티클 본문을 전달받으면, `gogamza/kobart-summarization` 모델을 사용하여 한국어 텍스트를 자연스럽게 요약한 후 결과를 반환합니다.







수익화 전략

Curaepedia는 다음과 같은 비즈니스 모델을 통해 수익 창출을 고려할 수 있습니다.


Freemium 모델

무료 플랜: 핵심 추천 기능, 일일/주간 히스토리 저장 제한.

유료 플랜 (Curaepedia Pro): 광고 제거, 무제한 히스토리 저장 및 관리, 히스토리 시각화, 더 깊이 있는 YouTube 채널 분석 등 고급 기능 제공.


B2B API 서비스

Curaepedia의 연속적 추천 엔진을 API 형태로 패키징하여, 다른 교육 플랫폼이나 콘텐츠 서비스에 제공하는 B2B 사업 모델.

특정 주제(예: '금융', '역사')와 관련된 교육 기관이나 출판사와 제휴하여, 관련 도서나 강의를 추천 콘텐츠의 일부로 자연스럽게 노출. (단, 사용자 경험을 해치지 않는 선에서 신중하게 접근)







향후 추가 및 개선 계획


Wikipedia api 대체/추가 방안 모색

현재 연결된 Wikipedia 데이터 소스는 Wikipedia의 전체 아티클 중 일부만 포함하고 있어, 특정 주제에 대한 아티클이 부족한 경우가 있습니다. 이를 보완하기 위해, 크롤링이나 다른 데이터 소스로의 대체 등을 고려 중입니다.


추천 알고리즘 고도화

탐색 경로 분석: 사용자의 전체 탐색 경로를 분석하여, 단순히 최근 상호작용뿐만 아니라 장기적인 관심사 변화도 반영하는 추천 알고리즘 개발.

다중 벡터 표현: 사용자의 관심사를 하나의 평균 벡터로만 표현하는 대신, 여러 개의 관심사 클러스터를 식별하여 더 다양하고 풍부한 추천을 제공하는 방안 연구.




사용 기술

  • Flutter (Dart), Android(비공개 테스트 중), IOS (예정)
  • Supabase (DB, Auth)
  • FastAPI (python)
  • SBERT, KoBART모델