추천프로덕트팀은 데이터 기반의 추천 알고리즘과 정교한 탐색 설계를 통해 사용자가 고민 없이 최적의 맛집을 발견하도록 돕는 조직입니다.
여기에 LLM과 다양한 AI 모델을 활용해 실질적인 서비스 문제를 해결하는 AI프로덕트팀이 긴밀하게 호흡을 맞췄습니다.
이번에 소개할 내용은 위 두 팀이 협업하여 고객의 맛집 탐색 고민을 성공적으로 덜어낸 프로젝트에 대한 이야기입니다. 서비스 내에 가득한 별점 5점 리뷰들 사이에서 진짜 보석 같은 맛집을 찾기 위해, LLM으로 리뷰의 진심을 정교하게 레이블링(labeling)하고 이를 가벼운 모델로 지식 증류(knowledge distillation)하여 서비스에 녹여낸 생생한 여정을 들려드리려 합니다.
1. 문제 정의: "별점 5점인데, 왜 우리는 또 리뷰를 읽고 있을까?"
맛집을 고를 때 여러분은 어떤 과정을 거치시나요? 아마 대부분 가게 목록 상단에 노출된 별점을 먼저 확인하실 겁니다. 그런데 여기서 한 가지 의심스러운 데이터 수치가 발견되었습니다. 대부분의 가게가 높은 점수를 유지하는 ‘별점 인플레이션’ 현상입니다. 아래의 ‘개별 리뷰’ 별점 분포 그래프를 보시면 그 이유를 쉽게 알 수 있습니다. 고객이 남기는 리뷰의 별점이 이미 5점에 압도적으로 몰려 있었던 것이죠.

저희는 이 수치 뒤에 숨겨진 사용자의 여정을 면밀히 관찰했습니다. 사용자들은 별점이 5점인 가게를 보고도 선뜻 주문 버튼을 누르지 않았습니다. 대신, 다시 리뷰 목록에 진입해 실제 텍스트를 하나하나 대조하며 ‘이 점수가 진짜 신뢰도가 있는지’ 스스로 검증하는 과정을 겪고 있었죠. 심지어 이 과정은 가게를 바꿀 때마다 반복되었습니다.
"고객들에게 이런 불편을 계속 주는 게 맞을까? 우리가 미리 리뷰까지 검토해서 ‘진짜배기’ 가게를 추천해 줄 수는 없을까?"
이 질문이 프로젝트의 시작이었습니다. 단순히 데이터가 편향되었다는 의심을 넘어, 실제 별점 분포를 확인한 결과 변별력의 부재라는 실질적인 문제를 확인할 수 있었고, 우리는 기술적으로 이 ‘검증의 수고’를 대신해주기로 했습니다.
2. 해결의 열쇠: LLM, 리뷰의 ‘행간’을 읽는 심판이 되다
단순히 텍스트의 긍정/부정을 판단하는 기존 감성 분석으로는 한계가 명확했습니다. "맛있어요"라는 짧은 평과 "인생 맛집을 찾았습니다"라는 극찬은 모두 ‘긍정’으로 분류되지만, 그 속에 담긴 추천의 무게감은 완전히 다르기 때문입니다.
저희는 학계와 업계에서 평가자로서의 성능이 검증된 LLM-as-a-Judge 방식에 주목했습니다. LLM이 가진 문맥 파악 능력을 활용한다면, 단순한 단어의 조합을 넘어 리뷰어의 ‘진심의 온도’를 정확히 수치화할 수 있을 것이라 판단했습니다.
-
자동 어노테이션: LLM을 단순한 분석 도구를 넘어, 데이터를 가공하는 ‘심판’으로 활용했습니다.
-
정교한 수치화: 미묘한 수식어, 재방문 의사, 구체적인 맛 묘사 등을 종합하여 리뷰의 진정성을 점수화했습니다.
-
대규모 데이터 레이블링: 사람이 직접 읽고 판단하기에는 막대한 비용과 시간이 소요되는 방대한 리뷰 데이터를 LLM-as-a-Judge 방식을 통해 신속하고 일관성 있게 자동으로 어노테이션(automatic annotation)하였습니다.
이 과정은 단순히 데이터에 라벨을 붙이는 것을 넘어, 비정형 리뷰 텍스트를 정교한 수치형 데이터로 변환하여 추천 알고리즘에 즉시 활용할 수 있는 ‘학습 가능한 지식’으로 바꾼 결정적인 전환점이 되었습니다.
▸ 빠른 PoC와 데이터 검증
본격적인 도입에 앞서 샘플 리뷰를 추출해 LLM에게 점수를 매기게 하고, 그 분포를 확인해 보았습니다. 결과는 고무적이었습니다. 기존 시스템에서는 모두 같은 ‘고별점’이었던 리뷰들이, LLM의 손을 거치자 넓은 스펙트럼을 가진 점수로 재탄생했습니다.
하지만 이 점수가 얼마나 의미 있게 형성되었는지에 대한 데이터적, 정성적 검증 절차가 필요했습니다.
- 검증 1. 실제 별점 추정 능력: 텍스트 내용만 보고 평가했음에도, LLM 점수는 실제 사용자가 준 별점의 경향성을 정확히 따라갔습니다. 1점 리뷰는 낮게, 5점 리뷰는 높게 점수가 구성되는 것을 보며 모델의 기본 성능을 확인했습니다.

