대부분의 번역 제품은 안정성 질문에 배지로 답합니다. 가동률 숫자, 인증 로고, 상태 페이지 같은 것들이죠. 저희에게는 그런 것이 없습니다. 대신 앱에 동작으로 새겨 넣은 것들이 있습니다. 각 동작이 처음 들어온 릴리스를 변경 내역에서 확인할 수 있고, 세션 중에 직접 관찰할 수도 있습니다. 이 페이지는 그 동작들을 있는 그대로 설명합니다. 솔직한 답이 "분명히 느껴지실 겁니다"인 경우까지 포함해서요.
엔진은 사용자가 고르지 않습니다
VoxisLive에는 모델 선택기가 없습니다. 이는 단순함을 위한 결정이 아니라 안정성을 위한 결정입니다. 엔진 라우팅은 대상 언어별로 서버에서 결정됩니다. 세션이 시작되면 앱은 사용자가 고른 언어에 어떤 엔진을 쓸지 저희 서버에 묻고, 그 답을 그대로 따릅니다.
실질적인 결과는, 라우팅 문제는 사용자가 아니라 저희가 해결할 몫이라는 것입니다. 특정 언어에서 한 엔진의 품질이 떨어지면 그 언어의 라우팅이 서버 쪽에서 바뀌고, 다음에 시작하는 세션부터 새 경로를 씁니다. 앱을 업데이트할 필요도, 공지를 읽을 필요도, 설정을 바꿀 필요도 없습니다. 애초에 바꿀 설정 자체가 없었으니까요.
이 설계의 대가도 솔직하게 밝히겠습니다. 라우팅을 무시하고 특정 엔진을 강제할 수 없고, 어제 마음에 들었던 그 엔진에 자신을 고정해 둘 수도 없습니다. 자신의 키를 가져와 쓰는 경우에는 라우팅이 그 키를 따릅니다. 자체 키(BYOK) 해제가 어떻게 작동하는지는 요금제를 보세요.
세션 도중 엔진이 끊기면
실시간 음성 세션은 클라우드 엔진과 오래 유지되는 연결이고, 오래 유지되는 연결은 언젠가 끊어집니다. 사용자 쪽 네트워크가 끊겨서 끊어지고, 제공사 쪽의 사용량 제한이나 용량 문제로 끊어지며, 아무도 공개 장애로 기록하지 않는 평범한 일시적 오류로도 끊어집니다.
세션이 돌고 있던 엔진을 세션 도중에 쓸 수 없게 되면, 앱이 자동으로 백업 엔진으로 전환합니다. 세션이 종료되지도, 시작 화면으로 되돌아가지도, 무언가를 고르라는 요구를 받지도 않습니다. 전환이 일어났다는 사실은 상태 표시줄로 알려 드립니다. 어차피 소리가 비는 것을 듣게 될 텐데, 영문을 모르는 것보다 이유를 아는 편이 낫기 때문입니다.
이것이 아닌 것도 분명히 해 두죠. 이음매 없는 이어 붙이기는 아닙니다. 전환에는 잠깐 시간이 걸리고, 그사이에 들어온 말은 대기열에 쌓이는 대신 사라집니다. 나중에 더 빨리 말해서 따라잡는 통역사는 한 박자 건너뛰는 통역사보다 나쁘니까요. 사람 통역사가 기침했을 때와 같은 정도의 짧은 공백이라고 생각하시면 됩니다.
엔진은 조용한데 자막은 계속 나올 때
연결이 끊기는 것보다 더 이상한 고장 방식이 있습니다. 엔진이 연결은 유지한 채 번역된 텍스트는 계속 만들어 내면서 오디오만 내놓지 않는 경우입니다. 화면에는 번역이 뜨는데 아무 소리도 들리지 않습니다. 앱 안에서 보면 이건 오류로 보이지도 않습니다. 기술적으로는 모든 것이 정상 작동 중이니까요.
대기 중이던 문장에 대해 엔진이 들리는 오디오를 전혀 내놓지 않으면, 사용자 컴퓨터에서 도는 로컬 음성이 그 문장을 대신 읽습니다. 이 음성은 클라우드가 아니라 기기 안에 있으므로, 방금 조용해진 엔진에 의존하지 않습니다. 클라우드 음성과는 다른 목소리이고, 차이를 알아차리실 겁니다.
로컬 음성이 메운 시간은 과금되지 않습니다. 나중에 고객 지원이 사정을 봐서 돌려주는 크레딧이 아닙니다. 앱이 그 문장을 직접 말하는 동안에는 그 초를 사용자의 분에 더하지 않습니다. 이유는 간단합니다. 클라우드 음성 값을 냈는데 그 구간에는 클라우드 음성을 받지 못했으니까요.
이것은 빈 곳을 메우는 장치이지, 두 번째 번역 엔진이 아닙니다. 클라우드 엔진이 이미 번역했지만 목소리로 내지 않은 문장을 읽어 줄 뿐입니다. 번역 자체가 아예 오지 않으면 읽을 것도 없습니다.
무료 등급은 다른 경로를 탑니다
무료 등급은 유료 세션과 같은 엔진에서 돌지 않으므로, 문제가 생겼을 때 같은 구조 경로를 타지 않습니다. 무료 등급에는 자체 경로가 있고, 그중 하루 사용 분에 영향을 주는 한 가지는 설명해 둘 만합니다.
무료 등급은 사용자 컴퓨터에 있는 음성으로 말합니다. 특정 언어를 처음 쓸 때는 그 음성을 먼저 내려받아야 합니다. 느린 연결에서는 다운로드에 시간이 걸리고, 그동안에는 들을 것이 없습니다. 이 준비 시간은 무료 분에서 차감되지 않습니다. 들을 것이 생긴 순간부터 시계가 돕니다.
무료 등급이 번역할 수 있는 언어는 말할 수 있는 언어보다 많습니다. 로컬 음성이 없는 언어에서는 번역이 음성 대신 자막으로 나옵니다. 이는 고장이 아니라 지원 범위의 한계이며, 어떤 언어가 되는지는 지원 언어 페이지에 정리되어 있습니다.
캡처가 죽으면 시계가 멈춥니다
가장 큰 손해를 끼치는 고장은 알아차리지 못하는 고장입니다. 캡처 스트림은 조용히 죽을 수 있습니다. 장치가 뽑히거나, 다른 앱이 오디오 엔드포인트를 독점으로 가져가거나, 드라이버가 재설정되는 식으로요. 그런데 밖에서 보면 앱은 여전히 세션을 돌리고 있는 것처럼 보입니다. 무음은 조용한 방과 꽤 비슷해 보이니까요.
앱은 사용량을 마지막에 한 번 청구하는 대신, 짧은 주기로 반복되는 하트비트로 서버에 보고합니다. 원래는 크래시 대비 설계지만 여기서도 제 몫을 합니다. 캡처가 죽으면 하트비트 한 번 안에 분 계산이 멈춥니다. 최악의 경우라도 청구서에 남는 것은 몇 초의 빈 소리이지, 세션의 나머지 전부가 아닙니다.
정산과는 별개로, 앱은 아무것도 내놓지 않는 캡처를 점검하고, 지금 쓰는 방식이 못 듣고 있다는 것이 입증되면 다른 캡처 방식으로 옮길 수 있습니다. 무음 세션이 반복된다면 문제 해결에서 장치 차원의 원인을 다룹니다.
저희가 주장하지 않는 것
저희는 어떤 컴플라이언스 인증도 보유하고 있지 않습니다. ISO도, SOC 2도, 감사받은 어떤 종류의 인증도 없습니다. 그리고 배지로 있는 척할 생각도 없습니다. 가동률 수치를 공개하지 않으며, 환불 약관 밖의 가용성 보장이나 서비스 크레딧도 제공하지 않습니다.
세션을 이루는 세 요소 중 둘은 저희가 운영하지 않는 클라우드 서비스입니다. 음성 엔진과 그 백업 엔진이죠. 둘 다 동시에 품질이 떨어지면, 이 페이지의 장치들은 손실을 줄여 줄 뿐 세션을 돌아가게 만들지는 못합니다. 오프라인 모드는 없습니다. VoxisLive의 어떤 부분도 네트워크 연결 없이는 번역하지 못합니다.
지연도 고장 방식이 아니며, 고쳐지는 것도 아닙니다. 동시통역은 본래 화자보다 몇 초 뒤처져 진행되고, 저희가 쓰는 엔진은 동시통역사입니다. 그 시간이 어디에 쓰이는지는 작동 방식에서 다룹니다.
인증서가 아니라 엔지니어링
이 페이지의 모든 동작은 특정 릴리스에서 들어왔고, 그 릴리스들은 하나하나 변경 내역에 사용자가 체감하는 변화로, 쉬운 말로 적혀 있습니다. 이 페이지의 말을 그냥 믿는 대신 그 장치가 실제로 있는지 확인하고 싶다면 거기부터 보세요. 캡처와 세션 코드 자체는 라이선스 안내에 설명된 읽기 전용 발췌본에서 볼 수 있습니다.
| 장치 | 사용자가 보게 되는 것 | 확인할 곳 |
|---|---|---|
| 대상 언어별 서버 측 라우팅 | 앱 어디에도 엔진 선택기가 없음 | /ko/changelog |
| 백업 엔진으로 자동 전환 | 상태 표시줄 안내와 짧은 공백, 이후 음성 재개 | /ko/changelog |
| 목소리가 나오지 않은 문장을 로컬 음성이 마무리 | 그 문장만 다른 목소리로 들리고, 그 초는 과금되지 않음 | /ko/changelog |
| 무료 등급 음성 준비 시간 무과금 | 언어를 처음 쓸 때 음성을 내려받고, 그동안 시계는 대기 | /ko/changelog |
| 캡처가 죽으면 사용량 하트비트 중단 | 캡처가 죽은 뒤 하트비트 한 번 안에 계산 중지 | /ko/changelog |
이 페이지로 설명되지 않는 방식으로 세션이 잘못됐다면, 앱의 신고 버튼이 민감 정보를 지운 로그와 함께 보내 줍니다. 문의로 연락하셔도 됩니다.