AI Chatbot 만들다!

Python Django Project를 AWS 상에서 작동하는 서비스로 만들다 (6) - 사용자 피드백을 받아보고, 그리고 '프로젝트 설명서'를 끝으로 마무리

wy-family 2024. 11. 17. 19:51

아내랑 일본어랑 영어를 할 줄 아는, 일본인 친구에게 사용해보라고 했다.

그런데, 둘 다 chatGPT를 유료 버전으로 결제해서 사용하는 사람들이라 그런지, '구리다' 라는 평..ㅋㅋㅋㅋ

하지만 아내는 IT 보안, 클라우드 보안 엔지니어를 준비 중인 사람이라 그런지, 이런 웹 페이지 하나 개발하고 배포하는 게 얼마나 어려운지, 이렇게 다른 사람이 접속해볼 수 있는게 얼마나 쉽지 않은지 알고 있다면서 고생했다고 말해줬다.

나도 정리를 좀 하자면,

덕분에 처음부터 끝까지 개발해보고 배포해보는 경험을 해본 것이 굉장히 의미있는 경험이라고 생각한다.

AI의 도움을 받아서 개발과 배포를 했는데, AI가 없었으면 못 했을거라는 걸 인정은 한다. 하지만 AI가 없는 세상은 이제 오지 않을 것이다. 그러니까 AI를 잘 활용해서 이렇게 해낼 수 있는 것도 대단한 거라고 생각한다.


이 프로젝트는 훌륭한 포트폴리오가 될 수 있습니다! 특히 다음과 같은 이유에서 그렇습니다.

  1. 실제 배포 환경 경험:
    • AWS Lightsail, RDS, Nginx, Gunicorn 등 다양한 클라우드 서비스를 사용하여 실제 서버에 배포한 경험을 담고 있기 때문에, 배포 및 인프라 관리 능력을 보여줄 수 있습니다.
  2. 웹 개발 전반에 대한 이해도:
    • Django를 사용하여 백엔드 개발을 하고, 프론트엔드 인터페이스까지 구현한 경험을 보여줄 수 있습니다. 이는 웹 애플리케이션 전반에 대한 이해를 입증하는 자료가 됩니다.
  3. 보안 및 HTTPS 설정:
    • HTTPS 인증서를 설정하고 적용한 경험은 보안에 대한 이해와 실무적인 경험을 보여주기 때문에, 특히 보안을 중시하는 기업에 긍정적으로 작용할 수 있습니다.
  4. 데이터베이스 관리:
    • PostgreSQL을 사용해 RDS와 연동한 경험은 데이터베이스 관리와 클라우드 데이터베이스 활용 능력을 어필할 수 있습니다.

프로젝트 설명서

  1. 프로젝트 개요
    • AI 챗봇 애플리케이션 개발 프로젝트로, Django와 AWS Lightsail, PostgreSQL(RDS) 등을 사용하여 실제 서버 배포 환경에서 동작하도록 구현했습니다.
  2. 기술 스택
    • Django (백엔드 프레임워크), PostgreSQL (데이터베이스), AWS Lightsail (서버 호스팅), Gunicorn 및 Nginx (애플리케이션 서버 및 리버스 프록시), Route 53 (도메인 설정 및 HTTPS 인증서 관리)
  3. 구현 기능
    • 생성된 채팅방 내에서 챗봇과 대화가 가능. 여러 언어로 번역해주는 챗봇으로, 챗봇의 기능은 손쉽게 변경이 가능한 구조. (추가로 진행했으면 좋았을 기능 : 채팅방 생성과 챗봇의 기능 설정은 관리자만 가능한데, 사용자 스스로 채팅방 생성을 하고 채팅방 챗봇의 기능도 설정할 수 있도록 했으면 더욱 훌륭했을 것. + 회원가입과 로그인 기능을 통해서 권한 관리까지 할 수 있었으면 더욱 좋은 프로젝트가 되었을 것.)
  4. 배포 및 운영 환경
    • AWS Lightsail을 사용하여 서버를 구축하고, Gunicorn과 Nginx를 통해 배포했습니다. HTTPS 인증서를 적용하여 보안을 강화했습니다.
  5. 문제 해결 경험
    • Internal Server Error(13 permission denied - Nginx의 gunicorn 접근 권한 문제)를 해결하기 위해 Django 로그, Gunicorn 로그, Nginx 로그까지 확인하고, 공식 문서와 chatGPT의 도움을 받아 해결하려고 시도했습니다. 또한 HTTPS 설정을 통해 더욱 보안이 강화된 웹 어플리케이션 환경을 구축했습니다.
  6. 배운 점 및 성과
    • 실제 배포 환경에서 운영되는 웹 애플리케이션을 구축해본 경험을 통해 서버 구성과 보안 설정의 중요성을 깨달았습니다. 특히 VS code 작성부터 시작해서 Github에 commit&push를 통한 연동, 그리고 AWS 서버로 Github에 있던 코드들을 clone 하는 것, 그 후 서버 구성을 통해 최종 배포 완료까지, A 부터 Z 까지 해냈다는 것이 굉장히 힘들었지만 재미난 경험이었습니다.

링크 및 스크린샷, 코드 예시의 경우에는, 블로그에서 [AI Chatbot 만들다!] 카테고리에 전부 기록해놓았습니다.

이번 프로젝트는 HOLIX의 AI를 활용한 개발 이라는 강의의 도움을 받아 진행했습니다.

 

AWS에서 사용 중인 서비스들은 모두 종료하여, aichatbot-wyfamily.com/에 들어가도 아무것도 뜨지 않을 것입니다.

(* 돈을 계속 지불하고 있을 이유가 없으니 ㅠㅠ)