🏆 개발 기간: 24.07.01 ~ 24.08.20
현대 사회에서 많은 사람들이 스트레스와 우울감을 경험하고 있으며, 이를 해결하기 위한 심리적 지원이 필요합니다. 하지만 정신 건강 전문가와의 상담은 비용과 시간이 많이 들고, 접근성의 문제도 있을 수 있습니다. 실시간 감정 치유 웹 서비스는 이러한 문제를 해결하기 위한 대안으로, 사용자가 각기 다른 개성을 가진 캐릭터들과 대화를 통해 감정적 지지를 받을 수 있게 합니다. 특히, 현대인들이 쉽게 접근할 수 있는 디지털 플랫폼을 통해, 언제 어디서나 감정 상태를 공유하고 위로를 받을 수 있다는 점에서 유용합니다.
🏆 사이트
🏆 노션
🏆 ZEP
- 닌텐도 화면 적용
- 화면이 작아질 수록 DS - GBA - GDC 로 구현했다.
- Start 버튼을 통해 캐릭터리스트로 갈 수 있다.
- 로그인 및 회원가입 버튼을 누르수 있다
네이버, 카카오 구글 소셜 로그인
및 유저 회원가입/로그인- 로그인을 하면 캐릭터 리스트로 넘어간다.
프로필 이미지 변경
닉넴임 변경
- 생성, 삭제, 편집 버튼을 이용해 캐릭터 관리
- 5개의 캐릭터 중 하나를 뽑는다. 하지만 이미 생성된 캐릭터는 못 고른다.
- 캐릭터의 이름과 선택한 이유를 적으면 생성이 된다.
- 캐릭터 리스트에서 버린 캐릭터들을 볼 수 있다.
- 여기서는 복구 및 영구 삭제를 할 수 있다.
- 음성 인식을 통해 대화를 할 수 있다.
- 영상통화 버전에서는 TTS 구현되어있다.
- Ajax를 통해 실시간으로 캐릭터와 채팅!
- 별점 및 리뷰를 통해 해당 에플리케이션의 평가를 알 수 있다.
- 피드백을 통해 추후 계속 업데이트 할 예정이다.
- 5개의 캐릭터들과 챗봇을 통해 나온 결과를 보여준다.
- 주간 및 누적 기능이 있어 감저의 정보를 쉽게 파악할 수 있다.
-
캐릭터 기능
- 분노, 기쁨, 불안, 두려움, 불안 총 5개의 캐릭터를 생성할 수 있다.
- 생성된 캐릭터를 수정 및 휴지통에 버릴 수 있다.
- 휴지통에 버려진 캐릭터는 다시 복구 할 수 있고 영원히 삭제할 수 있다.
-
프롬프트 설계
- 총 5개의 캐릭터마다 프롬프트를 설계한다.
- 프롬프트에 이전 대화를 기억할 수 있도록 DB에서 해당 데이터를 찾아와 프롬프트에 넘겨준다.
-
실시간 AI와 챗봇
- Open AI를 통해 API와 연결한뒤 사용자 답변에 따른 AI 답변이 제공이 된다.
- Ajax를 통해 실시간으로 대화가 진행되며 시간 마지막 답변들도 실시간으로 추가가 된다.
-
챗봇 TTS
- 영상 통화 화면에 넘어간뒤 사용자가 답하면 AI 답변이 TTS로 제공이 된다.
- 여러 목소리 TTS 기능이 설정이 되어있다.
-
감정 로그
- 사용자가 각각의 캐릭터마다 대화한 기록을 수치화하여 로그로 보여준다.
- 누적 및 주간이 있어 해당 감정 로그를 확인할 수 있다.
-
피드백
- 사용자들이 서비스를 이용하고 나서 후기를 올리 수 있는 공간이다.
-
회원 관리
- 네이버, 구글, 카카오 소셜 로그인 기능을 도입했다.
- 비밀번호 재설정 기능 도입했다.
-
Redis 캐싱 활용
- 동일한 요청이 들어올시 데이터를 재활용하여 응답 시간 최소화하였다.
Management Tool
- 형상 관리 : Git
- 커뮤니케이션 : Zep, Notion
- 디자인 : Figma
🐳 Backend
- Python
3.8.0
- Django
4.2.x
- pipenv or poetry (패키지 관리 도구)
- Redis
5.3.0
- Jupyter Notebook
6.4.12
🦊 Frontend
- lang: HTML5, CSS3, JAVASCRIPT
🗝️ API
🗂️ DB
- MySQL
8.0.30
🌐 Server
- AWS EC2 (Ubuntu
20.04
) - Nginx
1.23
(Reverse Proxy) - Gunicorn
20.1.0
(WSGI Application Server) - HTTPS (TLS
1.2
) - Redis
5.3.0
🔨 IDE
- Pycharm
2023.2
- MySQL Workbench
8.0.29
- VSCode
1.69.2
🖼️ Requirements.txt
aiohttp==3.9.5
aiosignal==1.3.1
annotated-types==0.7.0
anyio==4.4.0
asgiref==3.8.1
attrs==23.2.0
certifi==2024.7.4
cffi==1.16.0
charset-normalizer==3.3.2
colorama==0.4.6
contourpy==1.2.1
cryptography==43.0.0
cycler==0.12.1
distro==1.9.0
Django==5.0.8
django-allauth==0.63.6
django-environ==0.11.2
fonttools==4.53.1
frozenlist==1.4.1
h11==0.14.0
httpcore==1.0.5
httpx==0.27.0
idna==3.7
jwt==1.3.1
kiwisolver==1.4.5
matplotlib==3.9.0
multidict==6.0.5
mysqlclient==2.2.4
numpy==2.0.1
openai==0.28.0
packaging==24.1
pillow==10.4.0
PyAudio==0.2.14
pycparser==2.22
pydantic==2.8.2
pydantic_core==2.20.1
pydub==0.25.1
PyJWT==2.8.0
PyMySQL==1.1.1
pyparsing==3.1.2
python-dateutil==2.9.0.post0
pytz==2024.1
redis==5.1.0
django-redis==5.3.0
requests==2.32.3
setuptools==72.1.0
six==1.16.0
sniffio==1.3.1
SpeechRecognition==3.10.4
sqlparse==0.5.1
tqdm==4.66.4
typing_extensions==4.12.2
tzdata==2024.1
urllib3==2.2.2
yarl==1.9.4
- 캐릭터마다 고유한 대화 스타일을 설정해 사용자에게 더 자연스럽고 개별화된 경험을 제공했습니다.
- Redis를 활용해 동일한 요청에 대해 데이터를 재활용함으로써 불필요한 처리 시간을 줄이고 빠른 응답을 가능하게 했습니다.
나예원 | 최승호 | 전진명 | 이민수 |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Leader & Frontend & Designer | Backend & AI | Frontend & Backend | Backend |
- 나예원
- 팀장, 기획, 캐릭터 및 로고 디자인, 프론트, 와이어프레임 설계, 3D CSS 설계, AI 프롬프트 설계
- 최승호
- ERD 설계, 챗봇 기능, 캐릭터 관리 기능, REST API 설계, AWS 서버 배포 및 CICD 설정
- 전진명
- 회원관리, 마이페이지, 피드백, 감정 로그
- 이민수
- 감성 글귀, User 닉네임 랜덤 기능, 캐릭터 생성관리 기능, 인스타 광고, flutter webview