水美想館soomisang

구글 AI 스튜디오로 학습관에 목소리 붙이기

#기록#개발#JLPT 학습관

N5 콘텐츠를 만들고 직접 공부하기 시작한 지도 꽤 지났다. 부지런히 한 날도 있었고, 휴일 기분에 취해 생각보다 게으르게 넘긴 날도 있었다. 그래도 어찌 됐건 손을 놓지 않고 이어 가고 있다는 점은 만족스럽다.

공부하다 보니 단어나 문장을 소리로도 들을 수 있으면 좋겠다는 생각이 들었다. 그래서 문법과 단어를 익히는 화면에 듣기 버튼을 달고, 브라우저에 들어 있는 일본어 음성으로 읽게 해 봤다.

청해 문제가 이미 그 음성으로 소리를 내고 있었으니 별문제 없겠거니 했는데, 막상 들어 보니 실망스러웠다.

듣기 버튼은 일단 접어 두고, 청해 문제도 다시 들어 봤다. 기기마다 목소리가 달랐고, 「えいが は ごご よじ から です」의 は를 「하」로 읽고 있었다. 가나를 익힐 때 조사로 쓰인 は는 「와」로 읽는다고 배웠는데 말이다. 사태의 심각성을 그때서야 깨달았다.

부랴부랴 음성을 만들 방법부터 찾아봤다. 라이브러리도 뒤져 보고 프로그램도 찾아봤는데, 무료라도 라이선스를 표기해야 하거나 제대로 쓰려면 돈을 내야 하는 것들만 보였다.

그러던 중에 반가운 이름이 하나 눈에 들어왔다. 구글 AI 스튜디오였다. 구글의 AI인 제미나이를 써 볼 수 있는 곳인데, 여기서 일본어 음성도 만들 수 있지 않을까 싶어 클로드한테 물어보니 된다고 했다. 마침 구글이 음성을 만드는 새 모델인 Gemini 3.8 Flash TTS를 막 내놓은 참이었다. 돈이 드는지부터 다시 물었더니 무료로 쓸 수 있는 몫이 있다고 해서, AI 스튜디오에서 키를 받아 넣었다. 클로드가 첫 몇 문장을 만들어 왔고, 들어 보니 브라우저 음성과는 비교도 안 됐다. 같은 문장이 이렇게까지 다르게 들릴 수 있나 싶었다.

음성은 청해부터 시작해서, 그때그때 만들지 않고 미리 오디오 파일로 만들어 두기로 했다. 그래야 누르자마자 바로 들을 수 있겠다고 생각했다.

청해 화면에서 음성을 트는 중
청해 화면. 「들어 보기」를 누르면 미리 만들어 둔 음성을 튼다.

오후 4시를 기다린 이유

소리는 기대보다 훨씬 좋았지만, 막상 쓰려고 하니 일이 꽤 많았다. 처음 걸린 건 한도였다. 무료로 쓸 수 있는 몫이 생각보다 작았다. AI 스튜디오 화면에 적힌 음성 모델의 무료 한도가 분당 3번, 하루 10번이었다. 한도는 미국 서부 시간 자정에 풀리는데, 한국 시간으로는 오후 4시였다.

결제를 켜면 한도가 훨씬 넉넉해지지만 켜지 않기로 했다. 대신 기다리기로 했다. 그 뒤로 한동안 오후 4시만 넘으면 클로드한테 「4시 넘었다」라고 말을 거는 게 하루 일과가 됐다. 클로드도 그 한마디면 알아서 그날 몫을 만들기 시작했다.

요청 한 번에 스무 문장, 한도를 아껴 쓰는 법

문법 예문만 해도 165개인데, 하루 열 번으로 하나씩 만들다가는 몇 주가 걸릴 판이었다. 그래서 한 번에 스무 문장씩 몰아서 읽히고, 받은 음성을 문장마다 잘라 쓰기로 했다.

그런데 자르는 게 생각보다 까다로웠다. 문장이 끝나고 쉬는 틈이나 문장 중간에 숨 고르는 틈이나 길이가 거의 비슷해서, 어디서 한 문장이 끝나는지 알 수가 없었다.

