주요 컨텐츠로 이동

산타클로스도 AI 에 푹 빠졌어요

(주)북극, 데이터브릭스를 통해 데이터 + AI를 도입
Alex Miller
쿠날 마르와
Mikaila Garfinkel
Avinash Sooriyarachchi
이 포스트 공유하기

(번역: Youngkyong Ko) Original Blog Post

산타클로스는 (주)북극의 CEO로서 세계에서 가장 복잡한 공급망, 제조, 물류 운영을 감독합니다. 

매년 산타, 최고 운영 책임자 클로스 부인, 요정 팀원들은 전 세계 어린이들이 보낸 수백만 통의 편지를 읽고, "못된 아이, 착한 아이" 목록과 대조하여 원하는 선물을 등록한 다음, 단 하룻밤 만에 수백만 개의 선물을 만들어 배송해야 합니다. 산타와 그의 직원들 때문에 이 작업이 쉬워 보이지만, 이는 운영 측면에서는 악몽과도 같은 작업이며, 대부분 수작업으로 이루어집니다. 그렇기 때문에 대부분의 다른 비즈니스 리더들과 마찬가지로 산타도 AI가 어떻게 도움을 줄 수 있는지 궁금해 했고, 그래서 데이터브릭스에게 도움을 요청했습니다. 

Foundation Model APIs와 같은 데이터브릭스 도구를 합성 데이터 생성(synthetic data generation), 개체명 인식(named entity recogntion) 등의 기법과 함께 사용하여, 우리는 산타에게 보내는 아이들의 편지를 분석하여 각 아이가 원하는 선물을 찾아내는 모델을 만들었고, 이는 요정 팀원들이 일일이 편지를 읽어야 하는 수고를 덜어주었습니다.

자 그럼, 전에는 몇 주가 걸렸던 작업을 몇 분 만에 완료할 수 있는 AI 모델을 데이터브릭스의 데이터 인텔리전스 플랫폼을 사용하여 어떻게 만들었는지 살펴 보겠습니다. 이는 모든 기업이 AI를 사용하여 개인화된 커뮤니케이션을 생성하거나 고객 지원을 개선하는 데 도움을 줄 수 있는 청사진입니다.  

합성 데이터란 무엇이며 왜 중요한가요? 

합성 데이터는 실제 데이터를 모방하도록 설계된 인공적으로 생성된 데이터입니다. 그리고 이는 AI의 미래에 큰 역할을 할 것입니다. 실제로 가트너에 따르면 2024년까지 모든 학습 데이터의 60%가 합성 데이터가 될 것이라고 합니다. 

AI에는 엄청난 양의 데이터가 필요합니다. (주)북극과 마찬가지로 대부분의 조직은 기존의 상용 대규모 언어 모델(LLM)을 미세 조정하거나 자체 LLM 모델을 개발하는 등 생성형 AI를 원하는 대로 활용하기에 충분한 정보를 보유하고 있지 못합니다. 다른 조직은 재무 또는 의료 기록과 같이 민감한 정보나 해당 영역에 특화된 정보를 확보하지 못할 수도 있습니다. 모든 기업은 다양한 데이터셋을 충분히 확보하고자 합니다. 이것이 바로 합성 데이터가 점점 더 중요해지는 이유입니다. 

합성 데이터는 실제 데이터 세트에서 찾기 어려운 두 가지 특성, 즉 저렴하고 매우 체계적이라는 중요한 장점을 가지고 있습니다. 또한 고객 데이터를 노리는 해커의 공격이 점점 증가하고 있기에, 합성 데이터를 사용하면 고객 데이터에 대한 의존도를 낮출 수 있어 보안성을 더 높일 수 있습니다. 또한 합성 데이터는 기업이 자체 보유한 데이터셋의 부족한 부분을 채울 수 있도록 더 다양하게 만들 수 있어서, 최종 AI 모델을 더 정확하고 신뢰할 수 있게 만드는데 도움이 됩니다. 

