
1월에 일본에 가기 전에 기본 회화라도 하자는 것이 이 연재의 첫 목표였습니다. 단어장으로 단어는 외울 수 있어도, 말하기는 주고받을 상대가 있어야 연습이 됩니다. 그래서 Study(새 탭에서 열림)에 일본어 회화 기능을 만들었습니다. 정해 둔 상황 속 인물과 일본어로 말을 주고받고, 내 말에 틀린 곳이 있으면 한국어로 짚어 줍니다.
처음부터 제가 쓰려고 만든 기능입니다. 한동안 직접 쓰면서 시험하고 검증한 뒤에 사용권을 따로 판매하거나 나눠 드릴 생각입니다. 이번에도 코드는 AI가 만들고, 저는 무엇을 넣을지 정하고 결과를 확인했습니다.
대화 한 턴의 흐름
마이크 단추를 누르고 말하면 ElevenLabs의 받아쓰기가 음성을 글자로 바꿉니다. 받아 적은 글은 입력창에 들어가서 고친 뒤 보낼 수 있습니다. 보낸 글은 GPT가 받아 상황 속 인물로서 일본어 대답을 쓰고, 그 대답을 ElevenLabs가 다시 음성으로 읽습니다. 한 번 주고받는 데 운영 사이트에서 3~5초쯤 걸립니다.

대화 내용은 사이트 서버나 DB에 남기지 않습니다. 앞에서 나눈 대화는 브라우저가 들고 있다가 말할 때마다 함께 보내고, 서버는 전달만 합니다. DB에는 사용권과 사용 기록(시각, 고른 상황, 쓴 양)만 남습니다. 그 대신 창을 닫으면 대화가 사라지므로, 남기고 싶으면 내려받기로 파일을 받아 둡니다.
대답할 AI 고르기
처음에는 Gemini로 붙였습니다. 쓰던 3.1 Flash-Lite는 응답 시간이 0.9초에서 16초까지 들쭉날쭉했고, 무료 등급은 1초에 한 번꼴로만 불러도 한도에 걸렸습니다. 어차피 제대로 쓰려면 돈을 내야 했고, 값이 비슷하다면 대답의 질이 더 나은 쪽을 쓰는 게 낫다고 보고 GPT-6 Luna로 바꿨습니다.
대화를 업체 쪽에 보관해 두고 이어 말하는 방식도 시험했습니다. 앞 대화를 매번 다시 보내지 않으니 비용이 줄 거라 생각했는데, 20턴을 돌려 보니 보관해도 앞 대화가 매 턴 입력 토큰으로 다시 계산됐고 한 턴이 3초쯤 더 걸렸습니다. 그래서 보관하지 않고 앞 대화를 매번 함께 보내는 방식으로 정했습니다.
크레딧이 빠지는 기준
대화 한 번에 드는 비용은 대부분 대답을 음성으로 만드는 데서 나옵니다. 받아쓰기는 그보다 훨씬 적고, GPT가 대답 글을 쓰는 몫은 아주 작습니다. 그래서 비용은 상대의 대답이 얼마나 긴지에 따라 크게 달라집니다.
요청마다 기록한 사용량을 ElevenLabs와 OpenAI의 사용량 화면과 맞춰 봤더니 정확히 같았습니다. 그래서 크레딧도 요청마다 실제로 쓴 양에 비례해 빠지게 했습니다. 내 말이 길거나 상대의 대답이 길면 그만큼 더 빠집니다.
일본어로 새는 조언
조언 받기를 켜면 내 말마다 틀린 곳을 한국어로 알려 줍니다. 그런데 지시문에 조언은 한국어로 쓰라고 몇 번을 적어도 조언이 자꾸 일본어로 나왔습니다. 한국어로 시작했다가 중간부터 일본어로 넘어가기도 했습니다.
원인은 지시문에 있던 것으로 보입니다. 대답은 일본어여야 해서 지시문 전체를 일본어로 썼는데, 조언 규칙도 그 안에 일본어로 들어 있었습니다. 조언 규칙만 한국어로 다시 쓰고 응답 형식의 칸 이름도 advice에서 korean_advice로 바꿨더니, 같은 문장 세 개로 시험했을 때 셋 다 한국어로 나왔습니다. 칸 이름 하나로 결과가 달라졌습니다.
그래도 대화가 길어지면 조언이 틀린 곳을 놓치거나 다시 일본어로 새는 일이 있었습니다. 상황 속 인물로 대답하는 일과 한국어로 조언하는 일을 한 번에 시킨 것이 문제로 보여서, 조언은 대답과 따로 부르게 바꿨습니다. 두 요청을 동시에 보내니 기다리는 시간은 그대로이고, 조언 쪽은 인물 설정 없이 내 마지막 말의 틀린 곳만 봅니다.

상황과 화자
상황은 학원 선생님, 길에서 만난 현지인, 한국에 놀러 온 친구, 거래처 회의, 일본어가 서툰 여행자 다섯 가지입니다. 선생님을 뺀 네 상황은 대화를 시작할 때마다 장소나 주제를 무작위로 뽑고, 자유 대화를 켜면 상황을 직접 적을 수 있습니다.
화자는 여성과 남성 목소리 중에서 고르거나 무작위로 정합니다. 일본어는 남녀가 쓰는 1인칭과 문장 끝 말투가 달라서, 고른 목소리의 성별을 지시문에도 넣어 말투를 맞췄습니다.

직접 써 보니 학원 선생님이 오히려 어려웠습니다. 선생님이 대답 끝마다 교정을 붙여 대답이 길어졌고, 쉬운 말을 쓰라는 지시도 누구에게 하는 말인지 모호했습니다. 선생님은 학생 수준에 맞춰 말하게 하고, 조언을 켰을 때는 교정을 조언 칸에만 두게 바꿨더니 대답이 절반 가까이 짧아졌습니다. 지금은 일본어가 서툰 여행자가 가장 쉽습니다. 상대도 일본어가 서툴러서 짧고 쉬운 문장으로 말하기 때문입니다.
마치며
회화는 베타 기능으로 열어 두고 한동안 직접 쓰면서 다듬습니다. 다음은 다시 급별 자료로 돌아가 N4부터 N1까지 하나씩 만들어 갑니다.
COMMENTS
댓글을 불러오고 있습니다.