- 검증 2. 텍스트 길이의 함정 극복: 일반적으로 정성스러운 극찬 리뷰일수록 내용이 길어지는 경향이 있지만, 반대로 텍스트가 길다고 해서 반드시 높은 가치를 지닌 리뷰라고 단정할 수는 없습니다. 우리는 LLM이 단순히 텍스트의 양에 현혹되지 않고 리뷰의 ‘본질’을 판별하는지 확인하고자 했습니다. 정성 분석 결과, LLM은 길이가 짧더라도 진심이 담긴 임팩트 있는 리뷰에는 높은 점수를 부여하는 한편, 길이는 길지만 실질적인 알맹이가 없는 내용은 낮게 평가하는 등 텍스트의 질적인 차이를 정확히 꿰뚫고 있었습니다.

3. 실무적 돌파구: 수천만 개의 리뷰와 비용의 벽
성능은 확인했지만, 현실적인 장벽이 기다리고 있었습니다. 매일 수십만 개씩, 수개월간 누적된 수천만 건의 리뷰 데이터를 전량 유료 LLM API로 처리하기에는 비용적 한계가 명확했기 때문입니다. 이를 해결하기 위해 고성능 모델의 지식을 가벼운 모델에게 전수하는 ‘지식 증류(knowledge distillation)’ 전략을 선택했습니다.
거대 모델(Teacher)이 가진 정교한 추론 능력을 유지하면서도, 실제 서비스 환경에서 가볍게 돌아갈 수 있는 모델(Student)을 만드는 것이 핵심이었습니다.
-
Teacher Model (LLM): 고성능 LLM을 평가자로 활용했습니다. 사람이 직접 하기엔 수개월이 걸릴 10만 건의 리뷰 라벨링 작업을 단 몇 시간 만에 고품질 데이터셋으로 구축했습니다.
-
Student Model (ELECTRA): 실 서비스 적용을 위한 학생 모델로는 사내 데이터로 선행 학습(pre-training)된 ELECTRA 베이스 모델을 채택했습니다. 우리 서비스의 도메인 지식을 이미 갖춘 모델을 활용함으로써, 처음부터 학습하는 비용을 줄이고 파인튜닝만으로도 높은 성능을 확보할 수 있었습니다. 특히 ELECTRA 특유의 효율적인 구조 덕분에 적은 파라미터로도 서비스 환경에 최적화된 추론 속도와 문맥 파악 능력을 동시에 잡을 수 있었습니다.
🛠️ 효율과 안정성을 모두 잡은 기술 최적화 과정
-
지능 이식과 학습
- LLM이 정교하게 채점한 데이터셋을 기반으로 리뷰 속 ‘진심’ 감별에 특화된 전용 모델 최적화
-
일관된 점수 체계 확보
- 생성형 모델 특유의 랜덤성을 배제한 확정적(deterministic) 모델 구축 및 동일 리뷰에 대해 항시 일관된 점수를 산출하는 안정적 시스템 구현
-
비용 절감 및 실시간 대응
- 추가 API 호출 비용이 없는 사내 IDC 환경 배포를 통해 매일 쏟아지는 방대한 리뷰의 실시간 점수화 체계 완성
4. 가게 점수로의 변환: 별점에 ‘분별력’이라는 보조제 달기
AI가 매긴 점수를 실제 가게 점수로 변환할 때, 우리는 한 가지 원칙을 세웠습니다.
"고객이 직접 준 명시적 점수(별점)를 존중하되, AI 점수로 변별력을 더하자"
5점 만점 체계에서는 극찬의 리뷰와 평범한 만족이 모두 ‘5점’이라는 동일한 수치로 수렴되기 마련입니다. 우리는 이처럼 별점만으로는 충분히 드러나지 않는 데이터 사이의 미세한 밀도 차이를 AI 점수를 통해 포착하고자 했습니다.
-
가점 방식의 도입: 기존 별점이 가진 ‘고객의 명시적 의사’를 존중하되, 텍스트에 담긴 진심의 온도를 보조적인 가점 형태로 반영했습니다. 이를 통해 단순 수치로는 구분이 어려운 5점 만점 가게들 사이에서 미세한 품질 차이를 가려낼 수 있는 변별력을 확보했습니다.
-
황금 비율의 설계: 상위권에 편중된 기존 별점과 달리, 가게별 AI 리뷰 점수의 평균값은 정규분포에 가까운 형태로 고르게 나타나는 특성을 보였습니다. 우리는 이 분포의 표준편차를 정밀하게 분석하여 기존 별점의 위계질서를 흔들지 않는 최적의 반영 비율을 도출했습니다. AI 점수가 정교한 변별력을 더하되, 별점이 낮은 가게가 상단 가게를 무리하게 역전하여 발생할 수 있는 사용자 경험상의 혼란을 방지하기 위함입니다.
-
신뢰도를 높이는 베이지안 스무딩(bayesian smoothing): 데이터의 양에 따른 왜곡을 방지하기 위해 별점과 AI 점수 모두에 스무딩 기법을 적용했습니다. 리뷰가 적은 초기에는 전체 평균값을 기준으로 점수를 수렴시키고, 리뷰가 쌓일수록 실제 데이터가 점수에 강하게 반영되도록 설계하여 노출 순위의 신뢰도를 높였습니다.

