카카오, '클론'으로 AI 선톡 고도화…가상 대화로 엣지 케이스 잡는다
카카오가 개인정보 보호를 유지하면서도 AI 모델의 오류를 재현하고 학습시킬 수 있는 가상 대화 시뮬레이터 '클론'의 개발 배경과 작동 원리를 밝혔다.
카카오톡 대화 속에서 사용자가 필요한 순간을 포착해 먼저 도움을 제안하는 AI, '카나나 인 카카오톡(Kanana in KakaoTalk)'의 성능을 높이기 위해 카카오가 가상의 카카오톡 환경을 구축했다. 실제 사용자의 대화 원문은 개인정보 보호를 위해 기기 내부에서만 처리되기에, 오류가 발생해도 정확한 원인을 파악하기 어렵다는 한계를 극복하기 위한 전략이다.
개인정보 보호와 효율 사이, '하이브리드' 구조의 선택
카카오가 개발 중인 카나나 인 카카오톡은 사용자의 대화 맥락을 이해하고 약속 리마인드나 주변 정보 제안 같은 '선톡(먼저 건네는 메시지)'을 보내는 서비스다. 이를 위해 카카오는 온디바이스(On-device, 기기 내부에서 직접 연산하는 방식) 모델과 서버 모델이 협력하는 '하이브리드 아키텍처'를 채택했다.
작동 방식은 이렇다. 톡 클라이언트가 대화 묶음을 만들면, 기기 안의 초경량 온디바이스 모델(1.3B 사이즈)이 대화 주제를 파악하고 AI가 개입할지 여부를 판단한다. 개입이 필요하다고 판단될 때만 대화의 핵심 맥락을 요약해 서버로 전달한다. 서버 모델은 이 요약을 바탕으로 중복 여부를 확인하고 최종 선톡 문장을 생성한다.
이러한 이중 구조를 택한 핵심 이유는 프라이버시다. 사용자의 대화 원문을 서버로 보내지 않고 기기 안에서만 처리함으로써 보안을 강화한 것이다. 하지만 이 구조는 모델 개선 과정에서 예상치 못한 난관을 가져왔다. 카카오의 윤소원 PM은 "사용자로부터 부적절한 개입에 대한 제보가 들어와도, 대화 원문이 기기 안에서만 처리되기 때문에 실제 어떤 입력이 들어왔는지 재현하기가 매우 어렵다"며 "오류 신호는 있지만 원인을 분석할 데이터가 부족해 개선 루프가 단절되는 문제가 있었다"고 설명했다.
기존에는 제보된 상황을 바탕으로 유사한 대화를 구성해 모델에 입력해 보고 동일한 오류가 재현되는지 확인하는 방식을 사용했다. 재현된 사례는 유사 유형으로 LLM 증강(Large Language Model을 이용해 데이터를 늘리는 방식)을 시도해 신규 모델 학습에 반영했다. 하지만 사용자 수와 채팅방 수, 생성되는 대화 청크(Chunk, 데이터의 묶음 단위)가 늘어날수록 이러한 수동적인 재현 방식은 한계에 부딪힐 수밖에 없었다.
"카톡스럽지 않으면 학습 안 돼"…LLM 증강의 한계
카카오 엔지니어링 팀은 제보된 사례를 바탕으로 유사한 대화를 구성해 오류를 재현하려 노력했다. 하지만 기존의 방식으로는 한계가 명확했다. 공개된 SNS 데이터는 실제 카카오톡의 대화 양상과 달랐고, 거대언어모델(LLM)을 이용해 대화를 생성하는 'LLM 증강' 방식 역시 문제가 있었다.
민규식 엔지니어는 "LLM이 생성한 대화는 맞춤법이 너무 완벽하거나 이모티콘, 답장 기능 등을 제대로 사용하지 않는 등 '카톡스럽지' 않았다"고 지적했다. 특히 실제 카카오톡 대화는 주어나 배경이 생략되거나, 관계 안에서만 통하는 은어, 줄임말, 집단적 독백 등 텍스트만으로는 해석하기 어려운 특성이 절반 이상을 차지한다. 단순히 LLM에 프롬프트(지시어)를 입력해 만드는 데이터로는 모델의 약점을 보완할 수 있는 정교한 '엣지 케이스(Edge case, 발생 빈도는 낮지만 발생 시 영향이 큰 예외 상황)'를 만들기 어려웠던 것이다.
또한, LLM을 통한 단순 생성 방식은 데이터의 다양성 측면에서도 한계를 보였다. 특정 주제에 대해 대화를 생성하더라도 흐름이나 내용이 지나치게 유사하게 반복되는 경향이 있어, 학습 데이터로 활용하기에는 데이터의 분포가 편중되는 문제가 발생했다. 이는 모델이 다양한 상황에 유연하게 대응하는 데 걸림돌이 되었다.
가상 대화 시뮬레이터 '클론(Clone)'의 탄생
이러한 문제를 해결하기 위해 카카오는 실제 카카오톡 환경을 복제한 가상 환경 툴 '클론(Clone)'을 개발했다. 클론은 단순히 대화를 생성하는 것을 넘어, 실제 카카오톡과 유사한 대화 흐름을 무한히 생성하고 파악되지 않은 상황을 미리 발견할 수 있도록 설계됐다. 이를 통해 새로운 문제를 기다리는 것이 아니라, AI가 스스로 대화를 나누며 어려운 케이스를 찾아낼 수 있는 환경을 구축했다.
클론의 핵심은 '페르소나(Persona, 인물의 성격이나 특성)' 설정에 있다. 하나의 주제라도 대화 참여자의 관계, 말투, 상황에 따라 대화 양상이 완전히 달라지기 때문이다. 클론은 3단계 과정을 거쳐 데이터를 생성한다. 먼저 구체적인 시나리오를 설정하면, LLM이 이를 관계, 상황, 페르소나, 참가자 수, 말투, 주제 등으로 세분화한다.
시나리오 설정은 매우 구체적이고 다양하게 이루어진다. 일반적인 대화 주제는 물론, 모델이 풀기 어려워하는 약점이나 함정 문제에 대한 대화, 심지어 감정적인 내용이나 갈등이 포함된 대화까지 설정할 수 있다. 예를 들어 '친구가 서운함을 표현하는 상황'이라는 시나리오를 설정하면, 클론은 이를 바탕으로 다양한 인물 특성을 부여해 실제 사용자가 겪을 법한 복잡한 대화 패턴을 만들어낸다. 이를 통해 카카오는 모델이 취약한 지점을 집중적으로 학습시키고, 선톡의 정확도를 높이는 데이터 엔지니어링을 지속할 수 있게 됐다.
0댓글