카카오톡 메시지 자동 수집·분석 시스템

소개

“카카오톡 대화를 모니터링하고 AI가 요약해준다면?”

이 생각은 회사나 스터디, 프로젝트 채팅방에서 중요한 내용이 흘러가는 걸 여러 번 경험한 뒤 들었던 의문이었습니다. 특히 일주일 전 어떤 결정이 내려졌는지, 누가 뭘 맡기로 했는지, 어떤 이슈가 나왔는지 다시 확인하려면 스크롤을 몇백 줄 넘겨야 했거든요.

그래서 ‘대화를 자동으로 저장하고, GPT가 주요 이슈를 뽑아주는 시스템’을 만들어보기로 했습니다. 예상보다 빠르게, 완성했어요. 생각보다 흥미로운 여정이 숨어 있었습니다.

진행 과정

출발: 단순한 로그 수집에서 시작

처음에는 단순히 카카오톡 메시지를 수집해 저장하는 수준이었습니다. Android 기반의 메신저봇R으로 채팅방 메시지를 후킹해서, FastAPI 서버로 전송하고 SQLite에 저장하는 구조였죠.

시스템 구조는 이렇게 단순했습니다:

카카오톡 → 메신저봇R → FastAPI 서버 → SQLite DB

이후엔 GPT로 분석 요청을 보내면 요약 결과를 리턴해주는 방식이었죠.

하지만 AI 분석 부분을 구현하면서 저는 흥미로운 선택의 갈림길에 섰습니다.

Claude Code vs GitHub Codex: AI 코딩 보조 도구의 맞대결

이 프로젝트에서 가장 흥미로운 실험은 두 가지 AI 코딩 도구를 나란히 사용한 것이었습니다. 바로 Anthropic의 Claude CodeGitHub Copilot (Codex 기반)입니다.

Claude Code의 장점

  • 디렉토리 구조, 환경 변수, .gitignore 등 초기 설계에 강했습니다.

  • 민감 정보 분리를 기본값처럼 안내해줬고, 문서 디렉토리 구성까지 추천해줬어요.

  • 특히 Claude는 AI 분석 프롬프트를 설계할 때 강점을 보였는데요:

PROMPT = """
당신은 카카오톡 대화 분석 전문가입니다.
다음 대화에서 가장 중요한 이슈 3-5개를 추출하세요.

분석 기준:
1. 구체적인 계획이나 결정사항
2. 문제 발생 및 해결 과정
3. 중요한 정보 공유
4. 약속이나 일정 관련

형식:
- [날짜] 이슈 제목: 간단한 설명 (참여자)
"""

Codex의 반격

  • 반면 GitHub Copilot은 구체적인 구현 단계에서 빛을 발했습니다.

  • 예를 들어, 1시간 캐싱 로직을 구현할 때 거의 자동으로 완성된 코드를 제시했어요.

cache_key = f"ai_topics_{room_id}_{days}_{since_minutes}"
if cache_key in ai_analysis_cache:
    return cached_result
  • 또한 디버깅 시에도, 중복 메시지 문제의 원인을 빠르게 짚어냈습니다.

    • 기존에는 room_hash + timestamp로 log_id를 만들었는데,

    • Copilot이 content를 포함시키는 방식으로 개선을 제안했습니다:

log_id = hashlib.sha1(f"{room_hash}_{author_hash}_{content}_{timestamp}".encode()).hexdigest()

이렇게 Claude는 ‘설계’, Codex는 ‘구현’에 강점을 보여줬고, 저는 이 둘을 번갈아 쓰며 프로젝트를 완성해갔습니다. 말 그대로 AI 간의 협업, 혹은 경쟁 속에서 개발을 이어간 셈이죠.

결과와 배운 점

정량적 성과

  • 메시지 수집: 총 1,234개 (5개 채팅방)

  • GPT 분석 평균 시간: 8.8초

  • 중복 메시지 저장 문제 해결율: 100%

  • API 호출 횟수 90% 절감 (캐시 로직 덕분)

  • 서버 안정성: uptime 99.9% (DigitalOcean 기반)

정성적 성과

  • 🔍 과거 대화 복기 시간이 10분 → 3초로 단축

  • 🤖 중요한 결정사항을 AI가 알아서 정리해줘서 빠르게 대응 가능

  • 👥 누가 얼마나 참여했는지, 시간대별 활동 패턴까지 분석 가능

실전 활용 사례

  • 실제로 “지난주 구글캘린더봇 이슈 뭐였지?” 하고 물었을 때,

    • 이전에는 일일이 대화 기록을 찾아야 했지만

    • 이제는 !주요이슈 1 7 명령어 한 줄이면 요약 결과가 나옵니다:

🤖 AI 주요 이슈 분석 (최근 7일)
━━━━━━━━━━━━━━━━━━━━━━
1. [11-24] 구글캘린더봇 v2.11 배포
   - 반복 일정 감지 기능 추가
   - 삭제 확인 대화 테스트 완료
   (참여자: 양재민, Claude)

느낀 점

  • Claude와 Codex는 같이 써야한다.

  • 처음엔 “읽으면 알겠지” 싶었지만, 막상 구현해보니 매 순간 배움이 있었습니다.

💡 “이해는 빠르게 사라지고, 경험은 천천히 쌓인다.”

다음 단계 계획

  • 특정방에 스케줄링 + 보고서 메시지 전송.

참고 자료

  • 19기 카톡봇 스터디장 현우님 자료

  • FastAPI 문서, 메신저봇 가이드


카카오톡도 결국 텍스트 데이터입니다. 그걸 모으고 요약하면 다양하게 활용가능한 인사이트가 나옵니다.

1
1개의 답글

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요