NLP 기반 감성 일기 서비스 「아띠어리」 – End-to-End AI 서비스 구현
개발
2021. 01 - 2021. 12

NLP 기반 감성 일기 서비스 「아띠어리」 – End-to-End AI 서비스 구현

감정 분석 결과를 UI·콘텐츠에 실시간 반영하는 모바일 서비스 구현. 모델 정확도 90%, 응답속도 60% 개선으로 서비스 적용 가능 수준 확보.

모델 정확도

90%

50%에서 개선

응답 속도 개선

2s → 0.8s

서비스 상태

배포 완료

Google Play Store

JavaPythonAINLPHugging FaceKotlinREST APIDockerFigma
Android 앱 개발NLP API 서버 설계모델-서비스 연동 구조 설계

Overview

모델 정확도와 응답속도 병목을 동시에 해결하여 실시간 감정 반영이 가능한 AI 서비스 구조로 전환.

감정 분석 모델 개선

라벨 재정의 기반 정확도 90% 달성

실시간 응답 구조

API 분리로 응답속도 60% 개선

Client-Server 구조

모바일-모델 연산 분리

End-to-End 서비스

앱-서버-모델 통합 구조

Problem

모델 정확도·응답속도 동시 병목
서비스 적용 불가 상태
  • 감정 분류 정확도 50% 수준
  • API 응답 2초 이상 지연
  • 실시간 UI 반영 불가
구조 문제 정의
  • 단일 API → 모든 연산 처리 → 병목 발생
  • 데이터 라벨 기준 불명확 → 모델 성능 저하
  • 모바일에서 모델 직접 실행 불가
위의 문제로, 아래의 유저플로우 구현 불가능
본문 이미지

Solution

데이터·API 구조 분리
문제 해결 방향
  • 데이터 품질 → 모델 성능 개선
  • API 역할 분리 → 응답속도 개선
  • Client-Server 구조 → 연산 분리
핵심 설계
  • 감정 기준 재정의 + 직접 라벨링
  • /emotion, /diary API 분리
  • 모바일 ↔ 서버 REST 통신 구조
본문 이미지
시스템 구성요소
구성 요소역할
Android App사용자 입력 및 UI
Flask API요청 처리 및 모델 호출
koBERT감정 분류
koGPT2챗봇 응답 생성
GPU Server모델 추론 처리

Implementation

모바일 앱 구현
  • MVVM 기반 Android 구조
  • LiveData 기반 UI 반응
  • 감정 결과 → UI/음악 반영
서버 및 API
  • Flask 기반 REST API
  • 주요 엔드포인트:
NLP 모델 구성
  • KoBERT → 감정 분석
  • KoGPT2 → 챗봇 생성
  • 서버 GPU 환경 서빙

Problem Solving

1. 감정 분석 정확도 개선
  • 문제: 정확도 50% → 서비스 적용 불가
  • 원인: 라벨 기준 불일치
  • 해결: 데이터 정제 + 라벨 재정의
  • 결과: 정확도 90% 달성, 보고서 기능 구현
본문 이미지
2. API 응답 지연 개선
  • 문제: 응답 2초 → UX 저하
  • 원인: 단일 API 병목
  • 해결: API 기능 분리
  • 결과: 0.8초로 단축
본문 이미지
3. 모델-서비스 연동 구조 구축
  • 문제: 모바일에서 모델 실행 불가
  • 원인: 환경 분리 필요
  • 해결: Client-Server 구조 설계
  • 결과: End-to-End 서비스 구현

Insight

핵심 인사이트
  • 모델 성능 문제 → 데이터 문제로 환원
  • 응답 지연 → API 구조 문제
  • 서비스 완성도 → 연결 구조에서 결정
작업 방식 정리
  • 로그 기반 성능 측정
  • 재현 조건 정의 후 개선
  • 구조 변경 중심 해결
다음 개선 방향
  • 모델 성능 자동 검증 구조 수립
  • API 트래픽 분산 구조
  • 사용자 행동 기반 추천 확장

스크린샷

당시 디자인한 캐릭터입니다.
당시 디자인한 캐릭터입니다.
Splash 화면입니다.
Splash 화면입니다.

Result

Outcomes

  • 감정 분석 정확도 50% → 90% 개선 → 서비스 적용 가능 수준 확보

  • API 응답시간 2초 → 0.8초 단축 → 실시간 UX 구현

  • AI 모델-모바일 연동 구조 구축 → End-to-End 서비스 완성

  • Google Play Store 배포 완료

Before / After Metrics

감정 분석 정확도

50% → 90%
Before50%
After90%

API 응답 시간

2초 → 0.8초
Before2
After60% 감소

NLP 기반 감성 일기 서비스 「아띠어리」 – End-to-End AI 서비스 구현 · Portfolio · Sojin Lee