Audio-027, KAME: Tandem Architecture for Enhancing Knowledge in Real-Time Speech-to-Speech Conversational AI, ICASSP 2026
◼ Comment
- 이 논문도 방법은 MoshiRAG랑 비슷한데, 먼저 나온 논문이다.
- 일단 학습 데이터는 어떻게 만들었는지 자세히는 안 써있지만
- 일반 QA(MMLU-pro, GSM8K, HSSBench) 를 기반으로 대화 데이터를 합성하고
- 여기서 중간중간 llm 결과 (simulator로 부름)를 받아온 데이터를 만들었음
- 모델 학습
- 유저 중간 중간 입력에 대해 만든 llm 백그라운드 모델 결과를
- 그냥 embedding 단에서 더해서 학습하게 함
- 단점
- 백그라운드 결과의 각 토큰을 그대로 쓰다보니 moshirag가 언급한 컨텍스트가 길어지는 문제가 해결되지 않음
- 그리고 trigger이 없고, reflector 또한 없기 때문에, 그냥 첫 응답시 그냥 과거 정보로 추출한 백그라운드 결과를 사용함
- 그러다가 새로운 백그라운드 결과가 들어오면 그걸 처음부터 다시 사용
- 백그라운드 결과는 스트리밍 식으로 들어오는듯
- 이런식이다 보니 중복된 결과가 많이 들어올거 같은 문제가 들음
- 음성모델 응답또한 실제로 제대로 나오는지 의문?
- 그냥 정답 자체는 계속 정보가 들어오니 언젠간 나올거 같긴한데, 자연스러운 대화가 아닐거 같음
ABSTRACT
실시간 음성-대-음성(Speech-to-Speech, S2S) 모델은 자연스럽고 지연 시간이 짧은 대화 응답을 생성하는 데 뛰어나지만, 깊이 있는 지식과 의미적 이해가 부족한 경우가 많다. 반면 자동 음성 인식, 텍스트 기반 대규모 언어 모델(LLM), 그리고 텍스트-대-음성 합성을 결합한 캐스케이드 시스템은 더 우수한 지식 표현 능력을 제공하지만, 높은 지연 시간으로 인해 자연스러운 상호작용의 흐름을 방해한다.
본 논문에서는 이러한 두 패러다임 사이의 격차를 해소하기 위한 새로운 하이브리드 아키텍처를 제안한다. 제안하는 프레임워크는 즉각적인 응답성을 확보하기 위해 사용자의 음성을 S2S Transformer로 처리하는 동시에, 해당 질의를 강력한 백엔드 LLM으로 전달한다. 이후 LLM이 생성한 텍스트 응답을 실시간으로 주입하여 S2S 모델의 음성 생성을 유도한다. 이를 통해 캐스케이드 시스템의 전체 지연 비용을 감수하지 않으면서도, S2S 모델의 출력에 풍부한 지식을 효과적으로 통합한다.
우리는 다중 턴 질의응답 세션으로 구성된 MT-Bench 벤치마크의 음성 합성 변형을 사용하여 제안 방법을 평가하였다. 실험 결과, 제안 시스템은 응답의 정확성 측면에서 기본 S2S 모델을 크게 능가하고 캐스케이드 시스템에 근접하는 성능을 보였으며, 동시에 기본 S2S 모델과 유사한 수준의 지연 시간을 유지하였다.
색인어— 대화형 인공지능, 대규모 언어 모델, 실시간 시스템, 질의응답.
1. 서론
완전 이중화(full-duplex) 대화형 음성 모델은 인간과 디지털 비서 간의 자연스러운 상호작용을 실현하기 위한 가장 유망한 모델 중 하나이다 [1, 2]. 이러한 모델은 사용자의 질의를 지속적으로 청취하면서 동시에 응답할 수 있기 때문에, 다양한 인간-기계 인터페이스에 새로운 가능성을 제공한다. 특히 질의응답이나 브레인스토밍처럼 인간과 기계 사이의 빠른 상호작용이 필요한 응용에서 그 잠재력이 크다.
최근 대규모 Transformer의 발전에 힘입어, 이러한 모델은 직접적인 음성-대-음성(Speech-to-Speech, S2S) 모델로 구현될 수 있게 되었다 [3, 4, 5]. S2S 모델은 다른 시스템과의 동기화가 필요하지 않은 단일 통합형 아키텍처로 구성되기 때문에, 일반적으로 응답 전환 시간이 매우 짧으며 이는 더욱 자연스러운 상호작용에 기여한다. Moshi [2]는 완전 이중화 대화형 AI를 위한 종단간 S2S 모델을 제시한 선구적인 연구이다.
그러나 S2S 모델의 입력과 출력은 정보량이 많은 음향 신호이기 때문에, 자기회귀 모델링에서는 모델 용량과 관련된 근본적인 문제가 발생한다. 다시 말해, 텍스트 전용 대규모 언어 모델(LLM)과 달리 S2S 모델은 음성의 언어적 내용뿐 아니라 발화 스타일, 감정과 같은 준언어적 특성까지 함께 포착해야 한다. 이로 인해 S2S 모델은 지식을 습득하는 데 본질적으로 비효율적이다. 모델 크기가 동일하다고 가정하면, 텍스트 전용 LLM은 모델 용량을 오직 텍스트에만 사용할 수 있으므로 더 많은 지식을 학습할 수 있다. 텍스트는 정보가 조밀하게 표현되기 때문이다. 반면 S2S 모델은 비용이 큰 비언어적 특성을 표현하는 데 상당한 자원을 사용해야 한다. 단순히 모델 크기를 확장하는 것 역시 직접적인 해결책은 아니다. 특히 S2S 모델은 실시간 추론을 수행해야 하므로, 모델 확장은 학습 안정성과 자원 요구량 측면에서 또 다른 어려움을 야기한다.
한편, 캐스케이드 아키텍처는 지식 통합 측면에서 강점을 가진다. 이 접근법에서는 먼저 자동 음성 인식(ASR) 모델을 사용하여 사용자의 전체 발화를 전사한다 [6, 7]. 이후 전사된 텍스트를 텍스트 기반 LLM에 입력하고, 생성된 응답을 텍스트-대-음성(TTS) 엔진을 통해 다시 음성으로 합성한다 [6, 8].
- Streaming sequence-to-sequence learning with delayed streams modeling
이러한 모듈형 설계의 가장 큰 장점은 지식 확장성이다. 즉, 최신의 고성능 LLM을 손쉽게 연결하여 시스템의 성능을 지속적으로 최신 수준으로 유지할 수 있다.
하지만 이러한 순차적 처리 과정은 지연 시간을 증가시키며, 이는 대화형 AI에서 치명적인 단점이다. 시스템은 ASR과 LLM이 처리를 시작하기 전에 사용자의 발화가 끝나는 시점을 기다려야 하기 때문에 [9], 발생하는 지연이 자연스러운 대화의 흐름을 방해한다.
이 두 패러다임 사이의 격차를 해소하기 위해, 본 논문에서는 S2S 모델의 낮은 지연 시간과 캐스케이드 시스템의 지식 확장성을 동시에 달성하는 새로운 하이브리드 아키텍처를 제안한다. 우리는 이 아키텍처를 Knowledge-Access Model Extension(KAME)이라고 명명한다.
KAME는 프런트엔드 S2S 모델과 백엔드 텍스트 LLM으로 구성된 “탠덤(tandem)” 시스템으로 동작한다. 프런트엔드 모델은 사용자의 음성을 실시간으로 처리하여 즉각적인 응답을 생성한다. 동시에 중간 전사 결과를 백엔드 LLM으로 스트리밍한다. LLM이 보다 풍부한 지식을 반영한 응답을 생성하면, 그 텍스트는 “오라클(oracle)” 스트림을 통해 프런트엔드로 다시 전달된다. 프런트엔드 모델은 자신의 내부 문맥과 외부에서 들어오는 오라클 가이던스를 모두 조건으로 사용하여 음성을 생성하도록 특별히 학습된다. 이를 통해 실시간 응답성에 깊이 있는 지식을 효과적으로 결합한다.
다중 턴 MT-Bench [10] 벤치마크를 음성으로 합성한 변형 데이터셋에서 평가한 결과, KAME는 직접 S2S 모델의 응답성을 유지하면서도 최신 캐스케이드 시스템에 근접한 대화 품질을 달성하였다. 이러한 지연 시간과 성능 간의 관계는 그림 1에 제시되어 있다.
- KAME은 지연시간을 설정할 수 있는 형태인가봄?
- 근데 Moshi랑 비슷한 지연에서 성능이 높은 형태이긴함
본 연구는 응답 생성을 위한 계층적·다중 구성요소 아키텍처에 관한 기존 연구와 개념적으로 관련된다. 예를 들어 Qwen2.5-Omni [11]는 Thinker-Talker 아키텍처를 사용하며, LLM 모듈인 “Thinker”가 생성한 텍스트를 실시간으로 음성 합성할 수 있다. 이러한 계층형 구조는 응답 시간 측면에서는 유리하지만, 여전히 텍스트로 표현된 완전한 질의를 필요로 한다. 또한 Thinker와 Talker가 긴밀하게 결합되어 있기 때문에 백엔드 Thinker만 독립적으로 교체하기 어렵다.
Minions [12]는 대규모 문맥 처리 시나리오에서 문맥 처리 작업을 대형 백엔드 LLM과 로컬 소형 언어 모델 간에 분담하여 비용 효율적인 응답 생성을 구현하였다. ASR 분야에서는 deliberation model [13]이 더 작은 프런트엔드 모델의 결과를 더 큰 백엔드 시스템으로 교정하기 위해 두 개의 구성요소로 이루어진 이기종 아키텍처를 사용한다.
제안하는 방법 역시 이러한 협력적 전략을 따른다. 다만 핵심적인 차이는 프런트엔드와 백엔드가 서로 다른 표현을 사용한다는 점이다. 구체적으로 프런트엔드는 S2S 모델이고, 백엔드는 텍스트 기반 언어 모델이다. 제안 아키텍처의 이러한 느슨한 결합은 KAME가 특정 백엔드에 종속되지 않도록 해준다는 장점이 있다.
최첨단 LLM은 전문성이 강한 영역이 서로 크게 다르다고 알려져 있기 때문에 [14], 백엔드 비종속성은 응용 분야에 따라 적절한 백엔드 LLM을 유연하게 선택할 수 있게 해준다. 이는 다양한 응용 환경에서 최적의 성능을 달성하기 위해 필수적이다.
본 논문의 나머지 구성은 다음과 같다. 먼저 프런트엔드와 백엔드 구성요소 간의 실시간 통신을 가능하게 하는 탠덤 아키텍처를 소개한다. 이후 제안 시스템의 구체적인 학습 방법을 설명한다. 마지막으로 실험 절에서는 MT-Bench를 기반으로 KAME를 평가하고 그 결과를 논의한다.
2. 탠덤 아키텍처
그림 2는 KAME의 아키텍처를 보여준다.
제안하는 설계는 서로 다른 시간 척도로 동작하는 두 개의 모듈로 구성된다. 프런트엔드 S2S 모듈은 이산 오디오 토큰의 주기, 예를 들어 80ms 단위로 동작하는 반면, 백엔드 LLM은 상대적으로 더 느린 주기, 예를 들어 100~500ms 단위로 갱신된다.
이 아키텍처의 핵심 장점은 프런트엔드 S2S 모델이 즉시 응답을 생성할 수 있으며, 이후 백엔드의 감독 정보를 활용해 그 응답을 점진적으로 개선할 수 있다는 점이다. 이에 대한 세부 내용은 다음 절에서 설명한다.
캐스케이드 방식과 달리, 제안 방법에서는 두 모듈이 독립적으로 실행되면서 비동기적으로 연결된다. 이러한 설계는 초기 응답 지연을 최소화하는 동시에, 백엔드 LLM의 도움을 통해 응답 품질을 향상시킨다.
2.1. 백엔드 LLM 모듈
백엔드 LLM 모듈은 스트리밍 음성-대-텍스트(Streaming Speech-to-Text, STT) 구성요소와 백엔드 LLM으로 이루어진다. 사용자가 말하는 동안 스트리밍 STT 구성요소는 음성을 지속적으로 전사하고, 부분 전사 결과를 주기적으로 백엔드 LLM에 전달한다.
백엔드 LLM은 부분 전사 결과를 받을 때마다 후보 응답을 생성하여 프런트엔드 모듈로 전송한다. 이 구조를 통해 프런트엔드 모델은 더 큰 백엔드 LLM의 우수한 지식과 추론 능력을 거의 실시간으로 활용하여, 더 높은 품질의 정보성 있는 응답을 생성할 수 있다. 백엔드 모듈의 데이터 흐름은 그림 2의 빨간색 화살표로 나타나 있다.
구체적으로, 이러한 후보 응답은 프런트엔드 S2S Transformer에 오라클 토큰(oracle tokens)으로 입력되어 출력 생성을 유도한다. 여기에는 시간 동기화와 관련된 문제가 발생한다. S2S Transformer는 고정된 간격, 예를 들어 80ms마다 토큰을 소비하지만, 비동기적으로 전달되는 백엔드 LLM의 응답은 길이와 생성 빈도가 일정하지 않을 수 있다. 이 때문에 연속된 LLM 호출에서 생성된 출력들이 서로 겹칠 수 있다.
이를 해결하기 위해 저자들은 가장 최근에 생성된 응답을 우선적으로 사용한다. 최신 응답은 더 길고 완전한 사용자 전사 결과를 바탕으로 생성되므로, 이전 응답보다 더 많은 정보를 포함할 가능성이 높기 때문이다.
여기서 저자들이 사용하는 “오라클”이라는 용어는 사람이 직접 작성한 정답 주석을 의미하는 것이 아니라, 백엔드 LLM이 제공하는 감독 신호를 의미한다.
동작 방식
- 예) “프랑스의 수도는 어디고, 에펠탑은 언제 지어졌어?”
- 주기적 시간 단위로 청킹
- 1초 c1: 프랑스의
- 2초 c2: 프랑스의 수도는
- 3초 c3: 프랑스의 수도는 어디고, 에
- 4초 c4: 프랑스의 수도는 어디고, 에페탈은
- 5초 c5: 프랑스의 수도는 어디고, 에페탈은 언제 지어
- 끝 c6: 프랑스의 수도는 어디고, 에페탈은 언제 지어졌어?
- 각 청킹된 것을 llm으로 보냄
- c1 -> llm -> r1
- ...
- c6 -> llm -> r6
- 모델 응답:
- 이때 r3까지만 완료되면, (유저 입력, r3)을 기반으로 대답하다가 r6이 온 시점에 r6을 기반으로 이어서 말한다
- moshi 구조이기 때문에 r3의 토큰이 그냥 더해지다가, r6이오면 r6의 토큰이 그때부터 더해지는 방식
- 다만 중요한 한계가 있다. 이미 말한 내용은 되돌릴 수 없어서, 초기
r3이 부정확했다가r6에서 수정되면 다음처럼 자기수정이 생길 수 있다. - “에펠탑은 19세기 후반에 지어졌고... 정확히 말하면 1887년에 착공해 1889년에 완공되었습니다.”
- 모델은 moshi 기반이고 들어온 응답에 대해서 아래처럼 작동하게 됨
- 1. Input audio stream: 사용자 음성 토큰
- 2. Inner monologue stream: 모델이 생성하는 텍스트 토큰
- 3. Output audio stream: 모델이 생성하는 음성 토큰
- 4. Oracle stream: 백엔드 LLM이 생성한 텍스트 응답 토큰
- 이것이 새롭게 추가되는 구조
2.2. 프런트엔드 S2S 모듈
프런트엔드 S2S 모듈은 Moshi 아키텍처 [2]를 기반으로 한다. Moshi는 인코더, S2S Transformer, 디코더의 세 가지 주요 구성요소로 이루어진다. 인코더는 연속적인 오디오 신호를 이산 토큰으로 변환하고, 이렇게 생성된 토큰은 S2S Transformer에서 처리된다. 이후 디코더는 Transformer가 출력한 토큰을 다시 오디오 신호로 변환한다. S2S Transformer의 역할은 서로 의존하는 여러 토큰 시퀀스, 즉 여러 “스트림”을 자기회귀적으로 모델링하는 것이다.
KAME는 기존 Moshi 아키텍처의 세 가지 스트림인 출력 오디오 스트림, 내부 독백 스트림, 입력 오디오 스트림에 더해, 네 번째 스트림인 오라클 스트림을 새롭게 도입한다. 이 새로운 스트림은 백엔드 LLM에서 점진적으로 갱신되는 후보 응답, 즉 오라클 토큰을 포함하며, 이를 통해 생성 과정을 유도한다. 프런트엔드 모듈의 전체 데이터 흐름은 그림 2의 파란색 화살표로 나타나 있다.
이 네 개의 스트림으로 구성된 시스템에서 입력 오디오 스트림에는 사용자의 음성을 이산화한 토큰이 들어간다. 모델은 이 입력을 바탕으로 내부 독백 스트림에서는 자신이 말할 내용의 텍스트 표현을 생성하고, 출력 오디오 스트림에서는 이에 대응하는 이산 오디오 토큰을 생성한다.
오라클 스트림은 백엔드 LLM의 외부 지식을 이 생성 과정에 직접 주입한다. 이 정보를 효과적으로 통합하고 시간적 불일치 문제를 해결하기 위해서는, 프런트엔드 모듈이 이러한 오라클 토큰을 사용하도록 학습되어야 한다. 저자들은 다음 절에서 이를 위한 실용적인 학습 방법을 구체적으로 설명한다.
- 이 경우는 모든 입력에 대해 항상 llm 백본을 태우는 구조라서 좀 비효율적이긴 하네
- 모델 첫 응답이 <IDK> or <ret> 처럼 이게 필요한지 토큰이 나오는걸보고, 나오면 검색된걸 합치고 안나오면 그냥 응답하게끔 하면 되지 않을까?
3. 학습 방법
일반적인 S2S 모델의 학습은 비교적 단순하다. 두 화자가 참여한 대화 데이터셋에서 한 사용자의 음성을 입력으로, 다른 사용자의 음성을 목표 응답으로 사용하면 되기 때문이다. 그러나 KAME에는 이러한 단순한 방식을 그대로 적용할 수 없다.
KAME의 아키텍처에는 외부 정보를 제공할 뿐 아니라, 사용자의 부분 발화에 따라 실시간으로 변화하는 오라클 토큰이 필요하다. 이러한 특성을 갖는 자연스러운 대화 데이터를 직접 수집하는 것은 상당히 어렵다. 이에 저자들은 일반적인 두 화자 대화 데이터셋을 KAME 학습에 필요한 형식으로 변환하는 방법을 제안한다.
3.1. 모의 오라클 증강
오라클 텍스트는 일반적인 대화 데이터에 자연스럽게 존재하지 않는다. 따라서 저자들은 사용자 입력과 이에 대응하는 정답 응답을 포함한 기존 대화 데이터셋을 활용하여 오라클 텍스트를 인위적으로 생성한다.
핵심 설계 원칙은 모의 오라클이 실시간 LLM의 동작을 모방하도록 만드는 것이다. 즉, 사용자의 발화를 조금밖에 듣지 못했을 때는 대략적인 응답을 생성하고, 더 많은 발화를 들을수록 예측이 점진적으로 정확해져야 한다. 그림 3에 나타난 과정은 다음과 같다.
초기 입력: 사용자 발화의 초반에는 모의 오라클 텍스트가 일반적이고 그럴듯한 문장이 되도록 한다. 이는 LLM이 사용자의 첫 몇 단어만 들은 상태에서 합리적인 추측을 하는 상황을 모사한다.
점진적 정제: 사용자 입력이 더 많이 처리될수록, 최종 정답에 더 구체적이고 가까운 새로운 모의 오라클 텍스트를 생성한다.
최종 수렴: 사용자가 발화를 마칠 시점에는 모의 오라클 텍스트가 데이터셋에 기록된 실제 정답 응답과 거의 동일해지도록 한다.
모의 오라클 텍스트를 생성하기 위해 별도의 시뮬레이터 LLM을 사용한다. 목표는 현재까지 사용자의 발화를 얼마나 들었는지에 따라, 시뮬레이터의 출력이 실제 정답 응답과 얼마나 유사해야 하는지를 조절하는 것이다.
먼저 시간 (t)에서 사용자 입력의 완성도를 현재까지 들은 단어 수의 비율로 정의한다.
여기서 (n(t))는 시간 (t) 이전까지 관찰된 단어의 개수이고, (N)은 전체 발화에 포함된 단어 수이다.
이 비율 (r(t))에 따라 0부터 5까지의 힌트 수준 (\ell(t))을 결정하며, 구체적인 기준은 표 1에 제시되어 있다. 힌트 수준은 시뮬레이터 LLM이 모의 오라클 텍스트를 생성할 때 사용하는 프롬프트 방식을 나타낸다.
레벨 0: ($r(t)\in[0,0.5)$)
사용자 발화를 아직 거의 듣지 못한 구간이다. LLM에는 지금까지의 대화 이력만 주어지며, 정답 힌트는 제공되지 않는다. 따라서 LLM은 현재까지의 정보만으로 그럴듯한 응답을 처음부터 생성해야 한다.
레벨 1–4: ($r(t)\in[0.5,1)$)
사용자 입력이 점차 완성되는 구간이다. LLM에는 대화 이력과 실제 정답 응답이 함께 주어진다. 실제 정답 응답은 “힌트”로 사용되며, 각 레벨마다 힌트를 어느 정도 활용해야 하는지를 지시하는 별도의 명령이 제공된다. 이를 통해 모의 오라클 문장이 점차 실제 정답에 가까워지도록 한다.
레벨 5: (r(t)=1)
사용자 입력이 완전히 끝난 시점이다. 이때는 LLM을 사용하여 새 문장을 생성하지 않는다. 실제 정답인 힌트 텍스트를 그대로 최종 모의 오라클 문장으로 사용한다.
이러한 힌트 수준 메커니즘을 사용하면, 모의 오라클 텍스트가 처음에는 정답 정보 없이 생성된 추측에서 시작하여, 점차 정답 힌트의 사용 제약을 완화하면서 올바른 응답으로 부드럽게 수렴하도록 만들 수 있다.
또한 TTS 시스템을 사용하면 텍스트 기반 질의응답 데이터셋도 KAME 학습에 활용할 수 있다. 저자들은 실험을 위해 다양한 주제의 질문과 답변을 수집하고, 이를 대화 형식으로 변환하였다. 이후 TTS 시스템과 단어 정렬기를 사용하여 해당 데이터셋을 앞서 설명한 절차에 적용할 수 있는 형태로 변환하였다.
- 예시)
- 사용자 질문: “프랑스의 수도는 어디고, 에펠탑은 언제 완공됐어?”
- 정답 응답: “프랑스의 수도는 파리이며, 에펠탑은 1889년에 완공되었습니다.”
- 이러면 중간 LLM의 결과에 대한 데이터를 증강했다는 것이다.
- r(t)는 사용자 질문의 단어 비율을 의미함
- 초반
- “프랑스의 수도는” 까지 입력이 들어왔다고 하면
- 이걸 LLM에 태워서 나온 결과 “프랑스의 수도에 대해 묻고 계신 것 같습니다.” 이거가 오라클 학습 정보가 되는것
- 중반
- “프랑스의 수도는 어디고”까지 입력이 들어왔다고 하면
- 학습 llm 결과 데이터: “프랑스의 수도는 파리이며, 에펠탑은 1889년에 완공되었습니다.”
- 단 여기서 Llm 결과 뽑을때 힌트인 기존 정답 응답을 같이줌 (위에 설명에선 레벨1-4 단계)
- llm이 제대로 된 결과를 준 것으로 학습 데이터를 만들기 위함임
- 단 힌트를 그대로 내뱉지 않고, 일부만 사용하라고 프롬프트가 있음
- 레벨 1, r(t)∈[0.5,0.65): 힌트 문자열의 키워드만 참고
- 레벨 2, r(t)∈[0.65,0.8): 힌트와 다른 내용도 포함
- 레벨 3, r(t)∈[0.8,0.95): 힌트를 그대로 복사하지 말 것
- 레벨 4, r(t)∈[0.95,1): 힌트를 사용
- 후반
- “프랑스의 수도는 어디고, 에펠탑은 언제 완공됐”까지 입력이 들어왔다고 하면
- 학습 llm 결과 데이터: “프랑스의 수도는 파리이며, 에펠탑은 1889년에 완공되었습니다.”
- 마찬가지로 힌트줌
- 최종
- llm 생성 없이 그냥 기존 정답 응답 자체를 사용
- 설며은 초/중/후반으로 나눴지만 실제로는 r(t) 범위에 따라 이런식으로 데이터 만든다는 것
3.2. 프런트엔드 S2S 모델 학습
데이터 생성이 완료되면 프런트엔드 S2S 모듈을 학습할 수 있다. 학습 데이터는 오디오 입력과 이에 대응하는 모의 오라클 문장으로 구성되며, 모의 오라클 문장은 실제 시스템에서 실시간으로 도착하는 상황을 모사하기 위해 고정된 시간 간격으로 주입된다.
학습 데이터를 준비하기 위해 몇 가지 중요한 변경을 적용한다.
- 첫째, 모의 오라클 문장은 내부 독백 스트림과 동일한 토크나이저를 사용해 토큰화한다. 이를 통해 모델 내부에서 텍스트 표현의 일관성을 유지한다.
- 둘째, 연속해서 도착하는 서로 다른 모의 오라클 문장을 모델이 구분할 수 있도록, 각 문장 앞에 경계를 표시하는 전용 특수 토큰을 붙인다.
- 셋째, 모델의 강건성을 높이기 위해 학습 중 모의 오라클 토큰의 도착 시점에 무작위 지터를 추가한다. 이는 실제 시스템에서 발생할 수 있는 작은 지연과 도착 시간의 변동을 모사하기 위한 것이다.
학습 목적 함수로는 텍스트 손실과 오디오 손실을 결합한 손실 함수를 사용하며, 오디오 손실에는 1.5의 가중치를 부여한다. 그 밖의 모든 하이퍼파라미터와 설정은 원래 Moshi 논문과 동일하게 사용한다.
- 생각되는 문제는 인퍼런스시, 음성모델이 백그라운드 모델 결과 받아서 결과 생성할때 그다음의 새로운 백그라운드 모델 결과가 들어오면 처음부터 다시 정보가 들어오는거잖아.
- 그럼 백그라운드 모델의 결과의 앞 부분은 계속해서 중복된 내용일텐데, 이를 계속해서 주입하는 느낌임
- 예)
- r3: “프랑스의 수도는 파리입니다.”
- 모델이 “프랑스의 수도는 파리이고…” 을 말하기 시작
- r6: “프랑스의 수도는 파리이고, 에펠탑은 1889년에 완공되었습니다.” 이 다시 들어옴
- 모델이 “프랑스의 수도는 파리이고… 프랑스의 수도는 파리이고, 에펠탑은 1889년에…” 이런식으로 응답이 나갈 가능성이 있음
- 논문에서는 따로 해결법을 제시하지 않음
4. 실험
우리는 KAME를 평가하고 여러 기준 시스템과 비교한다. 기준 시스템으로는 대표적인 음성-대-음성(S2S) 시스템인 Moshi [15]와 선구적인 캐스케이드 시스템인 Unmute [16]를 사용한다. 공정한 비교를 위해 Unmute의 백엔드를 외부 LLM과 함께 동작하도록 수정하였다.
4.1. 실험 설정
기본 대화 데이터셋을 구축하기 위해, 벤치마크의 질의응답 쌍을 시드로 사용하여 합성 대화 세션을 생성하였다. 구체적으로 MMLU-Pro의 11,996개 항목 [17]으로부터 22,800개 세션을, GSM8K의 7,428개 항목 [18]으로부터 11,742개 세션을, HSSBench의 12,012개 항목 [19]으로부터 22,040개 세션을 생성하였다. 이후 이 데이터셋들에 시뮬레이션된 오라클을 추가하였다. 공정한 비교를 위해 Moshi 역시 동일한 기본 대화 데이터로 파인튜닝하였다.
시스템 간 비교에는 두 가지 평가 지표를 사용하였다. 하나는 응답 지연 시간(response latency)이고, 다른 하나는 MT-Bench 벤치마크 [10]의 일부 하위 집합에서 측정한 응답 품질(answer quality)이다. 음성 상호작용에 적합하지 않은 질문 범주는 평가에서 제외하였다. 구체적으로 “Coding”, “Extraction”, “Math”, “Roleplay”, “Writing” 범주를 제외하였다.
응답 지연 시간은 사용자의 발화, 즉 질문이 끝난 시점부터 시스템의 발화, 즉 답변이 시작되는 시점까지의 시간으로 계산하였다. 답변 품질은 MT-Bench 논문에서 제시한 표준 절차를 따라 LLM-as-a-Judge 방식으로 측정하였다. 모든 실험은 여섯 번 반복하였으며, 평균 결과를 보고한다.
4.2. 결과 및 논의
표 2는 실험에서 얻은 MT-Bench 점수와 응답 지연 시간을 요약한다.
제안한 KAME 구조는 질의응답 성능에서 Moshi를 크게 능가하였다. 외부 LLM을 지식 접근 모델로 추가함으로써 MT-Bench 점수는 Moshi의 2.05에서 KAME의 6.43으로 향상되었다. 한편, 지식 접근 모델을 도입한 이후에도 중앙값 기준 응답 지연 시간은 동일하게 유지되었다. 다시 말해, Moshi와 KAME 모두 전체 세션의 절반 이상에서 질문이 끝나기 전에 응답을 시작하였다.
KAME는 백엔드 모델에 종속되지 않는 특성도 보였다. 학습에는 GPT-4.1-nano를 주요 백엔드로 사용했지만, 표 2의 두 KAME 결과에서 확인할 수 있듯이 백엔드 모델을 교체하더라도 성능은 크게 저하되지 않았다. 또한 백엔드 LLM의 선택에 따라 범주별 상대적 강점이 달라지는 것도 관찰되었다. 따라서 KAME에서는 실제 배포 환경과 사용 맥락에 맞추어 적절한 백엔드 모델을 선택할 수 있다.
캐스케이드 시스템과 비교하면, 제안 방법은 Unmute보다 훨씬 빠르지만 MT-Bench 점수는 더 낮았다. 이는 KAME가 훨씬 적은 정보만 확보한 상태에서 응답을 시작하기 때문이다. 그럼에도 KAME는 외부 모델로부터 기존 발화와 모순되는 오라클이 도착하면, 이후 발화 내용을 수정할 수 있었다. 이러한 행동은 실제 대화에서는 자연스럽고 바람직하지만, 텍스트로 전사했을 때는 중복 표현을 만들어낸다. 이 때문에 LLM-as-a-Judge 기반 평가에서 불리하게 작용하여 MT-Bench 점수가 낮아질 수 있다.
원칙적으로 캐스케이드 시스템은 음성 인식 오류가 없다면 백엔드 LLM의 성능을 거의 온전히 활용할 수 있다. 반면 KAME는 너무 이른 응답 생성으로 인해 성능이 저하될 수 있다. 백엔드 LLM 자체의 능력을 분리하여 확인하기 위해, GPT-4.1을 사용한 KAME 실험에서 각 세션의 마지막 오라클 주입 문장을 추출하고, 해당 백엔드의 텍스트 응답을 직접 평가하였다. 그 결과 추론은 6.48, STEM은 8.34, 인문학은 8.56이었으며, 평균은 7.79였다. GPT-4.1을 사용한 캐스케이드 방식의 Unmute도 이와 유사한 점수를 기록했지만, GPT-4.1을 백엔드로 사용한 KAME의 전체 성능은 더 낮았다. 이는 KAME와 캐스케이드 시스템 간 성능 차이의 주된 원인이 백엔드 LLM의 능력 부족이 아니라, 너무 이른 시점에 응답을 시작하는 데 있음을 의미한다.
응답 지연 시간과 응답 품질 사이의 상충 관계를 분석하기 위해, 모델이 의도적으로 응답을 늦추도록 하는 추가 실험을 수행하였다. 구체적으로, 지정된 시간이 지날 때까지 S2S 모델이 오디오 스트림에서는 침묵 토큰만 출력하고, 내부 독백 스트림에서는 패딩 토큰만 출력하도록 강제하였다. 그림 1은 이러한 강제 지연 시간에 따른 MT-Bench 점수를 보여준다. 초기에는 응답을 지연할수록 품질이 향상되었다. 그러나 지연 시간이 길어질수록 그 효과는 감소하였다. 저자들은 이를 학습 데이터에 긴 침묵 구간의 예시가 충분하지 않았기 때문으로 해석한다. 향후에는 이에 맞는 데이터 확장과 정제를 통해 이러한 한계를 완화할 수 있다.
무엇보다 이 분석은 캐스케이드 모델과의 성능 차이가 조기 응답 생성에서 비롯된다는 점을 확인해준다. 즉, KAME는 낮은 지연 시간과 높은 응답 품질이라는 상충하는 요구 사이에서 효과적인 균형을 달성한다.
- KAME는 기본 S2S 모델인 Moshi보다 질의응답 품질을 크게 높였다. MT-Bench 평균 점수는 Moshi의 2.05에서 GPT-4.1 백엔드를 사용한 KAME의 6.43으로 상승했다. 반면 중앙값 응답 지연 시간은 둘 다 0초로 측정되어, KAME도 절반 이상의 대화에서 사용자 질문이 끝나기 전에 응답을 시작했다.
- 백엔드 LLM을 GPT-4.1에서 Claude-opus-4.1로 바꾸어도 평균 점수가 6.23으로 유지되어, KAME가 특정 백엔드 모델에 크게 의존하지 않는다는 점도 확인되었다.
- 다만 캐스케이드 시스템인 Unmute는 평균 7.70으로 KAME보다 품질이 높았지만, 응답 지연 시간이 2.1초로 훨씬 길었다. KAME의 성능이 낮은 주된 이유는 백엔드 LLM 자체의 능력 부족이 아니라, 사용자 발화가 완전히 끝나기 전에 불완전한 정보로 응답을 시작하기 때문이다. 실제로 마지막 오라클 텍스트만 따로 평가하면 평균 7.79로 Unmute와 비슷했다.
- 응답을 일부러 지연시키자 초기에는 성능이 향상되었다. 이는 KAME가 더 많은 사용자 입력과 더 정확한 오라클을 받은 뒤 답할수록 품질이 좋아진다는 것을 보여준다. 전체적으로 KAME는 Moshi 수준의 낮은 지연 시간을 유지하면서, 응답 품질을 캐스케이드 시스템에 가깝게 끌어올린 방법이라고 볼 수 있다.
5. 결론
본 논문에서는 실시간 대화형 AI를 위한 새로운 탠덤 구조인 KAME를 제안하였다. KAME는 오라클 토큰을 도입함으로써 LLM의 고도화된 능력과 직접 S2S 시스템의 낮은 지연 시간을 효과적으로 결합한다. 또한 이 구조를 학습하기 위해 필요한 합성 오라클 데이터를 생성하는 기법을 포함하여, 실용적인 학습 방법도 함께 제안하였다.
실험 결과, KAME는 기존 접근법보다 크게 향상된 성능을 보였다. 캐스케이드 시스템과 비교하면, KAME는 응답 품질 저하를 최소화하면서 지연 시간을 크게 줄였다. 반대로 표준 S2S 모델과 비교하면, 지연 시간을 증가시키지 않으면서 응답 품질을 상당히 향상시켰다.
이러한 결과는 제안한 탠덤 구조가 강력한 실시간 대화형 AI를 구축하기 위해, 낮은 지연 시간과 높은 응답 품질 사이에서 효과적이고 균형 잡힌 해결책을 제공함을 보여준다. 향후 연구 과제로는 다자간 대화처럼 프런트엔드 모델만으로는 충분히 잘 처리하기 어려운 상황까지 KAME를 확장하는 것이 있다.
Reference
댓글
댓글 쓰기