LG U+ Why Not SW CAMP 7기 - 25주차 회고

God menu·2025년 11월 1일

이번주는 정말... 바뀐 기획으로 인해 다시 해야할 것들이 너무 많아져서 수업시간, 쉬는시간 구분없이 열심히 달렸다. 🔥

초반에는 전처리-프롬프팅-전처리-프롬프팅의 반복이었다. 프롬프트 테스트로 추천을 받다보면 데이터에서 문제가 하나씩 생기고, 그걸 데이터 담당 팀원과 공유하면서 데이터 전처리하시고, 또 프롬프트 테스트하고, 또 전처리하고... 눈알이 빠지는 줄 알았다. 데이터 전처리와 프롬프트가 끝이 없는 것 같다. 완전하게 내 마음에 들게 하기란 너무 어려운 것 같다.

결국 팀 회의를 진행하였고 데이터 스키마를 확정짓고 전처리를 아예 끝내버리기로 하였다. 데이터 엔지니어 팀원이 이를 맡아주기로 하였고 나는 지옥같은 프롬프트를 다음날로 미뤄두고 지난주에 작성했던 API명세서를 기반으로 FastAPI 기반 백엔드 서버에서 회원관리 기능(API)을 구현하였다.


API명세서를 프론트 담당 팀원과 함께 작성하였는데 살면서 처음 작성해봐서 뭐가 뭔지 잘 몰랐지만 다른 팀의 명세서도 봐보고, 서로 찾아가며 나름 잘 작성해보았다. 이 중 나는 가장 먼저 회원관리 기능 중 회원가입/로그인/로그아웃/토큰갱신과 사용자 기능 중 내정보 조회를 먼저 구현하였다.


앨리스로 회원가입 해봤더니 Response는 200(정상응답)

DB에서 user_info에 앨리스가 잘 들어온 것을 확인

앨리브로 로그인해봄 Response는 200

응답에 accessToken 키가 생김 + 브라우저 쿠키에 refresh_token가 세팅됨

이후에는 아이디 찾기/아이디 찾기 확인/비밀번호 찾기/비밀번호 변경 기능들을 추가하였다.

아이디를 찾을 때

'이름', '이메일'을 입력받으면 해당 '이메일'로 유효시간이 10분인 인증코드를 보내도록한다.

아이디 찾기 확인에서는

'이메일', '인증코드'를 입력받으면 해당 사용자의 'id'를 출력한다.

비밀번호 찾기에서는

'아이디', '이메일'을 입력받으면 해당 '이메일'로 유효시간이 10분인 인증코드를 보내도록한다.

비밀번호 변경에서는

'인증코드'와 '재설정할 비밀번호'를 입력받으면 사용자 정보의 password가 변경한 비밀번호로 업데이트된다.


이제는 정말로 프롬프팅를 최종적으로 마무리하였다. 🤣

  • 사용자의 냉장고 재료로 검색
  • 사용자의 요리 난이도로 1차 필터
  • 다양한 음식이 나오게 정리
  • LLM에게 "사용자 맞춤 버전"을 만들라고 시킴

프론트 담당자에게 보내기 전 FASTAPI서버로 테스트해보았다. 현재는 랜덤 사용자를 불러오고 해당 사용자의 냉장고 재료 목록을 불러오고, LLM이 3가지의 후보를 추천하도록 하였다.


LLM 추천 답변을 바탕으로 recommend_recipe 테이블에 잘 적재된 것을 볼 수 있다.

이후에는 마찬가지로 추천API 구현하였고, 회원 탈퇴API와 FAQ API도 구현해놓았다.

추천을 하게되면 보여지는 3개의 레시피들이 recommend_recipe 테이블에 적재되도록 하였고 추천 /me/recommendations API 구현된 결과가 아래처럼 잘 나오는 걸 볼 수 있다.

회원 탈퇴시에는 사용자 테이블에서 탈퇴여부(0혹은1)가 업데이트 되며 사용자의 이름, 이메일, 비밀번호가 비식별화되도록 처리하였다.



이번주가 스프린트3 기간이었는데 우리 팀원 모두 열정적으로 임해서 힘들었지만 무탈하게 계획했던 기능들은 대부분 구현한 것 같아서 뿌듯하다. 다음 스프린트때 체력이 남아날진 모르겠지만 계속 하다보니 기능 측면에서 살짝 부족한 것 같아 기능을 하나정도 더 추가하고 싶은 욕심히 든다. 이를 어떻게 해야할지 팀원 간 의논도 해보고 배포 관련해서 멘토님께 여쭤보며 프로젝트 마지막날까지 열심히 해내고싶은 마음이다. 😎

0개의 댓글