로컬 음성 인식·합성

최종 업데이트

Phonon 2 로컬 영어 음성 받아쓰기 가이드

영어 오디오 파일을 내 컴퓨터에서 전사하고, 필요하면 단어별 시각이 담긴 JSON으로 저장할 수 있어요.

Phonon 2는 영어 음성을 텍스트로 바꾸는 로컬 ASR1 모델이에요. Fermion CLI2에 WAV 같은 오디오 파일을 지정하면 전사문을 출력하고, --json을 더하면 단어별 시작·끝 시각도 받을 수 있어요. Python 가상환경3에 도구를 설치하고 첫 전사를 실행하는 순서부터 안내합니다.

실행 조건과 핵심 내용
  • Phonon 2는 164 MB 다운로드의 저비트 QAT 모델로, Parakeet TDT 0.6B v3를 바탕으로 만들었어요.
  • 공식 CLI는 오디오 파일을 전사하고 --json에서는 단어마다 파일 시작점 기준 시각을 제공해요.
  • 공개 처리량은 M5 MacBook Air·8코어 Zen 5 CPU·batch 128 H100에서 각각 측정했어요.

녹음을 텍스트와 타임스탬프로 바꾸는 도구

Phonon 2는 영어 녹음을 입력받아 전사문을 출력하는 ASR(자동 음성 인식) 모델이에요. Fermion이라는 명령줄 도구가 모델을 내려받고 실행하므로, 터미널에서 오디오 파일 하나를 지정해 텍스트로 바꿀 수 있어요. --json 옵션을 쓰면 전체 전사문뿐 아니라 각 단어의 시작과 끝 시각도 결과에 담깁니다.

회의 녹음 초안을 만들거나 인터뷰에서 특정 단어가 나온 위치를 찾을 수 있어요. 결과 텍스트는 편집기나 검색 도구로 옮기고, 타임스탬프가 필요하면 JSON을 후처리하면 됩니다. Phonon 2는 영어 음성 전용 모델이에요.

Fermion CLI는 모델을 로컬에서 실행해요. 전사문은 표준 출력에, 진행 상황과 경고는 표준 에러 출력에 표시하고, 모델은 첫 실행 뒤 로컬 캐시에 저장돼 다음 실행에서 다시 내려받지 않아요.

노트북에 연결된 탁상 마이크와 헤드폰
녹음 파일을 Phonon 2에 넣으면 영어 전사문이 나와요.

작은 다운로드에 담긴 저비트 모델

Phonon 2의 다운로드 크기는 164 MB예요. Parakeet TDT 0.6B v3를 기반으로 가중치 양자화4 인식 훈련(QAT)을 적용했고, 가중치를 다섯 개의 학습된 값으로 표현해 약 2.1비트/가중치로 저장해요. 작은 파일로 영어 음성을 받아쓸 수 있어요.

개발사의 영어 7개 평가 세트에서 Phonon 2의 단어 오류율(WER)은 평균 5.21%, 압축 전 모델인 Parakeet TDT 0.6B v3는 4.96%였어요. 아래 표에서 전사 정확도와 장비별 처리 속도를 나눠 비교할 수 있어요.

개발사 공개 기록의 평가와 처리량
측정개발사 발표값실행·평가 조건
영어 평가 WER5.21%공개 영어 평가 세트 7종 평균
교사 모델 WER4.96%Parakeet TDT 0.6B v3
Mac 처리 속도약 174배 실시간M5 MacBook Air
CPU 처리 속도143배 실시간8코어 Zen 5
GPU 배치 처리6,680배 실시간H100 · batch 128

개발사 공개 측정 · WER는 Open ASR Leaderboard 영어 7세트 평균 · 속도는 M5 MacBook Air 약 20초/오디오 1시간(174배), 8코어 Zen 5 143배, H100 batch 128 6,680배. 측정표

영어 녹음 하나를 전사하기