하지만 몇 가지 한계도 있습니다. 실제 정보에는 합성 데이터로 복제하기 어렵지만 모델 성능에 필수적인 뉘앙스가 있는 경우가 많습니다. 자율주행차가 시뮬레이션에서는 완벽하게 운전하다가 실제 사람이 운전하면 실수를 하는 것과 같은 이치입니다. 

어떻게 했나요?

데이터브릭스에서 최근 출시한 Foundation Models API를 활용하여, 메타의 Llama2 70B 모델과 MosaicML 추론을 통해 지난 20년간 북미에서 가장 인기 있는 어린이 이름과 5-15세 어린이에게 가장 인기 있는 2023년 선물 테마를 생성하도록 했습니다. (후자의 경우, 실내 장식이나 여행 관련 항목을 피하는 등 비정상적인 응답을 제어하기 위해 쿼리 주위에 몇 가지 매개 변수를 넣어야 했습니다. 이를 흔히 프롬프트 엔지니어링이라고 합니다). 

그런 다음 Llama2의 문자열 출력을 가져와 Python으로 포매팅하여, 어린이 이름과 선물 카테고리를 무작위로 짝지은 델타 테이블을 만들었습니다. 이를 통해 산타에게 보내는 편지를 만드는 데 필요한 합성 입력 데이터를 얻을 수 있었습니다. 처음에는 Pandas dataframe을 사용하여 Llama2를 연속적으로 쿼리하여 편지를 생성했습니다. 하지만 이 프로세스를 완료하는 데 한 시간이 넘게 걸렸습니다. 데이터브릭스의 DI 플랫폼을 사용하면 5분 이내에 1000개의 편지를 생성할 수 있습니다. 그 이유는 Apache Spark를 통해 여러 개의 이름과 그에 해당하는 선물 카테고리들를 기본 모델에 동시에 입력할 수 있었기 때문입니다. 

이제 각 편지에서 정보를 추출하여 아이들이 나열한 특정 품목들을 포함해 요정들이 적절한 선물을 만들 수 있도록 돕고 싶었습니다. 개체명 인식(Named Entity RecognitionNER)이라는 프로세스를 이용해 1000개의 편지를 모두 스캔하여 "코딩 키트" 또는 "스케이트보드"와 같은 단어를 추출했습니다. 자연어 처리의 한 분야인 NER은 날짜, 사물 또는 사람 이름과 같은 특정 매개변수를 기반으로 정보를 추출하는 프로세스입니다. 이를 통해 사용자 댓글이나 제품 설명과 같은 대량의 텍스트를 요약하는 데 드는 엄청난 시간을 절약할 수 있습니다. 

(주)북극의 경우, 우리는 Llama2를 사용하여 편지에서 사람의 이름, 위치, 날짜, 각 어린이가 요청한 특정 선물/제품 등 원하는 특정 항목들(features)을 파악했습니다. 다음은 샘플 편지에 NER을 사용한 예시입니다. 

Santa NER

그런 다음 이 정보를 델타 테이블에 저장하여 모든 어린이가 원하는 크리스마스 선물을 (주)북극의 직원들이 빠르게 파악할 수 있도록 했습니다. 또한 요정 팀원들은 Lakeview Dashboard를 사용하여 전체 선물 요청 건수와 각 카테고리별 상위 선물 요청 건수 등 산타의 정보를 요약한 보고서를 쉽게 작성할 수 있었습니다.   

Santa AI

Santa Claus AI

마지막으로, 요정 팀원들이 데이터셋에서 쉽게 통찰을 얻을 수 있도록 하고 싶었습니다. 이제 (주)북극의 엔지니어들은 text-to-SQL 엔진을 이용해, 자연어 질의에서 SQL 구문을 얻을 수 있습니다. 예를 들어, 산타는 에밀리와 가브리엘이라는 이름의 모든 소녀들이 어떤 선물을 받게 될지 알고 싶어할 수 있습니다. 요정들은 엔진에 해당 요청을 자연어로 입력하기만 하면 답을 얻기 위해 실행할 SQL 문을 반환받을 수 있습니다.

