
영상 링크: Transforming search and discovery using LLMs — Tejaswi & Vinesh, Instacart
채널명: AI Engineer
LLM을 활용한 Instacart의 검색 및 탐색 혁신 핵심 요약
- Instacart는 북미 최대 온라인 식료품 플랫폼으로, 고객이 원하는 상품을 빠르고 효율적으로 찾는 ‘검색’과 새 상품을 제안하는 ‘발견’ 기능을 핵심 미션으로 삼음
- 기존 검색 시스템은 ‘너무 광범위한 쿼리’(예: 간식)와 ‘매우 구체적/희귀 쿼리’(예: 무가당 식물성 요거트)에 대하여 데이터 부족으로 정밀도와 다양성 문제를 겪음
- LLM(대형언어모델)을 검색 질의 이해, 쿼리 분류, 쿼리 재작성 등 다양한 모듈에 적용하여 ‘꼬리 쿼리’에서 정밀도 18%p, 재현율 70%p 향상이라는 큰 개선 성과를 달성
- 텍스트 분류 문제(예: ‘protein’)에서 Instacart만의 구매 행동 시그널과 ‘상위 전환 카테고리(Top K converting categories)’ 정보를 LLM 입력 프롬프트에 추가하여 맥락 오인을 최소화
- 쿼리 재작성(예: 1% 우유→우유) 및 동의/대체/확장형 쿼리 생성에 LLM을 사용, 품목 없는 결과 대폭 감소로 사용자 경험 및 매출 증가에 기여
- 실시간 LLM 호출로 생길 수 있는 레이턴시 이슈를 대량 배치 처리와 캐싱 정책으로 해결, 검색상위/중간군 쿼리는 사전연산, ‘롱테일’ 쿼리는 distilled Llama 모델로 대체
- 검색 결과 페이지에서 LLM을 활용해 ‘대체 상품’, ‘보조 상품’ 등 신규 탐색형 콘텐츠 자동 제작, 사용자 참여율과 거래액 모두 상승
- LLM 기반 추천의 성능 제고를 위해 Instacart 상품, 브랜드, 사용자 행동 등 도메인 메타데이터를 프롬프트에 주입해 정확도/활용도 극대화
- LLM 생성콘텐츠의 평가·랭킹 체계 고도화를 위해 전통적인 순위예측(PCTR/PCBR) 외에 다양성과 비즈니스 효과 중심의 새로운 평가 기준 도입
- 최상위 결론: LLM의 세계 지식과 Instacart 내부 도메인 데이터를 결합했을 때 꼬리 쿼리 대응력, 신규 탐색 경험, 전체 검색 품질이 실질적으로 향상됨
세부 요약 - 주제별 정리
Instacart의 검색과 제품 탐색은 재구매와 신규 상품 발견 모두를 아우르는 핵심 기능임
- Instacart는 북미 최대 온라인 식료품 플랫폼이며, 고객이 자주 구매하는 기존 품목(재입고 상품)과 처음 시도하는 상품 모두를 신속히 검색하고 탐색하는 환경을 구축하는 것을 목표로 함
- 한 번 장을 볼 때 여러 개의 상품을 찾는 경우가 많고, 대부분의 구매가 검색 흐름 안에서 이루어짐
- 검색은 ‘정확한 상품 찾기’와 ‘신규 상품/연관 상품 발견’이라는 두 가지 역할을 동시에 수행
- 신규 상품 발견은 고객뿐 아니라 광고주, Instacart 비즈니스 전반(장바구니 크기 확대 등)에 중요
- 고객들은 ‘찾고 싶은 상품’은 검색을 통해 빠르게 찾고 있으나, 그 외 연관제품 탐색은 불편하다는 피드백이 누적되어 개선 필요성이 컸음
전통적 검색엔진은 ‘광범위’와 ‘희귀’ 쿼리, 신상품 추천에서 본질적 한계에 직면함
- 너무 넓은 키워드(예: snacks)는 매핑되는 제품이 많아 의미 있는 랭킹 생성을 위한 행동 데이터(engagement data) 부족 문제 발생 → ‘콜드 스타트’ 문제
- 매우 특이하거나 일회성 쿼리(예: unsweetened plantbased yogurt)는 발생 빈도가 낮아 알고리즘 훈련 데이터 부족
- recall(검색 품목 포함도)는 높아져도 precision(정확도)가 낮아지는 trade-off 빈번
- 오프라인 식료품점에서처럼 ‘매대 신상품 발견’ 느낌을 온라인에 이식하는 데 어려움, 한 번에 여러 검색을 해야하는 현실적 불편함이 있음
Instacart는 쿼리 분류 등 검색 파이프라인 상단부터 LLM을 적용하여 품질을 비약적으로 개선함
- 검색 파이프라인의 가장 상단에는 ‘쿼리 이해’ 모듈이 존재하고, 여기엔 쿼리 정규화/태깅/분류/카테고리 분류 등이 포함됨
- 쿼리를 1만여 개의 상품 카테고리 중 복수 라벨에 멀티라벨 분류하는 작업에 LLM 도입
- 기존 FastText 기반 네트워크/통계 모델(NPMI 등)은 행동 데이터가 충분한 ‘상위 쿼리’엔 강했지만, 희귀 쿼리에선 커버리지와 정밀도 저조
- BERT 등 더 복잡한 사전학습 모델(PLM)도 도입했으나, 데이터 부족+추가 레이턴시로 기대한 만큼 성과 미흡
Instacart 도메인 행동 데이터를 LLM 프롬프트에 넣어 ‘사용자 맥락 오해’ 대폭 최소화함
- LLM은 일반 지식에 기반하므로 Instacart 고유 사용자 행동(예: ‘protein’ 입력 시 닭고기/두부가 아닌 ‘프로틴바/단백질보충제’가 정답)과 괴리 발생
- 해결책: 각 쿼리에 대해 ‘상위 전환 카테고리(top K converting categories)’와 같은 Instacart 내부 구매 트렌드 데이터를 프롬프트에 포함
- 예시: “Werner soda”라는 쿼리에서 기존 모델은 ‘과일맛 소다’로 분류했으나, LLM은 ‘진저에일 브랜드’로 정확하게 분류
- 이 과정을 통해 tail(희귀) 쿼리 기준 정밀도 18%p, 재현율 70%p 대폭 상승
쿼리 재작성(Rewrite) 분야에서도 LLM 적용으로 ‘무결과’ 쿼리 급감 효과를 거둠
- 식료품 분야는 리테일러마다 카탈로그 규모가 상이해 같은 검색어라도 검색 불능 사례가 잦음
- 사용 예: “1% milk” → “milk”로 재작성, 결과가 없는 쿼리에도 결과를 노출하도록 유도
- LLM을 사용해 대체, 확장, 동의어 등 다양한 형태의 재작성 쿼리 생성
- 예시: “avocado oil” 입력 시 대체(olive oil), 확장(healthy cooking oil), 동의어(avocado extract) 등 생성
- 기존 모델 대비 품질·성과 향상, 오프라인 평가 및 실제 서비스 적용에서도 ‘무결과 쿼리’ 감소 증대
LLM 결과는 대량 배치·캐싱 전략과 사전계산을 통해 실시간 검색 속도 저하 없이 서비스됨
- Instacart 검색은 쿼리 분포상 head&torso(상위·중간 빈도) 쿼리가 대부분
- 이들 쿼리는 LLM 활용하여 미리 결과를 사전 계산(offline batch)하고 캐싱, 실시간 레이턴시 이슈 없이 즉시 제공
- 롱테일 쿼리는 기존 모델을 fallback으로 사용하다, 점차 distilled Llama 모델 등 더 나은 경량화 LLM으로 대체 검토
- 이런 아키텍처 덕분에 품질 향상 효과는 극대화하면서 속도 저하는 최소화
검색 결과 페이지에 LLM 기반 신규 탐색 콘텐츠를 자동 생성해 사용자 경험과 매출 동시 향상
- 검색 결과 페이지의 효용성 증대 목표: 상품을 이미 카트에 담은 이후 별도 검색 없이 추가상품, 대체상품, 연관 아이템을 탐색할 수 있게 함
- LLM을 활용해 ‘비슷한 상품’, ‘대체 구매 추천’, ‘보조/레시피 재료’ 등 탐색형 제안을 자동 생성
- 예시: ‘swordfish’(상품 없는 경우)→ 대체 해산물, ‘sushi’(상품 많은 경우)→ 아시아 요리 재료, 일본 음료 등 다양한 추천
- 탐색형 추천 노출 전후 비교 시 사용자 참여(engagement)·매출(per search revenue) 모두 유의미한 개선 확인
LLM 프롬프트에 행동 데이터, 카테고리 맥락, 품목 속성 등 Instacart 내부 정보를 주입함으로써 추천 정확도를 극대화함
- LLM만 사용할 경우 ‘상식적인’ 결과는 잘 내놓지만, 실제 Instacart 사용자 행동과 괴리(bar) 발생
- 각 쿼리별 Top K 구매 카테고리, 브랜드, 식단 속성 등 세부 메타데이터와 후속 검색 쿼리까지 프롬프트에 추가
- 프롬프트 예시: “해당 쿼리의 상위 전환 카테고리, 브랜드, 식이 성분, 후행 쿼리 정보” 등 추가
- 메타데이터 주입 후 탐색형 추천 결과 정확성과 사용자 체감도가 현격히 상승
생성 콘텐츠 평가와 랭킹은 ‘비즈니스 효과’와 ‘다양성’, ‘도메인 일치성’에 초점을 맞춤
- LLM 생성 결과가 Instacart의 상품 재고, 내부 용어 체계, 고객 기대 등 비즈니스 요구에 맞는지 검증하는 것이 중요
- 비즈니스 주요지표(매출 등)와 일치하는 추천이 나오는 프롬프트·메타데이터 조합 반복 실험
- 기존 추천순위모델(PCTR/PCBR)로는 한계 → 다양성 기반 랭킹 등 별도 기법 도입
- 생성결과의 객관성·안정성 검증 위해 LLM을 ‘재판관(automated judge)’으로 활용
롱내추럴랭귀지 쿼리(예: 여러 품목/조합 요청)에 대해서도 LLM과 맥락 주입 조합이 가장 효과적임이 확인됨
- 사용자들이 ‘세 살 아이를 위한 건강 간식’ 등 복합 자연어 쿼리를 입력할 때도 LLM+도메인 데이터 조합이 최적의 퍼포먼스를 보임
- “Ask Instacart” 프로젝트 등에서 자연어 긴 쿼리를 상품 검색 라우팅에 잘 매핑하기 위해 내부 맥락 데이터가 필수적이었음
- 예: 어버이날 등 특정 의미 쿼리 시도 시, 결과에 성별·연령 등 맥락을 LLM->검색시스템으로 전달해야 정확한 아이템(여성향 향수 등)이 추천됨
- 자동화된 평가 파이프라인/맥락 유입 중요성 반복 강조
LLM을 직접 활용한 검색 혁신의 성공 비결은 Instacart 내부 정보와 결합한 ‘하이브리드’ 접근임
- LLM의 월드 지식만으로는 실제 사용자가 원하는 식료품 추천 정확도가 부족함
- Instacart 도메인 지식(상위 카테고리, 브랜드, 행동 로그, 내재 메타데이터 등)을 활용한 하이브리드 프롬프트가 실질적 성과 견인
- 콘텐츠 평가, 쿼리 예측, 사용자 행동에 대한 면밀한 검증이 기술 도입 못지않게 중요함을 실무 경험으로 도출
- LLM은 문서검색 등 단일 기능만이 아니라, 쿼리 전체 흐름의 정확성과 일관성, 신규 서비스 개발에 근본적 변화 유도 가능성을 보여줌