Skip to content

받아쓰기와 정리본 ​

NoType 은 같은 회의를 세 번 받아써요. 빠른 초안으로 바로 보여 주고, 큰 모델로 다듬고, 회의가 끝나면 녹음 전체로 정리본을 만들어요.

단계모델언제화면
실시간 초안WhisperLiveKit · small말하는 동안흐린 기울임꼴로 나타나요
회의 중 정밀 받아쓰기large-v3-turbo줄이 확정되면그 자리에서 글만 바뀌어요
회의 뒤 정리본large-v3-turbo (단어 시각)녹음을 멈춘 뒤정리본 보기로 따로 남아요

모두 내 맥에서 돌아요. 받아쓰기 언어는 기본 한국어(ko)예요.

실시간 초안 ​

에이전트가 WhisperLiveKit 을 127.0.0.1 의 빈 포트에 띄우고, 회의 오디오(webm/opus 조각)를 넣어 받아쓴 줄을 돌려받아요. 실시간 모델은 지금 늘 small 이에요. M1 16GB 에서 재 본 지연이 small 2초, medium 25초, turbo 19초여서 small 만 실시간을 따라가요.

회의 중 정밀 받아쓰기 ​

줄이 확정되면 에이전트가 그 구간의 오디오를 큰 모델(mlx-community/whisper-large-v3-turbo)로 다시 받아써요.

  • 정밀본이 오기 전까지 줄은 흐린 기울임꼴(초안)로 보여요.
  • 밀리면 최근 3줄만 정밀하게 하고, 오래된 것은 초안 그대로 둬요.
  • 서버는 45초 안에 정밀본이 안 오면 초안으로 확정해요.

메모리 24GB 미만인 맥에서는 꺼져 있어요

M1 16GB 에서 켜면 큰 모델이 WhisperLiveKit 과 GPU 를 다퉈 실시간 지연이 1.4~1.9초에서 3~12초로 늘었어요. 그래서 기본값(auto)은 메모리 24GB 미만이면 끄고, 정확도는 회의 뒤 정리본으로 올려요. 바꾸려면 NOTYPE_LIVE_REFINE을 써요.

회의 뒤 정리본 ​

녹음을 멈추면 서버가 정리를 시작해요. 회의 화면에 단계가 보여요.

  1. 정리본 받아쓰기: 에이전트가 녹음 전체를 받아 60초 덩이(조용한 곳에서 자름)로 단어 시각과 함께 받아써요. M1 에서 녹음 1분에 약 8초 걸려요.
  2. 교정: 정리본을 12줄씩 교정해요.
  3. 요약: 정리본 전체로 최종 요약을 새로 만들어요.
  4. 읽기 좋게: 화자별 문단으로 다듬은 보기를 만들어요.
  • 단어마다 실시간 줄의 화자 구간에 맞춰 줄로 묶어요. 그래서 회의 중에 붙인 화자 이름이 정리본에도 그대로 쓰여요.
  • 실시간 줄(초안·원문·교정본)은 따로 그대로 남아요.
  • 회의 중에 내가 고친 줄은 정리본에도 옮겨요.
  • 녹음이 없거나 에이전트가 정리본을 못 하면 실시간 줄로 정리해요.
  • 에이전트가 없으면 "맥의 에이전트가 연결되면 이어서 정리해요"로 기다렸다가, 붙으면 마저 해요.
  • 정리본 모델을 아직 받는 중이면 최대 40분 기다렸다가 시작해요.

끝난 회의에서 정리본부터 다시를 누르면 정리본 받아쓰기부터 다시 해요. 이때 정리본 줄에서 고친 것은 사라져요(실시간 줄에서 고친 것은 남아요).

환각 걸러 내기 ​

Whisper 계열 모델은 소리가 없는 곳에 없는 말을 지어내기도 해요. 서버가 받아쓴 글에서 이런 것을 걸러요.

  • 지문 괄호: "(웃음)", "[음악]"
  • 자막 문구: "시청해 주셔서 감사합니다"
  • 되풀이 고리: "아이들 아이들 아이들"
  • 말더듬: "없 없었나요"
  • 줄 끝의 잡음 음절 꼬리

실제 말을 싼 괄호는 괄호만 걷어요. "네 네", "냥냥이 사료"처럼 실제 말일 수 있는 것은 남겨요.