Meta seamless M4T: iOS 테스트앱 만들어봄
얼마전 메타에서 Seamless Communication 이라는걸 발표했다. SeamlessM4T, SeamlessExpressive, SeamlessStreaming 이렇게 세가지 모델이 있는데, 각각 무얼하는지는 얘들 홈페이지에서 캡쳐:
일단 모델을 받아서 집에 있는 컴에서 돌려보는건 해봤는데, 제일 먼저 관심이 가는건 SeamlessM4T v2 요녀석이다. 꽤 많은 언어쌍에 대해서 From/To (Voice or Text) 를 해준다. 예를 들어서,
* (한국어) (텍스트) -> (영어) (음성)
* (한국어) (음성) -> (일본어) (텍스트)
이런게 아주 많은 언어쌍에 대해 된다는 것... 그런데 테스트 해 보니 성능은 (체감상) 좀 미묘하다. 그래도 이참에 삽질좀 해놓자 싶어서 뚝딱뚝딱
몇 가지 사소하지만 시간이 좀 걸린 삽질들이 있었지만, 어쨌든 끗!
앱으로 만들고 테스트를 해 보니 잘 된다. 나중에 서버 엔진 구현 부분만 바꾸면 테스트 앱은 그대로 두고 여러가지 다른 것들도 쓸 수 있다. (음성인식은 A로 한다거나, 번역은 B 서비스를 쓴다거나, TTS 만 C 로 해본다거나 ... 등등)
---
삽질1: iOS에서 Raw PCM 데이터를 가지고 재생하는게 5분이면 될줄 알았는데 의외로 몇시간 걸림.
삽질2: 한참 시뮬레이터에서 동작시키고 나서 디바이스에 빌드해 올리려고 하니, 작업하던 아이맥이 오래된거라 xcode 버전이 옛날거 ... M2 맥북프로에 다시 xcode 깔고 하느라 시간 많이 날렸다.
삽질3: ipywebrtc 로 jupyter notebook 에서 음성 데이터 얻었는데, a. webm 포맷으로 나온거 모르고 한참 삽질, b. 분명 sample rate=16000 줬는데, 지 맘대로 48000으로 뱉어주고 있어서 또 한참 삽질 ...