
안녕하세요. 이번 글에서는 저희 4차 팀 프로젝트, 신용카드 추천 챗봇 개발 과정과 그 과정에서 느낀 점을 기록해보려 합니다.
4차 프로젝트는 3차 프로젝트의 기능을 유지한 채 AWS EC2와 Django 배포 경험을 쌓는 것이 핵심이었습니다.
저희 6조는 "신용카드 추천 챗봇"이라는 주제로 진행했습니다. 요즘 카드 혜택이 정말 다양하잖아요, 정보를 얻기 위해 카드사 웹사이트를 하나하나 비교하거나 블로그 후기를 찾는 건 번거로운 일입니다. 저희는 이런 문제를 해결하고자 대화형 인터페이스 기반의 카드 추천 시스템을 만들었습니다.




시스템 구조는 다음과 같습니다.
사용자가 Web UI를 통해 질문을 입력합니다.
Django view 함수에서 입력을 받아,
일반 대화면 GPT에게 바로 전달해 응답을 생성하고,
카드 추천 요청이라면 Recommender 모듈을 거쳐 GPT 응답을 생성합니다.
Recommender 모듈은 핵심 로직을 담당하며, 내부 구성은 다음과 같습니다:
self.rag_chain = (
RunnableLambda(self._retrieve_and_filter_docs) # 🔍 문서 검색 & 필터링
| RunnableLambda(self._format_docs_for_prompt) # 📄 포맷팅
| PromptBuilder.create_recommendation_prompt() # 🧠 프롬프트 생성
| self.model_manager.llm # 🤖 GPT 호출
| StrOutputParser() # 🔤 문자열로 변환
)
이 체인을 통해 사용자의 쿼리에 적절한 카드 정보를 찾아 자연어로 추천해주는 흐름입니다.
저는 이번 프로젝트에서 로그인 기능 구현과 발표를 담당했습니다. 로그인 기능을 구현하면서 Django를 더 깊이 이해하고, 발표를 준비하면서 전체 시스템의 흐름을 정리할 수 있었습니다.
이제 최종 프로젝트가 남아 있습니다. 이번 프로젝트 경험을 바탕으로, 더 정교한 시스템과 사용자 경험을 고려한 인터페이스를 설계해보고자 합니다. 특히 발표와 문서화 경험은 제게 큰 자산이 되었습니다. 기술을 설명하고 전달하는 능력을 계속 발전시키고 싶습니다.
읽어주셔서 감사합니다!