공식 Fermion CLI는 Python 3.10 이상을 요구해요. macOS에 기본 포함된 python3가 3.9라면 Python 3.12처럼 지원되는 버전을 설치하고, 작업 폴더 안에 가상환경을 만들어요. 아래 예시는 Mac의 Apple Silicon 경로예요.

가상환경을 활성화한 터미널에서 패키지와 MLX5 실행 구성요소를 설치하세요. 패키지 이름은 fermion-research, 실행 명령은 fermion이에요. 모델을 따로 지정하지 않아도 phonon transcribe 별칭이 Phonon 2를 실행하지만, 여기서는 모델을 명시해 처음 보는 사람도 어떤 모델을 받는지 알 수 있게 해요.

표준 설치는 분리한 Python 환경 안에서 아래 순서로 실행해요.

설치가 끝나면 영어 WAV 녹음이 있는 폴더에서 recording.wav를 실제 파일명으로 바꿔 실행하세요. 첫 실행 때 모델 164 MB를 내려받고 실행 엔진을 준비하므로, 이후 전사보다 처음 시작이 오래 걸릴 수 있어요. 모델은 기본 Hugging Face 캐시에 저장돼요.

전사 명령은 텍스트만 표준 출력으로 보내므로 > transcript.txt를 붙이면 전사문 파일을 만들 수 있어요. 진행 상황과 경고는 표준 에러 출력에 표시됩니다. 첫 실행은 164 MB 모델을 내려받고 엔진을 준비해요.

Apple Silicon Mac에 설치하고 영어 녹음 전사
python3.12 -m venv .venv
source .venv/bin/activate
pip install fermion-research
pip install mlx mlx-audio mlx-lm soundfile scipy zstandard
fermion models
fermion transcribe phonon-2 recording.wav
`recording.wav`를 실제 녹음 파일명으로 바꾸고 Python 3.10 이상을 사용하세요.
노트북 옆의 휴대용 녹음기와 헤드폰, 펼친 메모장
회의 녹음은 먼저 전사한 뒤 이름과 숫자를 원음에 맞춰 교정하세요.

단어별 시각이 필요하면 JSON으로 저장해요

영상 자막을 맞추거나 녹음에서 특정 발언의 위치를 찾을 때 --json을 사용해요. 결과 객체에는 전사문과 모델 ID, 처리 시간, 단어 목록이 들어가고 각 단어의 start와 end는 오디오 시작부터의 초 단위 시각이에요.

--json 결과의 text 필드에는 전사문, words 배열에는 단어별 시작·끝 시각이 들어 있어요. JSON을 후처리해 영상 편집기에서 자막 시작과 끝을 맞추고 문장을 읽기 좋은 줄로 나누면 됩니다.

입력은 libsndfile이 읽을 수 있는 WAV·FLAC·OGG·AIFF예요. 샘플레이트와 채널 수는 도구가 16 kHz 모노로 변환해 처리하지만, MP3와 M4A는 바로 받지 않아요. 지원되지 않는 파일이면 CLI가 제시하는 ffmpeg 변환 명령을 실행해 WAV로 바꾼 뒤 다시 입력하세요.

텍스트와 단어 시각 JSON 내보내기
fermion transcribe phonon-2 recording.wav > transcript.txt
fermion transcribe phonon-2 recording.wav --json > transcript.json
두 파일을 같은 원본에서 만들어요. 출력 JSON은 단어 시각을 활용해 자막을 편집하는 데 쓸 수 있어요.
노트북과 녹음기, 헤드폰 옆에 정리된 전사 문서
전사문에 단어별 시작·끝 시각을 더하면 자막 구간을 만들 수 있어요.

전사문에서 이름과 숫자를 원음에 맞춰요

전사문을 받은 뒤에는 사람·회사·제품 이름과 숫자부터 녹음과 대조하세요. 회의록이나 인터뷰를 검색할 때 이 항목이 틀리면 찾으려는 발언을 놓치거나 기록을 잘못 전달할 수 있어요. 특히 실제 파일에서 이름과 금액이 나오는 구간을 들어보고 결과 텍스트와 맞춰보면 검토할 위치를 빠르게 좁힐 수 있습니다.