5. 서비스 오픈: 데이터가 증명한 ‘리뷰 진심’의 가치
사내 데모를 거쳐 실제 서비스에 AI 리뷰 스코어를 적용한 결과, 단순 별점순 노출과는 확연히 다른 ‘엄선된 맛집’ 리스트가 만들어졌습니다. 하지만 실제 서비스 적용 과정은 예상치 못한 데이터의 편향을 발견하고 이를 정교화해 나가는 또 다른 도전의 연속이었습니다.
▸ 초기 단계: AI 점수의 카테고리 편향 발견과 극복
초기 테스트 결과, AI 리뷰 스코어 기반의 큐레이션은 기존의 다른 큐레이션 대비 높은 클릭률(CTR)을 기록하며 사용자들의 높은 관심을 확인했습니다. 하지만 주문 전환율(iCVR) 측면에서는 다소 아쉬운 지표를 보였습니다.

데이터를 면밀히 분석한 결과, 특정 카테고리(특히 카페/디저트)에서 AI 리뷰 점수가 유독 높게 형성되는 경향을 발견했습니다. 카페의 주요 고객층인 20대 여성 세그먼트에서 정성스러운 극찬 리뷰를 더 활발하게 작성하는 특성이 AI 점수에 반영된 것이었죠. 이로 인해 카페를 선호하지 않는 고객들에게도 카페 위주의 추천이 노출되면서 전반적인 전환 효율이 떨어지는 현상이 발생했습니다.