무엇을 배웠나요? 

위의 목표를 달성할 수 있는 방법은 여러 가지가 있었습니다. 하지만 산타가 이러한 AI 이니셔티브를 전사적으로 확장하고자 하는 열망이 있음을 알고 있었습니다. 따라서 (주)북극에 광범위하게 채택될 수 있도록 준비해야 했습니다. 아래 지도는 주별로 가장 인기 있는 선물 카테고리를 요약한 것입니다(생성된 모든 편지에 미국 주를 무작위로 할당했습니다).

Santa AI

Llama2 와 MPT-7B 같은 기초 모델은 매우 중요하지만 확장하기가 어렵고 비용이 많이 들 수 있습니다. 우리는 데이터브릭스 데이터 인텔리전스 플랫폼을 사용하여 훨씬 더 쉽고 빠르고 저렴하게 확장할 수 있었습니다. 예를 들어, 워크로드를 하나하나씩 기본 모델에 전송하는 대신 Spark으로 대량 작업을 실행하여, 대규모 데이터셋의 경우 몇 주 이상 걸릴 수 있는 과정을 몇 분 만에 완료할 수 있었습니다. AI 이니셔티브를 전사적으로 확장하려면 이러한 편리함과 속도가 필수입니다. 

(Databricks Marketplace에 있는) 기초 모델을 통해 상용 모델과 인터페이스하는 플랫폼을 이용한다면, (주)북극 같은 회사가 데이터를 레이크하우스 밖으로 옮길 필요가 없습니다. 이는 사내 엔지니어가 복잡한 데이터 파이프라인을 구축하고 관리해야 하는 부담을 덜어줄 뿐만 아니라, 기업이 데이터를 보호하고 사용자별 액세스를 관리하는 데도 도움이 됩니다. 

예를 들어, 편지를 생성하는 데 사용하는 데이터가 합성 데이터가 아닌 실제 고객 데이터라고 가정해 보겠습니다. 이 경우 훨씬 더 엄격한 보안 제어가 필요할 뿐만 아니라 소비자 정보 저장 및 사용에 관한 다양한 규정을 모두 고려한 거버넌스 프레임워크가 필요할 것입니다. 

이 예제를 어디에 응용할 수 있을까요? 

(주)북극은 대부분의 다른 기업과 크게 다른 조직일 수 있습니다. 하지만 이 예제는 거의 모든 기업이 활용할 수 있는 광범위한 응용 분야를 가지고 있습니다. 

예를 들어, 마케팅 팀에서는 고객 개개인을 위한 맞춤형 연말 연하장을 만들고 싶을 수 있습니다. 영업팀에서는 매출 상위 잠재 고객에게 연말 선물을 보내고 싶을 수도 있습니다. 또는 연말연시 이후 반품 주기를 더 잘 추적하고자 하는 소매업체는 수천 통의 고객 서비스 전화에서 인사이트를 얻고자 할 수도 있습니다. 이러한 사용 사례에 모두 (주)북극에서 사용한 것과 동일한 접근 방식을 활용할 수 있습니다. 

다음은 이 블로그에서 편지를 생성하는 데 사용한 몇 가지 샘플 코드입니다. GenAI 솔루션을 훈련하고 구축하는 데 데이터브릭스가 어떻게 도움이 되는지 자세히 알아보려면 온디맨드 웨비나 Disrupt your industry with generative AI 를 시청하세요.

Databricks 무료로 시작하기

관련 포스트

To Tailgate or Not? How Databricks + AccuWeather used ML to answer every football fan's burning question

Whether you’re an NFL fanatic, an alumnus rooting for your alma mater or a super fan just trying to catch a glimpse of...

Retail in the Age of Generative AI

April 13, 2023 작성자: Sam Steiny, Rob Saker, Bryan Smith in
What is generative AI? Large Language Models (LLMs) such as ChatGPT have garnered a ton of attention lately along with the broader topic...
모든 데이터 전략 포스트 보기