전문 용어나 고유명사가 반복해서 틀리면 --hotwords에 자주 나오는 단어를 최대 25개까지 지정할 수 있어요. 예를 들어 fermion transcribe phonon-2 recording.wav --hotwords "Acme, Quillon"처럼 실행하면 해당 용어가 발음과 가까운 후보일 때 우선 고려해요. 오디오가 실제 발음을 결정하므로 이름 표기는 녹음과 함께 확인하세요.

용어 목록을 바꿔가며 시험할 때는 같은 녹음으로 일반 전사와 hotwords 전사를 나란히 저장하면 차이를 확인하기 쉬워요. 두 결과를 비교한 뒤 이름 표기를 고치고, 금액·날짜·고유명사가 중요한 기록은 사람이 원음과 함께 최종 검토하세요.

처음 실행이 실패하면 앞선 오류부터 확인해요

python3.12: command not found가 나오면 지원되는 Python이 설치됐는지, 실행 파일 이름이 python3.12인지 확인하세요. 이미 Python 3.10 이상이 python3로 잡히면 가상환경 생성 명령에서 그 실행 파일명을 사용하면 됩니다. python --version으로 가상환경 안의 버전도 확인할 수 있어요.

fermion: command not found라면 가상환경이 활성화된 터미널인지 확인하고 pip show fermion-research로 패키지가 그 환경에 설치됐는지 확인하세요. Apple Silicon에서 MLX 의존성이 없다는 안내가 나오면 공식 문서의 추가 설치 명령을 실행한 뒤 같은 전사 명령을 반복해요. 공식 문서에 따르면 구성요소가 빠졌을 때 CLI도 설치에 필요한 명령을 보여줘요.

입력 파일 오류는 경로와 확장자부터 살펴보세요. MP3·M4A는 CLI가 안내하는 명령으로 WAV로 변환하면 돼요. 모델 다운로드가 멈췄다면 인터넷 연결을 확인한 뒤 같은 전사 명령을 다시 실행하세요.

마지막으로 전사 품질은 실제로 쓸 녹음 몇 개로 점검하세요. 말이 겹치거나 배경 소음이 있는 구간, 사람·제품 이름, 숫자 표기를 원음과 비교하면 자동으로 수정할 부분을 빠르게 찾을 수 있어요. 생성된 텍스트는 초안으로 보고 중요한 문서라면 사람이 교정한 뒤 사용하세요.

용어 각주

  1. 자동 음성 인식 — 음성에서 발화를 인식해 텍스트로 변환하는 기술입니다.

    본문으로 돌아가기
  2. CLI — Command-Line Interface의 약자입니다. 터미널에 명령어를 입력해 프로그램을 조작하는 방식입니다.

    본문으로 돌아가기
  3. Python 가상환경 — 프로젝트별로 Python 패키지를 분리해 설치하는 공간입니다. 패키지 버전 충돌을 줄이는 데 쓰입니다.

    본문으로 돌아가기
  4. 양자화 — 모델의 가중치나 계산값을 더 적은 비트로 표현해 저장 공간과 메모리 사용량을 줄이는 방법입니다. 표현 단계가 거칠어져 정확도에도 영향을 줄 수 있습니다.

    본문으로 돌아가기
  5. MLX — Apple이 개발하는 머신러닝 프레임워크로, Apple Silicon의 CPU와 GPU가 공유하는 메모리를 활용해 모델을 실행합니다.

    본문으로 돌아가기

자주 묻는 질문

이 글에서 가장 먼저 확인할 것은 무엇인가요?
Phonon 2는 영어 음성을 텍스트로 바꾸는 로컬 ASR 모델이에요. Fermion CLI에 WAV 같은 오디오 파일을 지정하면 전사문을 출력하고, `--json`을 더하면 단어별 시작·끝 시각도 받을 수 있어요. Python 가상환경에 도구를 설치하고 첫 전사를 실행하는 순서부터 안내합니다.