▸ 해결책: 개인화 모델과의 결합(Re-ranking)
우리는 단계적인 개선을 위해, 단순히 리뷰 점수만 높은 가게를 나열하는 방식에서 한 발 더 나아가 추천프로덕트팀이 보유한 ‘개인화 메뉴 선호도 모델’을 결합했습니다.
-
Before: 리뷰 진정성 점수 위주의 노출 (카테고리 편향 발생)
-
After: 사용자의 개인별 취향 + 리뷰의 진정성이 결합된 ‘나만을 위한 칭찬 가득 맛집’ 추천
개인화 리랭킹을 적용하는 온라인 실험을 진행한 결과, CTR은 기존의 상승폭을 유지하면서도 CVR이 큰 폭으로 개선되어 노출대비 주문전환율(iCVR)이 동일 구좌의 다른 큐레이션 대비 크게 웃도는 성과를 기록하게 되었습니다. 사용자의 취향을 존중하면서도 리뷰의 품질을 놓치지 않는 균형점을 찾은 것입니다.

▸ 추천의 본질: 지표 너머의 ‘만족스러운 경험’
무엇보다 고무적인 지표는 주문 이후의 재주문율에서 나타났습니다. 신규 맛집 탐색이 가장 활발하게 일어나는 ‘검색’ 지면을 통한 첫 주문 이후의 재주문율과 비교했을 때, 해당 큐레이션을 통한 첫 주문의 재주문율이 약 54% 가량 높게 나타나기도 했습니다.
이는 AI가 걸러낸 정성스러운 리뷰 데이터가 단순히 클릭을 유도하는 지표를 넘어, 고객에게 실제로 만족스러운 식사 경험을 제공하는 ‘품질의 보증수표’ 역할을 하고 있음을 보여줍니다. 결국 리뷰에 담긴 진심을 읽어내는 기술이 서비스에 대한 신뢰로 이어진 것입니다.
사실 이 결과는 서비스를 준비하며 가졌던 기분 좋은 기대감이기도 했습니다. ‘AI 리뷰 스코어’를 개발하며 데이터를 통해 첫 리뷰의 AI 스코어가 높았던 고객일수록 이후에 다시 주문할 확률도 함께 높아진다는 사실을 미리 발견할 수 있었기 때문입니다. 데이터로 먼저 확인했던 이 흥미로운 상관관계가 실제 서비스 지표를 통해서도 다시 한번 증명된 셈입니다.
6. 결론 및 향후 과제: 리뷰 그 이상의 가치, 신뢰를 추천하다
이번 프로젝트는 단순히 데이터의 편향을 바로잡는 것을 넘어, 리뷰라는 비정형 데이터 속에 숨겨진 고객의 진심을 발견하는 과정이었습니다. 덕분에 사용자들은 리뷰 목록을 일일이 대조하지 않고도, AI가 읽어낸 진정성 있는 점수를 통해 더 빠르게 믿고 선택할 수 있게 되었습니다.
우리는 이번에 구축한 AI 리뷰 스코어를 활용해, 사용자의 탐색 노력을 최소화하면서도 취향에 맞는 다양한 가게를 제안하는 시도를 멈추지 않으려 합니다. 앞으로 더 정교해진 데이터로 다음과 같은 새로운 추천 경험을 만들어낼 예정입니다.
- 시간별 극찬 가게 큐레이션: 특정 시간대에 만족도가 폭발하는 맛집 찾기
- 루키 맛집 추천: "뭐라고?! 벌써 극찬이 달리기 시작했다고?!" 싶은 반응 좋은 신규 가게 탐색
앞으로도 추천프로덕트팀은 기술을 통해 사용자의 고민은 덜어내고, 먹는 즐거움은 온전히 누릴 수 있는 최적의 추천 서비스를 만들어 가겠습니다.

이 프로젝트가 흥미로우셨나요? 여러분의 서비스에서는 리뷰 데이터를 어떻게 활용하고 계시는지 댓글로 자유롭게 의견을 나눠주세요!
우아한형제들 데이터 과학자 우아한형제들 데이터 과학자 우아한형제들 데이터 과학자
고객에게 닿는 추천의 가치를 고민합니다. 데이터와 AI 기술을 도구 삼아 고객 경험의 Pain Point를 해결하는 것을 즐기며, 이를 통해 서비스의 실질적인 변화를 만들어내는 일에 집중하고 있습니다.
우아한형제들에서 추천시스템 개발을 담당하고 있습니다.
생성·검색·분류 문제를 중심으로 NLP와 LLM 기술을 서비스에 연결해, 고객과 사장님이 실제로 체감하는 문제를 해결하는 AI 시스템을 만들고 있습니다.








English (US) ·