그때 클로드가 쉬는 틈 말고 문장 길이를 보고 자르자는 아이디어를 냈다. 긴 문장은 읽는 데 오래 걸리고 짧은 문장은 금방 끝나니, 문장마다 글자 수를 세어 보면 어디쯤에서 끊으면 될지 대충 감이 온다는 거였다. 그 근처 틈에서 자르고, 길이가 영 안 맞는 조각은 다시 만들게 했다. 덕분에 그동안 제대로 자르지 못했던 음성에서도 스무 문장을 건질 수 있었다.

몰아서 읽히니 말이 빨라졌다

잘라 놓고 나니 이번엔 빠르기가 문제였다. 처음에 한 문장씩 만든 것과 몰아서 만든 것의 빠르기가 달랐는데, 클로드가 재 보니 몰아서 읽힌 쪽이 1.4배쯤 빨랐다고 했다.

그래서 받은 음성마다 빠르기를 재서, 너무 빠르면 늦추고 느리면 조금 빠르게 틀도록 했다. 처음엔 기준을 느긋하게 잡았는데, 틀어 보니 너무 느려서 조금 올렸다. 목소리 높낮이는 그대로 두고 빠르기만 바꾼다.

받아 적게 해서 잘못 읽은 곳을 찾았다

일본어를 모르는 내가 들어서는 맞게 읽었는지 알 수가 없다. 그래서 만든 음성을 다른 모델에게 들려주고, 들리는 대로 받아 적게 했다. 받아 적은 것을 원래 문장과 맞대어 보고, 다르면 알려 주게 했다.

이렇게 해서 잡은 것이 둘 있었다.

  • 「こうえん で はしったり」를 「公園では走ったり」로, 없는 は를 하나 더 넣어 읽었다. 보낼 때 띄어쓰기를 지웠더니 「こうえんではしったり」가 한 덩어리가 되면서 생긴 일이었다. 띄어쓰기를 다시 살렸다.
  • 「今、午前九時です」의 午前(오전)을 ごご(오후)로 읽었다. 午前을 가나로 바꿔서 다시 만들었다.

다르다고 뜬 것이 다 틀린 건 아니었다. 「電気(でんき)」와 「読書(どくしょ)」는 받아 적은 쪽이 「てんき」, 「とくしょ」라고 적었는데, 내가 직접 들어 보니 「뎅키」, 「도쿠쇼」로 잘 들렸다. 받아 적는 쪽이 첫소리를 잘못 들은 것 같았다. 그 뒤로는 다르다고 떠도 바로 고치지 않고, 한 번 더 받아 적게 하거나 내가 들어 보고 정했다.

받아 적기로 못 보는 것도 있다. 일본어는 같은 소리라도 높낮이가 다르면 뜻이 달라지기도 한다는데, 받아 적기는 그 높낮이를 안 본다. 클로드가 「どこ」나 「なに」 같은 물음말을 끝을 올려 묻듯이 읽은 것 같다고 했는데, 내가 들어 보다가 어색하면 걷어내기로 하고 일단 두었다. 높낮이까지는 확인하지 못했으니, 이 음성은 듣고 무슨 말인지 알아보는 데까지만 쓰고, 발음을 따라 하는 교재로는 쓰지 않는다.

가나로 주니 가나를 읽듯이 읽었다

그렇게 다 만들고 나서 학습관으로 공부를 하는데, 챕터 5 중간쯤부터 말투가 좀 이상했다. 문장을 말한다기보다 히라가나를 한 글자씩 쭉 읽어 내려가는 느낌이었다.

클로드한테 왜 그런지 봐 달라고 했더니 이유가 두 가지였다. 하나는 그 부분을 만든 날 모델이 유독 빨리 읽어서, 우리가 일부러 느리게 늘려 틀고 있었다는 것. 다른 하나는 모델에게 히라가나만 보냈다는 것이었다. 학습관 예문은 배우는 사람을 위해 히라가나로 띄어 쓰는데, 그걸 그대로 보내니 모델도 어디서 끊어 읽어야 할지 헷갈렸던 것 같다.

