10월 30일, 우아한형제들에서 2024 우아콘을 개최했습니다. 저도 이 행사에 참여하게 되어서, 행사 참여 후기와 제가 참석한 세션 내용을 함께 공유드리려고 합니다.

이번 행사는 참여형 트랙을 포함한 총 8가지 트랙으로 구성되고, 각 트랙은 시간별로 6가지 세션으로 나눠지기 때문에, 정말 다양한 주제로 발표가 이뤄졌는데요.

시간대별로 한 가지 세션만 선택해서 참여하는 방식이었지만, 데이터와 AI, 인프라를 주제로 한 관심가는 세션들이 동시간대에 진행되는 경우가 많아서 고르기가 쉽지 않았습니다😅

그렇게 고르고 골라서 참석한 세션이다보니, 발표 내용을 정리한 분량도 꽤 커서 이번 행사 참여 후기 글은 분량을 나눠서 공유하도록 하겠습니다.

🗂️AI 데이터 분석가 ‘물어보새’ 등장: 데이터 리터러시 향상을 위한 나만의 데이터 분석가

2024 우아콘에서 저는 가장 먼저, 우아한형제들의 내부 AI 기반 데이터 분석 서비스인 물어보새를 소개하는 세션에 참석했었습니다. 이 세션에서는 ‘물어보새’ 서비스를 개발하게 된 계기와, 개발 과정 중에서 마주한 고민들을 어떻게 해결해나갔는지에 대해 발표해주셔서 재밌게 들었는데요.

‘물어보새’ 서비스는 우아한형제들의 BADA(Baemin Advanced Data Analytics)팀이 내부 구성원들의 데이터 활용 능력을 향상시키기 위해 제공하는 AI 기반의 데이터 쿼리 생성 및 분석 툴이라고 합니다.

‘물어보새’ 서비스가 탄생했던 계기는 아래와 같은 고민들이었다고 하는데요.

  • 사용하려는 데이터가 제대로 추출된 것이 맞을까?
  • 원하는 데이터 생성을 위해 어떤 테이블과 조건을 사용해야 할까?
  • 전달받은 쿼리문을 좀 더 쉽게 이해할 수 있는 방법은 없을까?

BADA팀 이런 고민들이 생겨난 원인은 구성원들의 데이터 활용 능력이 부족하기 때문이라고 파악했고, 먼저 데이터 리터러시를 아래와 같이 정의했다고 합니다.

  • 데이터 이해
  • 데이터 생성
  • 데이터 분석
  • 데이터 기반 의사소통

그래서 BADA팀은 데이터 기반 의사결정 역량을 강화하면 구성원들의 업무 효율이 증가할 것으로 예상하고, 이를 위해 아래와 같이 ‘물어보새’의 기능을 정의했습니다.

  • 데이터 디스커버리
    • 데이터 쿼리문 해설
  • Text-To-SQL
    • 데이터 쿼리문 생성 및 생성된 쿼리 요약 설명
  • Agentic Analytics
  • Knowledge Sharing

이런 배경으로 ‘물어보새’가 개발되었고, 현재 위 기능 중 데이터 디스커버리Text-To-SQL을 서비스 중이라고 합니다.

그렇다면 BADA팀에선 ‘물어보새 서비스를 구현하기 전에 어떤 요소들을 고려했을까요? 총 4개의 키워드로 나눈 고려 요소는 아래와 같습니다.

  • 체계화 - 체계적인 정보 수집
    • 데이터 플랫폼, 거버넌스, 엔지니어링 지원을 통한 정보 관리
  • 효율화 - 사내 정보를 쉽고 빠르게 검색
    • 사내 정보 검색 기술을 개발
  • 자동화 - 365일 24시간 상시 응답
    • 데이터 담당자 없이도 언제든 이용 가능하도록 지원
  • 접근성 - 익숙한 채널로 소통 연결
    • 업무 주 도구를 적극 활용

(우형 기술 블로그에서도 확인 가능한 ‘물어보새’의 아키텍처입니다.)

BADA팀은 ‘물어보새’가 개발되는 과정에서도 여러 고민들을 마주했고, 또 해결했다고 하는데요. 이번 세션에서 공유해주신 3가지 고민과 그 해결방식을 정리하면 아래와 같습니다.

고민 1. 우아한형제들에서 어떤 데이터를 어떻게 활용하고 있는지 LLM에게 잘 알려줄 수 있는 방법은? 해결방식:

  • RAG를 위해 참고할 수 있는 여러 Vector DB 구축
    • 테이블 DDL: 테이블명과 컬럼명, 컬럼 설명, 컬럼별 데이터 타입과 값 정보
      • LLM이 테이블 구조에 대해 이해할 수 있음
    • 테이블 Meta: 테이블별 주요 사용 목적과 관련 서비스, 주요 키워드, 관련 질문 등
      • 질문에 답변하기 위해 필요한 테이블을 더 잘 검색할 수 있음
    • 비즈니스 용어 사전: 우형에서 쓰는 용어에 대한 설명
      • LLM이 우형만의 용어를 잘 이해할 수 있게 됨
    • SQL Few Shot: 우형에서 쓰는 비즈니스 로직이 반영된 쿼리문 예시

