기능을 발전시켜두고 기록은 까먹은 채... 지금이라도 복습 겸 기록을 시작한다.

이전 게시물에서 보완해야 하는 부분에 사용자의 여행 취향을 반영할 수 있는 효율적인 방법이 필요하다고 얘기했었다. 대화를 시작하기 전 사용자의 여행 유형을 파악하고 그 유형을 기반으로 대화를 진행하면 사용자에게 더 잘 맞는 답변을 만들수 있지 않을까?
그래서 일명 TBTI (Travel MBTI)를 만들고 이 설문 조사를 바탕으로 사용자의 유형을 정한 후 가이드 봇은 이에 따라 달라지는 추가적인 질문을 통해 사용자의 여행 선호도를 분석한다.

팀원들과 TBTI 테스트를 만들어 사용자의 여행 부캐를 찾을 수 있도록 하였다.
질문은 총 4가지로 구성된다.





설문 조사가 끝나면 유형에 따른 귀여운 동물로 개인의 TBTI 캐릭터를 설명과 함께 얻게 된다.

그림과 같이 채팅방 상단에 사용자의 유형을 볼 수 있으며 사용자와 채팅을 할 때, 가이드 봇은 유형에 따라 다른 질문들로 사용자의 선호 여행을 분석할 수 있도록 한다.

위의 흐름은 LangGraph의 기능을 통해 자동 생성된 그림이다. 전보다 살짝은 더 복잡해졌다. 위의 보라색 네모칸은 LangGraph에서 노드를 의미하고, 프로세스 진행 시 모든 노드에 공유하는 정보를 저장할 수 있다. 노드의 주요 정보는 사용자의 여행 유형(TBTI), 필터(filter)
필터(filter)는 쉽게 말하면 사용자의 여행 특성으로 여행 장소 데이터베이스 검색 시 검색 조건으로 이용된다.
노드 별로 진행 흐름을 설명해본다.
메인 코드는 다음과 같고 다음 게시물에서 프로그램에 대한 자세할 설명이 이어진다.
LangGraph Agent 메인 코드