VDD (Vibe Driven Development) 스터디 6주차

Jinyoung Cheon·2025년 10월 28일

Early Developer Club

목록 보기
6/6
post-thumbnail

VDD 6주차: Promptory – 지능형 태그 추출 & 대시보드 고도화 ✨


🎬 이번 주 활동 요약

  • 제출 기한: 10월 25일(토) 24:00
  • 프로젝트명: Promptory
  • 주제: 생성형 AI 대화 자동 수집·요약·분류 서비스
  • 개발 목표:
    • 대시보드 기능 고도화 및 시각화 완성
    • 태그 추출 알고리즘 구현 (KoNLPy, nltk)
    • UI/UX 개선 및 안정화
  • GitHub: early-developer-club/promptory

💡 프로젝트 개요

Promptory는 Gemini와 ChatGPT 등 생성형 AI와의 대화를 자동으로 수집·요약·분류하는
AI 대화 아카이빙 서비스다.
6주차에는 단순한 기록을 넘어, 대화 데이터의 의미를 분석하고 시각화하는 기능을 중심으로 개발이 진행되었다.

“AI와의 대화가 단순 로그를 넘어,
내가 쌓아온 학습 패턴과 인사이트로 구조화되는 순간이었다.”


⚙️ 6주차 주요 개발 내용

항목작업 요약
대시보드 고도화AI별 대화 수, 태그 빈도 분석, 태그 클릭 시 필터링 기능 구현
태그 추출 기능 구현KoNLPy + nltk 기반 형태소 분석 및 품사 태깅으로 핵심 키워드 자동 추출
질문 가중치 로직 추가Prompt 키워드에 5배 가중치를 부여하여 주제 중심 태그 생성
불용어 관리 기능crud.py에 stopwords 목록 추가 및 필터링 로직 개선
UI/UX 개선shadcn/ui 기반으로 UI 컴포넌트 재구성, 반응형 디자인 적용
DatePicker 개선실제 대화가 있는 날짜만 선택 가능하도록 API 연동
Chrome Extension 안정화기존 대화 제외, 신규 대화만 수집하도록 로직 재설계
버그 수정AttributeError, NameError 등 다수 오류 해결 및 렌더링 최적화

🧠 지능형 태그 추출 방식

이번 주의 핵심은 “대화를 분석해 의미 있는 태그를 자동 생성하는 기능”이었다.
Promptory는 다음과 같은 과정을 통해 태그를 생성한다.

  1. 형태소 분석:
    KoNLPyOkt 분석기를 이용해 대화(질문+응답)를 단어 단위로 분리
  2. 핵심 품사 추출:
    명사(Noun) 및 알파벳(Alpha) 품사만 선택
  3. 질문 가중치 부여:
    Prompt(질문)에 포함된 키워드에 5배 가중치를 적용
  4. 불용어 및 필터링:
    불필요한 단어, 한 글자 단어, stopwords 목록을 제거
  5. 상위 5개 태그 선정:
    가중치 + 빈도수 기반으로 최종 태그 추출

[대화 발생] → [형태소 분석] → [명사/알파벳 추출] → [질문(×5) 가중치 부여] → [불용어 필터링] → [상위 5개 태그 선정]

단순한 문자열 분석을 넘어,
“AI가 생성한 대화를 또 다른 AI로 분석한다”는 점에서
Promptory의 진정한 지능형 구조가 완성되었다.


📊 주요 결과 화면

1️⃣ 대시보드 기능 고도화 – 태그 통계 시각화

  • 백엔드 /api/v1/statistics/tags API 추가
  • recharts를 활용한 상위 10개 태그 빈도 분석 차트 구현
  • 차트 클릭 시 해당 태그가 포함된 대화 목록으로 이동

2️⃣ DatePicker 개선 및 반응형 UI

  • 실제 대화가 있는 날짜만 활성화되도록 API 연동
  • 캘린더 및 레이아웃 여백(padding) 조정으로 사용자 경험 개선

3️⃣ Chrome Extension 안정화

  • ChatGPT: 기존 대화 제외, 신규 대화만 저장
  • Gemini: CSP 정책을 우회하기 위해 background.js에서 백엔드 통신 처리

🧩 인상 깊었던 포인트

“태그가 단순 문자열이 아니라,
내가 어떤 질문을 반복하고 어떤 주제에 집중하는지를 보여주는 거울 같았다.”

대시보드의 태그 분석 그래프를 통해
AI와의 대화 패턴이 시각적으로 드러나는 경험은 매우 흥미로웠다.
‘대화를 통한 자기 분석’이라는 Promptory의 방향성이 구체화된 순간이었다.


⚠️ 어려웠던 점

  • 형태소 분석 라이브러리 이슈: KoNLPy 설치 시 JPype1 버전 충돌 발생 → 버전 고정으로 해결
  • 태그 중복 처리: 영어·한글 혼용 시 중복되는 키워드가 발생 → 소문자 변환 및 중복 필터링 추가
  • 대시보드 렌더링 속도: 태그 데이터 fetch 시 지연 발생 → API 응답 캐싱 적용

💬 이번 주 회고

6주차는 Promptory의 “지능화”와 “완성도 개선”이 동시에 이뤄진 주차였다.
AI 대화를 단순히 저장하는 것을 넘어,
그 대화를 분석하고 나의 AI 사용 습관을 시각화하는 단계로 진화했다.

이제 Promptory는 단순한 AI 로거를 넘어,
AI와 함께 성장하는 학습 파트너”로 발전할 준비를 마쳤다.

profile
데이터를 향해, 한 걸음씩 천천히.

0개의 댓글