고민 2. LLM이 다양하고 복잡한 질문들에 대해 더 똑똑하게 답변할 수 있는 방법은? 해결방식:

  • Router Superviser로 질문 분류
    • 데이터 관련 질문인지 여부
    • 데이터 질문 분류
      • 질문 유형 분류
  • 프롬프트 최적화
    • Dynamic Prompting
    • 성능 평가 지표 활용

고민 3. 이 서비스를 편리하게 제공할 방법은? 해결방식:

  • 접근성
    • 가장 많이 사용되는 채털인 Slack을 통해 서비스 제공
  • 신속성
    • GPT Cache DB를 활용한 빠른 답변 제공
  • 안정성
    • Azure OpenAI Multi Region Load Balancing 구현
    • Grafana를 활용한 서비스 실시간 모니터링
  • 고도화
    • 사용자 피드백 버튼 기반의 의견 수집
    • LLMOps 기반 서비스 지속 고도화

마지막으로, ‘물어보새’ 향후 방향성에 대해서도 아래와 같이 공유해주셨는데요.

Agentic Analytics

  • Chain 기반에서 Graph 기반으로 변경
  • 데이터 분석 서비스 기능 제공

Knowledge Sharing

  • 사내 모든 데이터로 지식 범위를 확장
  • 데이터 의사소통 전문가로서의 역할로 확장

’물어보새’가 현재는 업무 지원 단계에 있지만, 최종적으로는 ‘물어보새’가 의사결정을 담당하는 업무 자율화 단계로 거듭나고자 한다는 내용을 마지막으로 이번 세션은 마무리되었습니다.

개발한 서비스를 유지보수하는 것을 넘어서, 더 나은 방법론을 채택하고 더 넓은 영역으로 서비스를 확장하려는 우아한형제들의 고민이 생생하게 느껴지는 세션이었습니다.

💻그래프, 텍스트 인코더를 활용한 실시간 추천 검색어 모델링

제가 두 번째로 참여한 세션은, ‘배달의민족’ 앱의 추천 검색어 기능에 사용된 모델 적용 기법을 소개하는 자리였습니다.

‘배달의민족’의 여러 핵심 페이지를 소개하는 내용을 시작으로, 추천 검색어 기능을 도입하게된 계기인 퀵 커머스(Quick Commerce)에 대해 공유해주셨는데요.

퀵 커머스란 1시간 이내에 원하는 장소에서 원하는 상품을 배송받는 서비스를 의미하며, 퀵 커머스의 특징은 아래와 같이 정리할 수 있습니다.

  • Explore - 사용자는 여러 개의 상품을 둘러보는 움직임을 보임
  • Real-time - 사용자의 관심사는 실시간으로 변함
  • Search - 사용자는 원하는 상품에 접근하기 위해 검색에 의존

이런 배경에서 ‘만약 원하는 검색어를 타이핑 없이 클릭만으로 검색 가능하다면 편리하지 않을까?‘란 생각을 시작으로 추천 검색어 기능이 도입되었다고 합니다.

추천 검색어 기능에 대한 소개 다음으로, 추천 검색어에 사용된 2가지 모델 적용 기법인 Batch와 Real-Time에 대해 공유해주셨는데요. 각 모델링 기법을 정리하면 아래와 같습니다.

Batch

  • 데이터: 장기(Long-term) 히스토리
  • 추론: Batch Inference
  • 모델 사용 시점: 앱 최초 진입 시, 과거 클릭 데이터 활용 (24시간 동안 동일한 추론 결과 제공)
  • 프로세스
    • 데이터 불러오기
    • 차원 축소 (NMF)
    • 분류 (Multi-Layer Perceptron)
    • 추론 (Chunk로 나눈 다음 추론)
    • 후처리 작업

Real-Time

  • 데이터: 단기(Short-term) 피드백
  • 추론: Real-time inference
  • 모델 사용 시점: 앱 진입 이후, 상품 클릭 및 검색 데이터를 실시간으로 활용
  • 프로세스
    • 인코더를 사용하여 사용자의 피드백을 임베딩 벡터로 변환
    • 시퀀스 모델이 임베딩 벡터를 시퀀스 임베딩으로 변환

사용자의 앱 사용 시점별로 적절한 모델을 사용하여 추천 검색어 기능을 구현한 덕에, Batch 모델로 인한 CTR(Click-Through Rate, 클릭률) 개선율은 64%, Real-Time 모델로 인한 CTR 개선율은 134%를 기록했다고 하는데요. 각 모델 적용으로 눈에 띄는 변화가 있었기 때문에 유효한 개선을 이뤄냈다고 평가하셨습니다.

해당 세션에서는 추천 검색어 기능에 적용되는 모델링 기법에 대해 기술적인 부분을 자세히 설명해주셨는데요. 비록 제가 관련 지식이 깊지 않아 모두 이해하기는 어려웠지만, 사용자의 앱 사용 시점에 따라 다른 모델링 기법을 적용하여 성과를 낸 점이 인상깊었던 세션이었습니다.

References