며칠전 마이크로소프트에서 주최한 Generative AI Roadshow가 열렸습니다. 우아한형제들, 원지랩스, 핀다, 효돌, 야놀자, 쏘카, 정육각, 콕스웨이브, 토스, 뤼튼, 뤼이드, 두나무에서 각 연사분들이 오셔서 어떻게 자신의 제품에 생성AI를 쓰고 있는지 공유하셨어요.
되게 좋았던 점은 정말 다양한 업계/분야에서 어떻게 LLM을 사용하는지 알 수 있었고, 단순히 "지금 우리가 생성AI를 이렇게 쓰고 있다"가 아닌 어떤 문제가 있어서 어떻게 해결하고자 접근했는지, 솔루션의 기술 디자인은 어떻게 구성돼있는지 그 과정을 정말 상세하게 알려줘서 놀랐어요. 기본적으로 각 팀이 얼마나 강력한 문제해결 능력을 갖고 있는지 체감할 수 있었습니다.
각 기업별로 바로 내용정리를 하는것보다, 조금 더 큰 주제들로 묶어서 정리하고자 했습니다.
- 어떻게 문제를 접근하고 어떻게 생성AI로 해결하는지
- 생성AI를 쓰면서 겪고 있는 기술적 문제점/한계점과 해결책
- 생성AI의 장단점
어떻게 문제를 접근하고 어떻게 생성AI로 해결하는지
일단 먼저 10+개 회사들의 랜드스케이프를 그려볼게요.
원지랩스, 뤼튼, 효돌은 AI native 제품들과 가깝고 B2C 대상으로 하고 있고, 반대로 콕스웨이브는 impaction.ai를 통해 AI native 제품을 B2B 대상으로 하고 있습니다.
x 축 밑의 회사들을 보면 정육각, 야놀자, 두나무, 쏘카, 우아한형제들은 B2C 대상으로 하고 있는 제품들이고, 원래는 AI native가 아닌 기존의 서비스 위에 AI를 탑재한 형식으로 가고 있습니다. 마지막으로 토스와 핀다는 B2B2C로 마찬가지로 기존 제품에 생성AI를 입히고 있습니다.
공통적으로 이 모든 곳들에서 가장 중요하게 생각했던 질문은 "우리 제품에 정말로 생성AI가 필요한가?"입니다. 우아한형제들 CPO, 이기호님이 패널토크에서 "저희는 새로운 기술을 도입할때마다 항상 돌다리를 엄청 두들기고 나서 도입합니다"라고 말하신게 가장 와닿었어요. B2C 특성상 새로 도입한 기술 때문에 에러가 나서 조금이라도 배달이 늦어지거나 다른 주소지로 배달된다면 고객 경험이 급격하게 떨어지면서 감당해야할 리스크가 너무 커지기 때문입니다. 마찬가지로 쏘가 박재욱 대표님께서도 언급하신건 고객센터에 생성AI를 탑재했는데 차량 사고가 났을때 AI 상담원이 원하지 않는 방향으로 대처를 하게 된다면 정말 큰일이 난다는 것입니다.
이건 B2B도 마찬가지죠. 엔드유저가 받아야하는 정보들이 정말 명확하게 한치의 오차도 없으려면 생성AI를 과연 쓰는게 정답인가 생각해봐야합니다. 이걸 고치지 못하고 해결하지 못한다면 자신의 제품에는 치명적인 버그가 생기는거에요.
이 파트에서 소개시켜드릴 기업들은 단순히 생성AI를 무조건 우리회사에 툴로 써야겠다가 아닌, 실제로 해결해야하는 문제가 명확해서 이걸 해결하고자 했을때 생성AI가 더 나은 해결 방안이 될 수 있을 것 같아 활용한 기업들입니다.
배민: 리뷰 데이터를 학습시킨 검색 추천 시스템
우아한형제들과 같은 경우에는 처음에 실시간 채팅 기능을 생성AI로 도입하려고 했는데, LLM의 할루시네이션이 발생하면 사용자들이 바로 배민 서비스로 받아들일까봐 걱정을 했었고, 배민은 특정 시간에 대량 트래픽이 몰리는데 그걸 GPT가 감당하지 못할 것을 우려해 과감히 포기했습니다.
대신 배민은 생성AI가 키워드를 통해 더 빠른 검색을 해줄 수 있는 기능을 만들었어요. 기존의 문제점은 대부분의 사람들이 처음에 배민을 접속했을때 어떤 메뉴를 어디서 사야할지 고르지 않고 들어와서 검색만 하는데 시간이 오래 걸린다는 것이었습니다. 그걸 해결하기 위해서 사람들의 리뷰 데이터를 모은 다음, 각 리뷰에서 식감, 빈도성, 그리고 누구와 함께 먹었는지에 대한 키워드들을 추출해서 생성AI에게 학습시켰습니다. 즉 예를 들어 "가족과 함께, 바삭" 이런식으로 검색하면 간장치킨에 대한 검색 결과값들이 리스트업됩니다.
정육각: GPT를 활용한 리뷰 작성 도우미
정육각은 배민과 비슷하게 리뷰 데이터를 학습시켰지만 조금 다른 문제점을 겪고 있었습니다. 사람들이 고기를 먹고 나서 리뷰를 쓸 생각을 안한다거나 나중에 쓰기 귀찮아져서 리뷰의 퀄리티가 떨어진다는 점이었습니다. 이 문제를 해결하기 위해서 사용자들의 후기와 제품 정보, 리뷰에 있는 키워드를 바탕으로 프롬프트를 생성해서 OpenAI가 리뷰를 대신 작성하게끔 계속 질문을 던지는 파이프라인을 만들었습니다.
쏘카: 고객센터 생성AI 챗봇
(개인적으로 제 최애 발표였어요..진짜 너무 논리정연하게 설명해주심)
쏘카와 같은 경우에는 고객센터가 365일 24/7 돌아가고 있었고, 쏘카 특성상 상담을 할때 상황 이해에 들어가는 노력이 많이 필요해서 시간 소요가 어마무지하게 들어가고 있었습니다. 쏘카가 커지면서 생긴 문제는 운영비용 증가, 길어지는 문제해결 시간, 늘어나는 고객의 대기시간, 상담 퀄리티의 비일관성였습니다.
해결하기 위해서 1) 제품 퀄리티 높여서 애초에 상담 인입량 감소, 2) 상담 연결에 소요되는 시간 줄이기, 3) 고객 상황을 이해하는데 필요한 시간 줄이기 등이 있었고, 최대한 고객이 스스로 해결하고 특정 영역의 문제만 사람이 응대, 그리고 균일한 상담 매뉴얼을 적용하면서 전화 대신 채팅을 계속 유도하고 있었기 때문에 챗봇 에이전트를 만들고자 했대요.
해결방안을 무려 5가지 경우의 수로 나눠서 판단을 했습니다.
- 시나리오 기반 버튼형 봇: 시나리오 개수에 따라 눌러야하는 버튼 너무 많음. 유저 경험 저하.
- 시나리오 기반 supervised 봇: 정확하게 인식 못함.
- 시나리오 기반 LLM 봇: Zero hallucination 못 피함.
- Prompt 기반 LLM 봇: Zero hallucination 못 피함.
- Fine-tuned LLM 봇: Zero hallucination 못 피함.
그 중에서 시나리오 기반 LLM 봇을 하기로 하고, 유저의 텍스트 인풋에 따라 상담의 의도를 바로 LLM이 파악하면 RAG, vector search를 같이 사용해서 상담 매뉴얼 DB에서의 검색 결과를 높이고, 할루시네이션이 나오면 미리 후처리해서 LLM이 답하는 것보다 인간 상담원에게 바로 연결을 할 수 있도록 디자인했습니다.
이렇게 우아한형제들, 정육각, 쏘카 예시를 정리했는데, 이 세가지 기업의 공통점은 전부 기존의 프로덕트 위에서 생성AI를 결합했다는 것입니다. 그렇기 때문에 생성AI를 중심으로 만들어진 AI native 제품들과 달리 생성AI에 많이 의존하고 있지 않은 대기업들에서는 어떻게 기존의 제품 문제해결을 이번에 생성AI로 했는지 잠시 엿볼 수 있었습니다.
생성AI를 쓰면서 겪고 있는 기술적 문제점/한계점과 해결책
이 섹션은 많은 기업들에서 공통적으로 언급한 생성AI의 기술적인 문제점과 그에 따른 각 기업만의 해결책을 정리하고자 합니다. 일단 기본적으로 가장 많이 언급됐던 생성AI의 한계점은 할루시네이션과 운영 비용입니다.
다음으로 많이 언급된 기술은 RAG (Retrieval Augmented Generation)이었습니다. RAG는 LLM이 더 정확한 정보들을 내뱉을 수 있게 하는 기술입니다. 예를 들어 LLM에 구글 검색 엔진을 붙여서 실시간 정보들을 불러올 수 있게 하거나, 필요한 정보들이 담겨져 있는 PDF 파일 등을 넣어줘서 내가 원하는 데이터베이스 내에서만 답변을 생성하도록 하는 것입니다.
할루시네이션 문제
각 기업에서 언급한 할루시네이션 문제입니다.
- 배민: 회사에서 만든 실시간 채팅 기능에서 발생한 할루시네이션이 배민 서비스라고 받아들이면 큰 문제가 됨.
- 야놀자: LLM이 어떻게 대답할지 예상하지 못하고, 100% 정확한 대답을 내뱉는다는 장담 못함, 항상 원하는 대답을 도출하도록 컨트롤 하지 못함
- 쏘카: zero hallucination 방지 어려움
- 두나무: 실시간 증권 정보 검색 서비스의 답변에 대한 신뢰도 부족.
- 토스: 디자이너가 만든 UI/UX wireframe 초벌코드를 생성AI가 대신 짤 수 있도록 파이프라인 짜려고 함. 실제로 해보니 생성된 코드가 어디로 튈지 몰라서 에러체킹하는데 시간이 더 많이 걸림.
할루시네이션 해결책
- 야놀자: rule-based filtering으로 해결해줄 수 밖에 없음. "이건 괜찮고 이건 절대 안돼" 이런식으로 최대한 할루시네이션 결과물들을 걸러줘야함. 어떤 프롬프트가 좋은지 evaluation 체크를 해줘야함.인풋 필터링 (전처리)를 해주고, 아웃풋 필터링 (후처리)도 해주고 있음. 아웃풋이 원하는 결과물이라면 그 결과물들을 계속 학습시키면서 모델을 고도화시키기. Evaluation을 GPT-4를 사용해서 함. 사람보다 싸고 scalable함.100% 정확한 정보들만 추출하기 위해 RAG 사용.
- 쏘카: 별도의 isolation: LLM에게 모르는 데이터가 들어오면 바로 인간 상담사에게 연결.파인튜닝한 여러 LLM들을 통해 시나리오 기반으로 응대하기 때문에 zero hallucination 달성. RAG와 vector search로 응대 로직을 짜서 최대한 정확한 정보들만 추출.
- 두나무: 답변에 대한 신뢰도를 향상시키기 위해 생성AI가 내뱉은 답변에 대한 근거 document 사용자에게 제시. (사용자가 LLM의 오류를 서비스로 그대로 받아들이는 것을 방지하기 위해)
- 원지랩스: 후처리 Learning GPT 만듦. 방금 나눈 대화를 학습해야하는지 아닌지 판단하고 좋은 데이터만 계속 학습시켜서 모델을 똑똑하게 만들기.
즉 할루시네이션을 해결하고자 대부분은 전처리, 후처리를 통해서 최대한 방지를 하고, 원하는 결과물들이 나왔을때 그것들을 계속 모델에 반복 학습시키면서 고도화하는 작업을 거쳤습니다.
그 외 이번 이벤트를 통해서 개인적으로 신기했던 문제점/해결책은 콕스웨이브에서 현재 만들고 있는 impaction.ai인데요, 콕스웨이브에서 찾은 생성AI 시대의 기회/문제점은 점점 사람들이 웹 어플리케이션를 사용하는 방식이 기존 UX에서의 버튼 클릭이나 드래그와는 다르게 이제 프롬프트, 즉 대화형으로 바뀌었다는 것입니다. 앞으로 AI native 기업들은 사용자들이 내 서비스를 어떻게 쓰는지 알기 위해서는 어느 버튼을 얼마나 많이 클릭했는지가 아닌, 어떤 프롬프트를 몇번 사용해서 원하는 결과물까지 도달했는지 알아야해서 새로운 검색 서비스를 만들고 있다고 하더라구요.
이건 원지랩스에서도 잠깐 언급한, 현재 Azure cognitive search의 한계점이었습니다. 유저가 맨 처음에 프롬프트를 입력하고 그 프롬프트에 필요한 정보를 불러오기 위해 데이터베이스 검색을 할때 검색엔진이 GPT를 위해 만든게 아니여서 이상한 결과를 불러올때가 많다고 했습니다. 원지랩스에서는 이를 해결하기 위해 실제 데이터베이스 검색을 하기 이전에 먼저 거치는 orchestrator 모델, 즉 어떻게 답변을 해야할지 전략을 짜주는 GPT를 만들었습니다.
생성AI 장단점
단점은 위에서와 같이 할루시네이션과 운영비용이 크게 든다는 것이 있지만, 생성AI가 데이터 가공을 할때 많은 업무 향상을 해준다는 장점도 여러번 언급됐습니다.
핀다에서는 특히 기존에 고객 데이터를 관리하고 이해해야 할때 NLP를 사용했었는데, 데이터를 가공하고 키워드를 뽑아내고 하나하나 이해시키는데 많은 시간이 들어간다는 단점이 있었습니다. 높은 난이도의 개발자가 필요한건 물론이고 키워드를 뽑아내고 나서는 모델링, 분석을 해야하는데 매우 어려운 프로세스라고 했습니다.
이를 해결하고자 생성AI를 사용했더니 높은 기술 지식이 필요없어도 고객을 이해할 수 있는 분석 테스트를 퀄리티 높게 뽑아냈습니다. 예를 들어 예전에는 고객 피드백 중 "폭이 더 넓었으면 좋겠다"라는게 들어오면 어떤 "폭"을 말하는지 머신러닝 모델이 알기 어려웠는데, 핀다가 학습시킨 생성AI에게 넣어주면 "더 넓은 폭의 대출상품을 제공해줬으면 좋겠어요" 식으로 이해를 하고 내뱉어준다고 했습니다. 또 다른 예시는 예전에는 감정분류에 대한 키워드가 너무 많아서 리뷰가 긍정인지 부정인지 알기가 매우 어려웠었는데, 이제는 생성AI가 키워드를 바탕으로 문장을 생성해줘서 담당자들이 더 쉽게 데이터를 이해할 수 있다고 했습니다.
토스와 같은 경우에도 기존 서비스에서는 간편 결제, 대출, 카드 발급 등 엄청나게 많은 카테고리가 있고 팀별로 쌓이는 데이터가 달라서 이걸 다 합치고 레이블링하는데 초반에 매우 시간 소요가 많다고 했습니다. 더 빠르게 하려면 더 많은 사람들을 채용했어야 했는데 이젠 생성AI가 훨씬 빠르고 퀄리티 높게 데이터 레이블링을 한다고 하더라구요.
그래서 아직까지 조금은 '치명적인?' 단점이 존재하지만, 이런식으로 비정형화된 데이터를 정형화시키거나 레이블링하는 업무들은 생성AI가 확실한 장점을 갖고 해결해나가는 것 같았습니다.
마무리
이번 이벤트를 통해서 배운 점들입니다.
- 할루시네이션 문제를 어떻게 각자 해결하고 있는지
- 기존 대기업/incumbent들은 어떤 문제들을 생성AI로 해결하는지 (고객센터 봇, 검색 추천 서비스 향상, 리뷰 작성 도우미)
- AI native 제품들은 확실히 다른 비즈니스 모델과 접근 방식을 갖고 있음 (너무 재밌다...)
확실히 아직까진 기술 발전이 더욱 필요하고, 운영 비용들이 빨리 내려가길 바라고 있습니다. 하지만 토스와 핀다를 통해서 잠깐 볼 수 있었던 생성AI의 장점은, 인간이 기존에 했어야 했던 시간이 오래 걸리는 반복적인 업무들을 생성AI가 대신 몇시간 안에 해결하는걸 보면서 앞으로 우리는 좋은 제품 빌딩을 하는데 필요한 "더 중요한" 업무들에 집중할 수 있는 시간들이 점점 생길거라는 것입니다. 그래서 더욱 기대되기도 하네요.
오늘도 긴글 읽어주셔서 감사합니다!
의견을 남겨주세요