어릴 때 홍콩에서 길을 잃은 적이 있습니다. 그곳 말을 할 줄 몰랐습니다.
그 뒤 중국이나 제가 말을 모르는 다른 나라로 여행을 갔을 때는 모바일 데이터를 쓸 수 없었습니다. 그때마다 바란 것은 똑같았습니다. 인터넷 연결 없이도 되는 번역기, 그래서 사람들의 말을 알아듣고 이야기를 나눌 수 있게 해 주는 번역기였습니다.
Knowless는 그걸 만들어 보려는 제 시도입니다. 말소리를 휴대폰 안에서 바로, 실시간으로 받아쓰고 번역합니다. 제가 디자인했고, AI의 도움을 받는 도구로 만들었습니다.1 아마 제가 만든 앱 중 가장 단순한 앱일 겁니다. 화면 하나, 버튼 하나입니다. 이만큼 단순해지기까지 길을 세 번 잘못 들었습니다.
첫 시도: 레이더
첫 버전은 항상 듣고 있는 레이더였습니다. 오디오만으로 말하는 사람이 어디 있는지 알아낼 수 있을 거라고 상상했습니다.
안 된다는 걸 아는 데는 오래 걸리지 않았습니다. 제 휴대폰은 녹음에 공간 음향을 담아 주지 않아서, 목소리가 어디서 오는지 알려 주는 것이 녹음 안에 아무것도 없습니다. 제가 읽은 바로는 더 최신 기종에서는 될 수도 있습니다. 저는 그 기종이 없습니다. 소리로 해 보려던 시도는 그만뒀습니다.
두 번째 시도: 카메라 두 개
그래서 귀 대신 눈을 써 봤습니다. 전면 카메라와 후면 카메라를 동시에 켜서 말하고 있는 얼굴을 찾고, 그 사람이 어디 있는지 앱이 알게 하는 방식이었습니다.
제 휴대폰에서 돌아가는 빌드까지는 갔습니다. 모든 것을 기기에서 처리하고 서버는 쓰지 않았습니다. 두 카메라를 지켜보면서 목소리마다 얼굴을 짝지으려 했습니다. 정작 중요한 데서 실패했습니다. 휴대폰이 뜨거워졌습니다. 배터리가 빨리 닳았습니다. 자주 멈췄습니다. 그것도 접었습니다.
제 귀로 직접 듣기
더 작지만 그만큼 중요했던 결정들도 있습니다. 시끄러운 곳을 위한 소음 제거는 이론상 그럴듯해 보였습니다. 그러다 잡음이 심한 녹음을 제 귀로 직접 들어 봤습니다. 제가 무슨 말을 하고 있는지 저조차 알아들을 수 없었습니다. 소음을 아무리 제거해도 해결될 일이 아니어서 그 아이디어는 접었습니다.
제가 말하는 ‘휴먼 인 더 루프’가 바로 이것입니다. 저는 AI로 만들고, 제가 요구하는 것이 실제 상황에서 말이 되는지 계속 확인해야 합니다. 결정은 대단히 중요합니다.
모델도 마찬가지였습니다. 하나씩 테스트했고, 시간이 오래 걸렸습니다. 초기에는 모델을 휴대폰에 다운로드하는 방식이어서 앱 용량이 4기가바이트쯤 됐을 겁니다. 첫 프로토타입은 대화 기록도 저장했습니다. Shipaton 일정에 맞춰 출시하려고 그걸 뺐는데, 그러고도 마감을 놓칠 뻔했습니다.
제 귀에 안 들리면 어떤 필터도 못 듣습니다
남은 것
화면 하나, 버튼 하나. 누르고, 말하고, 번역합니다.
번역문 줄은 큽니다. 원문은 바로 그 아래에 있습니다. 더 작고, 회색이고, 기울임꼴입니다.
글자가 커져도 이 순서는 그대로입니다. 크기는 핀치로 50%에서 300%까지 조절합니다. 들을 언어는 최대 세 개까지 미리 골라 둡니다. 그리고 한 줄을 가져갈 수도 있습니다. 복사하거나, 소리 내어 읽게 할 수 있습니다.
그 이틀
아주 작은 기능 하나가 알고 보니 굉장히 복잡했습니다. 글자가 나타나는 방식입니다.
오디오가 텍스트가 되고, 그 텍스트가 화면에 뜨는 것처럼 보입니다. 그렇지 않습니다. 오디오는 먼저 추측이 되고, 그 추측이 곧바로 화면에 떠서 실시간처럼 느껴집니다. 그다음 추측이 고쳐지고, 고친 결과가 다르면 화면이 바뀝니다. 긴 문장이 끝나면 문장 전체의 문맥을 써서 한 번 더 고치는 단계가 있습니다.
이 상태들 하나하나가 제대로 보여야 하고, 그 사이의 기다림도 마찬가지입니다. 아직 들어오는 중인 줄은 호박색 커서 뒤에서 계속 바뀌는 글리프로 그려집니다. 자리 잡은 줄은 평범한 텍스트이고, 움직이지 않습니다.
이틀 넘게 앱과 디자인 목업 사이를 오갔습니다. 직관적으로 느껴져야 한다는 건 처음부터 알고 있었고, 사람들이 그걸 느낄 거라고 믿었습니다. 이렇게 오래 걸릴 줄은 몰랐습니다.

없어야 할 것들이 있습니다. 모두가 알아채는 건 아닙니다.
사실 그대로 말하기
음성 인식과 번역은 휴대폰에서 실행됩니다. 언어는 인터넷에 연결된 상태에서 한 번 다운로드해야 하고, 그 뒤로 핵심 기능은 연결 없이 작동합니다. 그래서 제가 준비한 스토어 스크린샷에는 “works offline”이라고 쓰고, 조건도 바로 이어서 밝힙니다. 지원 언어를 다운로드한 뒤라는 조건입니다.
이 글이 증명하지 않는 것
여기에는 결과가 없습니다. 이해도 점수도, 사용성 조사도, 사용자 수 통계도 없습니다. 제가 보여 드릴 수 있는 것은 지나온 길과 그 길이 닿은 곳입니다.
다음에는 두 사람이 각자 휴대폰을 들고, 서로의 말이 실시간으로 번역되게 하고 싶습니다. 아직 만들지 않았습니다.
