배달의민족, GPT로 메뉴 추천한다
배달의민족 앱이 생성형 인공지능(AI) 기능을 탑재했다. 사용자의 상황에 맞는 메뉴를 추천해달라고 물어보면, AI가 적절한 메뉴를 추천 이유를 대며 제안한다. 지난 17일부터 서울 송파지역에 시범 서비스중인 이 기능은 11월중 정식 출시될 예정이다. 우아한형제들은 지난 26일 한국마이크로소프트에서 개최한 '마이크로소프트 스타트업 서밋-젠AI 로드쇼'에서 최근 배달의민족 앱에 시범 도입한 생성 AI 기반 메뉴 제안 기능을 소개했다. 배달의민족 앱의 메뉴 제안 기능은 이용자의 리뷰 데이터 학습을 바탕으로 상황에 맞는 메뉴를 추천하도록 만들어졌다. 애저 오픈AI 서비스의 GPT-4 모델을 기반으로 강도높은 프롬프트 엔지니어링 과정을 거쳐 개발됐다. 예를 들어 '가족과 즐길 수 있는 메뉴'라고 물어보면 다른 사용자들이 가족과 먹기 위해 주문했던 메뉴를 검색창 바로 아래서 추천한다. 오혜진 우아한형제들 GPT서비스팀 팀장은 이날 본지와 인터뷰에서 “사용자가 검색창에 원하는 상황을 입력하면 거기에 적합한 매뉴를 추천하는 서비스고, 추천 맥락은 사용자의 주문 리뷰 데이터를 기반으로 시간대나 맛 등의 값을 포함해 제안한다”며 “제안된 메뉴 페이지로 들어가면 GPT로 작성한 소개글을 보여준데, GPT가 말을 거는 느낌을 주게 했다”고 설명했다. 이기호 우아한형제들 최고제품책임자(CPO)는 “기존의 메뉴 기반 커뮤니케이션은 매우 많아진 가게 규모 때문에 사용자 입장에서 탐색하기 어려워졌다”며 “다양한 추천 방식을 고민해왔고 생성 AI로 사용자의 탐색 시간을 줄이는 이점을 줄 것으로 생각한다”고 말했다. 배민 GPT 모델은 리뷰 분석 기반 메뉴 추천뿐 아니라 다양한 카테고리, 키워드 기획전을 생성해 노출한다. 상황과 메뉴를 조합해 다양한 리스트를 만들어내고, 그 제안을 보면서 메뉴를 고르는 것이다. '일식'이 먹고 싶은데 메뉴를 고민한다면 '카테고리'에서도 다양한 리스트를 보여준다. 오혜진 팀장은 세션 발표에서 “배민에 GPT를 쓰기 위해 많은 고민을 했다”며 “사용자가 챗GPT에 익숙해 실시간으로 채팅하는 경험을 많이 원했는데, 환각현상의 위험성, GPT의 TPM 제약 등으로 실시간 채팅을 과감히 포기하고 서비스 구성을 시작했다”고 말했다. 오혜진 팀장은 “당시 가장 강력한 모델이라 판단한 GPT를 쓰기로 했고, 다음으로 무엇을 할 것인지 고민했다”며 “배민 고객은 먹고 싶은 메뉴만 찾지 퀄리티나 맛을 검색할 수 없으므로 맛이나 퀄리티 좋은 메뉴를 판단하도록 도와주자고 생각했다”고 설명했다. 그는 “이를 위해 고객 리뷰 데이터를 이용하기로 했는데, 이 데이터를 GPT에 활용하려면 개인정보, 지적재산권 등의 장애물을 넘어야 했다”며 “여러가지 전처리 작업과 모델 관점에서 고민해 해소했다”고 덧붙였다. 오팀장과 그의 팀은 이용자 리뷰 데이터에서 맥락 속 키워드만 활용하기로 했다. 음식의 특성을 알려주는 '바삭', '자주', '아이들 잘 먹어요' 같은 키워드를 뽑아냈다. 여기에 애저 오픈AI의 API들을 활용해 다양한 데이터를 활용하게 했다. 시간대, 함께 먹는 사람, 상황, 맛 등을 리뷰에서 뽑아서 GPT 모델을 훈련시켰고, 1차적으로 안전성을 확보한 120종의 컥텍스트를 만들었다. 서비스 개발은 약 6개월 걸렸다고 한다. 배달의민족 생성 AI 기능은 LLM을 기업에서 비즈니스에 접목하는 몇가지 방식 중 '프롬프트 엔지니어링' 방식의 사례다. 우아한형제들 자체의 LLM을 만들거나 기존 LLM을 조정하는 '파인튜닝' 방식을 택하지 않았다. 오 팀장은 “파인튜닝 없이 바로 API를 콜해서 정답에 가까운 내용을 함께 넣어서 프롬프트를 쓰면 그에 맞게 운영된다”며 “처음에 시스템 프롬프트라 해서 아웃풋 세팅을 정형화해 시작할 수 있어서 이런 부분에 작업을 거쳤다”고 설명했다. 이기호 CPO는 “처음부터 GPT 환각 걱정을 많이 하고, 이 문제를 어떻게 극복할까 고민했다”며 “파인튜닝이 문제를 줄일 수 있지만 없애진 못하므로, 일단 전체 데이터를 받고 그를 충분히 평가해서 안정성을 보장할 때만 서비스한다”고 밝혔다. 개발 초기 배민GPT는 적절한 추천을 하지 못했는데 이상한 말투를 쓰거나, 틀린 원산지를 답하거나, 표시광고법을 위반하는 내용도 담았다고 한다. 이를 위해 UX라이터와 GPT서비스팀의 협업으로 프롬프트 엔지니어링을 수행하며 서비스를 고도화했다. 튜링테스트까지 거쳤다. 오 팀장은 “회사 내부의 데이터 사이언티스트들이 많이 있어서 여러 모델의 파인튜닝을 장기적으로 고민하고 있는 것으로 안다”며 “그러나 GPT서비스팀 입장에선 어떻게 서비스를 빠르게 만들까에 집중했다”고 설명했다. 그는 “사실 서비스를 한창 구상할 때 GPT에서 파인튜닝을 제공하지 않았기에 파인튜닝을 못할 경우 어떻게 해야 하는지 고민했다”며 “다각도로 프롬프트 엔지니어링을 진행하고 튜링테스트를 했더니 UX라이터와 처음부터 설정한 아이덴티티를 사용자가 느끼게 됐다”고 말했다. 그는 “프롬프트 엔지니어링으로도 충분히 아웃풋의 가이드를 어느정도 할 수 있다고 생각하고, 실제 서비스 오픈에서 GPT 아웃풋 외적인 부분에 추가적인 가이드레일을 만들었다”며 “이 부분이 프로젝트에서 많은 범위를 차지했다”고 덧붙였다. 실제 서비스 출시를 앞둔 지금도 생성 AI의 환각 문제는 여전한 고민거리다. 오 팀장은 “잘못된 것을 지어내는 수준이면 지나갈 수 있지만, 법률적으로 문제되는 부분을 지어내거나 하는 게 있다”며 “쉬운 문제는 잘 맞추고 배점 높은 문제를 틀리면 그것만 가르치면 되겠지만, GPT는 어려운 건 잘 하면서 쉬운 걸 잘 못하는 경우가 있어 전반적으로 품질 체크를 다 들여다봐야 하는 게 고민되는 점”이라고 말했다. 배달의민족 앱에 생성 AI를 활용하면서 내부 생산성도 높이게 됐다고 한다. 그동안 카테고리, 기획전 등의 기능을 현재까지 배달의민족 담당자 두세명이 수작업으로 생성해왔다. 여름에 냉면이 인기있으니 냉면 기획전을 그때그때 만드는 식이었다. 이기호 CPO는 “수작업으로 1년에 100개 정도의 기획전을 만들었는데, GPT 모델을 사용하면서 9천개 가까운 리스트를 만들 수 있었다”며 “한번에 만들어내는 양이 완전히 다르다”고 말했다. 오 팀장은 “동적 카테고리도 설명을 쓰게 돼 있는데, 한두사람이 창의성을 발현하는 것도 100개, 200개 되면 힘들어진다”며 “GPT는 정해진 가이드 안에서 계속 만들어낼 수 있어서 더 용이함이 있는거 같다”고 덧붙였다. 담당팀의 주안점은 사용자에게 어떤 동선으로 추천 정보를 보여줄까였다. GPT란 새로운 기술을 강조하면서도, 사용자에게 이질감을 느끼지 않게 하는 디자인을 고민했다. 이에 더해 리스크 검토도 강도높에 이뤄졌다. 법무 검토를 통해 잘못된 아웃풋을 방지하려 노력했다. 이기호 CPO는 “한국에서 서비스하는 입장에서 마이크로소프트의 지원이 빨랐다”며 “내부 해커톤도 마이크로소프트 협력으로 진행해 거기서 나온 아이디어를 다양하게 검토하고 있다”고 말했다. 이 CPO는 “일단 내부 생산성을 확대하는 부분에 고민을 많이 하고 있는데, 내부 담당자가 데이터를 어떻게 쉽게 보고 추출할 것인지 AI로 해보자는 생각을 하고 있다”며 “또 비마트 서비스의 기획전에도 생성 AI를 활용하려고 보고 있고, 배민 앱의 선물하기 서비스에서 사용자가 보내는 카드 메시지에 '나만의 카드만들기'란 기능으로 사진을 업로드하게 돼 있는데, 사용자의 프롬프트로 자기만의 사진을 제작하는 것도 콘셉트적으로 보고 있다”고 밝혔다. 우아한형제들이 마이크로소프트 애저 오픈AI 서비스 활용을 결정하게 한 주요 요인 중 하나도 환각과 개인정보 문제였다. 이기호 CPO는 “직접 오픈AI를 활용할 때의 리스크를 검토했는데, 오픈AI는 기본적으로 사용자 데이터를 어느정도 수집하는지 명시하면서 모델 학습에 사용할 수 있다고 명시하고 있어 고민이었다”며 “사내 데이터를 활용하는 문제여서 고민이었는데 애저는 데이터 가이드라인에서 데이터를 수집하지 않고, 오픈AI로 데이터를 보내지도 않는다고 해 안심하고 사용하게 됐다”고 설명했다. 이밖에 서비스의 안정적 운영을 위한 AI 인프라의 확보, 지원 등도 중요한 선택 요인이었다고 한다. 이 CPO는 “학습해 가는 단계여서 모르는 게 많았는데 마이크로소프트에서 많은 교육을 지원받았다”며 “오픈AI 측에서 새롭게 나온 부분을 마이크로소프트에 질의하면 빠르게 답변을 받는 등 도움이 많이 됐다”고 밝혔다. 오 팀장은 “서비스 구축 과정에서 인프라가 필요하고, 마이크로소프트 인프라 담당자와도 긴밀하게 협업할 수 있었다”며 “어떤 것을 만들겠다는 계획이 있는 상태에서 이미 구축된 인프라를 활용해 서비스로 사용하면 되는 부분에서 많이 도움됐다”고 덧붙였다. 우아한형제들은 계속 생성 AI에 신중한 입장을 유지하고 있다. 배달의민족이 사용자와 업주 사이에 있는 서비스기 때문에 이해당사자의 의견과 입장이 다를 수 있어서다. 특히 리뷰 데이터를 활용한다는 점에서 이용자와 업주를 납득시킬 수 있어야 한다는 입장을 갖고 있다. 오 팀장은 “사용자에게 왜 이것을 추천하는지, 무엇 때문에 좋다는 평가를 하는지에 집중하는 서비스이며, 업주에게 좋은 평가를 받은 이유를 녹여주는 서비스라고 생각해주면 좋겠다”고 말했다. 이 CPO는 “업주 리스크가 큰 회사기 때문에 내부에서 많은 고민을 하고 있고, 불평등을 최소화하도록 리스크 검토를 거친 서비스”라고 강조했다.