|
참여 인원 : 5명 / 개발 주기 : 1달 / 2024 멋쟁이사자처럼 중앙 해커톤 출품 |
|
|
정신 건강 문제인 화병 해소의 핵심은 ‘자기감정’을 정확히 표현하는 것이지만, 스스로 감정을 되돌아보는 것은 쉽지 않으며 타인이 공감하며 되물어줄 때 더욱 효과적인 해소가 가능하다.
기존 감정 일기 서비스는 감정이 20개 내외로 한정되어 있는 것에 의아함을 느꼈고.. 선택지를 굉장히 폭넓히자는 의지로 최종 600가지의 감정을 사용했다!
- ChatGPT API와 프롬프트 설정을 통해 공감과 되묻는 질문에 최적화된 AI
- 오늘의 일기에 관하여 AI 친구 MoDi와 함께 대화를 나누며 자신의 감정에 솔직해지도록 도와주는 서비스
- 약 600가지의 감정들 중 일기 내용에 맞는 감정들을 뽑아 보여주며 더 다양한 '자기 감정'에 집중할 수 있다.
- 선택한 감정들을 토대로 RGB 값을 뽑아 오늘의 색 생성
- 일기 내용에 연관된 그림일기를 AI가 제작하여 더 풍부해진 일기 제공
| 카테고리 | 기술 스택 | 상세 내용 |
|---|---|---|
| 백엔드 | Spring Boot 3.3.1 / Spring Security, Java 17 |
라이브러리: Spring Data JPA, JWT, OAuth2.0, Thymeleaf, JUnit 인프라: Nginx, AWS RDS, GitHub Actions |
| 프론트엔드 | Next.js, React | 주요 라이브러리: Axios, React-Hook-Form |
| 협업 | Notion, Postmanr | 협업 툴로 프로젝트 관리 및 API 문서화 |
- 일기와 대화를 분석하여 감정 수치 반환, 600가지의 감정 중 감정 수치에 해당하는 감정들 나열 -> 결과 페이지에서 오늘의 색과 그림일기 확인
- Russell의 정서 차원 이론 및 「한국어 감정단어의 목록 작성과 차원 탐색」 논문 참고
- ‘쾌/불쾌’(Valence)와 ‘활성화’(Arousal)를 기준으로 4사분면으로 분류하여 감정의 위치에 따라 각 RGB 색상 값을 할당
- 결론적으로 ‘쾌/불쾌’와 ‘활성화’ 색상들을 가중 평균(80% + 20%)하여 최종 RGB 산출
- ORM 계층을 생략하고 JdbcTemplate으로 간단한 SELECT 쿼리를 통해 DTO로 매핑하여 조회
- JPA: 184ms, JPQL: 131ms, JDBC: 21ms 으로 약 9배 가량 단축
이에 관하여..