그래서 같은 문장 열 개를 한자가 섞인 평범한 일본어로 바꿔서 보내 봤다. 「まいあさ ろくじ に おきます」 대신 「毎朝六時に起きます」처럼. 이번에는 빠르기도 알맞아서 따로 늘릴 필요가 거의 없었다. 클로드가 예전 음성과 새 음성을 한 화면에서 번갈아 틀어 볼 수 있게 만들어 줘서 나란히 들어 봤는데, 확실히 새 쪽이 사람이 말하는 것처럼 들렸다.

결국 문법 예문 165개와 청해 16개에 모델에게 줄 글을 하나씩 따로 달았다. 화면에는 지금처럼 히라가나만 보이고, 모델만 한자가 섞인 글을 받는다. 다만 읽는 법이 여러 개인 말은 가나로 남겨 뒀다. 「明日」는 あした로도 あす로도, 「日本」은 にほん으로도 にっぽん으로도 읽는다고 해서, 한자로 주면 모델이 우리가 원하지 않는 쪽으로 읽을 수도 있었다. 단어도 한자 표기가 두 글자 이상인 92개는 한자로 보내기로 했다.

그러고는 전부 다시 만들었다. 물론 이것도 하루 열 번씩, 며칠에 걸쳐서.

재생 버튼 대신 헤드셋 아이콘을 고른 이유

이제 처음에 접어 두었던 듣기 버튼을 다시 꺼낼 차례였다. 클로드가 처음 만든 건 동그라미 안에 재생 삼각형이 든 버튼이었다. 그런데 재생 버튼을 두면, 누른 뒤에는 일시정지나 정지, 되돌리기 같은 모양으로 바뀌어야 할 것만 같았다. 대부분 짧은 음성이라 그런 기능까지 넣을 필요는 없어 보였다. 그래서 언제 봐도 「듣기」라는 걸 알 수 있게 헤드셋 아이콘 하나로 두자고 했다.

대신 지금 소리가 나오고 있다는 건 눈으로 보여야 했다. 그래서 재생하는 시간만큼 동그라미 테두리가 시계 방향으로 차오르게 해 달라고 했다. 얼마나 남았는지도 숫자 없이 볼 수 있다. 재생하는 동안에는 다시 누를 수 없게도 해 달라고 했다.

예문 옆 헤드셋 버튼의 테두리가 차오르는 모습
예문마다 붙은 듣기 버튼. 재생하는 동안 테두리가 시계 방향으로 차오른다.

누를 때 짧게 떨리는 진동도 넣어 봤는데, 생각한 대로 동작하지 않아서 그냥 빼 버렸다. 대신 눈으로 보이는 쪽에 더 힘을 줬다. 누르면 버튼 가운데서부터 옅은 색이 동그랗게 차오르는 효과를 넣었다.

단어 671개, 청해 16개에 목소리가 생겼다

이렇게 해서 가나 102개 소리, 문법 예문 165개, 단어 671개, 청해 16개에 모두 음성이 붙었다. 청해는 원래 8개였는데, 이 정도면 음성을 믿고 맡겨도 되겠다는 생각이 들어서 청해가 없던 챕터들에도 새로 만들어 넣었다. 그렇게 16개가 됐다.

이제 목소리는 어느 기기에서 들어도 똑같고, 조사 は도 제대로 「와」로 읽는다.

돌아보면 이번 작업은 조금 색다른 경험이었다. 그동안은 클로드하고만 학습관을 만들어 왔는데, 이번에는 구글의 AI까지 함께 쓰게 됐다. 클로드가 일을 짜고, 제미나이가 소리를 내고, 또 다른 제미나이 모델이 받아 적으며 확인했다. 서로 다른 회사의 AI가 각자 맡은 일을 나눠 하는 걸 보니 꽤 재미있었다. 무료 한도 안에서 하나씩 부딪혀 가며 여기까지 왔고, 앞으로는 문장을 새로 쓰더라도, 듣고 알아듣는 연습에 쓸 소리만큼은 자신 있게 만들어 붙일 수 있을 것 같다.

구글 AI 스튜디오로 학습관에 목소리 붙이기 — 수미상관 水美想館