STT란?
STT(Speech-to-Text)는 사람의 음성을 글자로 받아쓰는 기술입니다. 음성 입력, 자막 자동 생성, 회의록 작성의 바탕이 됩니다.
STT(Speech-to-Text)는 사람이 말한 음성을 글자로 받아쓰는 기술입니다. 말 그대로 “받아쓰기”를 자동으로 하는 것이고, 음성 입력 앱·자동 자막·회의록·음성 명령(시리, 빅스비) 같은 데서 바탕이 됩니다.
작동은 크게 두 단계입니다. 소리의 파형을 음소·단어 후보로 바꾸고, 그다음 문맥을 보고 가장 그럴듯한 문장으로 다듬습니다. 예전엔 이 두 단계를 따로 만들었지만, 요즘은 OpenAI Whisper처럼 음성을 넣으면 문장이 바로 나오는 종단간(end-to-end) 신경망이 주류입니다.
한국어 STT는 영어보다 까다롭습니다. 받침과 연음, 외래어, 그리고 사람 이름·제품명 같은 고유명사에서 자주 틀립니다. 성능은 보통 CER(글자 오류율, 낮을수록 좋음)로 잽니다. 대표 엔진으로는 오픈소스이자 로컬에서 돌릴 수 있는 Whisper, 네이버 CLOVA, 리턴제로 VITO 등이 있습니다.
저는 STT를 그냥 쓰는 데서 그치지 않고, 아예 음성 입력 앱(Daybreak)을 직접 만들었어요. 바이브코딩하면서 타자 치는 게 너무 귀찮았거든요. “시리야!” 하는 그런 걸 직접 만든 셈입니다.
처음엔 리턴제로 VITO 클라우드 STT를 붙였는데, 스트리밍이라 빠르긴 했어도(300ms 정도) 구독 비용이 제 사용량 기준으로 손익분기가 안 맞았어요. 그래서 로컬 Whisper로 갈아탔습니다. 한국어 파인튜닝 모델(ghost613, large-v3-turbo 기반)을 쓰니까 글자 오류율이 2% 수준까지 떨어지고, M4 Pro에서 10초짜리 음성을 1초 만에 받아써요. 네트워크 왕복이 없으니까 체감이 즉각적입니다.
한국어 STT에서 진짜 골치 아픈 건 고유명사랑 전문용어를 자꾸 틀리게 받아쓰는 거예요. 저는 자주 틀리는 단어를 1:1로 교정하는 corrections 사전을 따로 두는데, 이 사전을 유튜브 자막 만드는 파이프라인이랑 같이 씁니다.