본문으로 건너뛰기

© 2026 Molayo

r/LocalLLaMA분석2026. 06. 29. 23:06

Wispr Flow만큼 뛰어난 받아쓰기 파이프라인(오픈 소스)을 구축하는 데 필요한 것

요약

Wispr Flow와 유사한 성능을 가진 오픈 소스 받아쓰기 파이프라인 구축 과정을 공유합니다. 로컬 ASR 모델의 한계를 극복하기 위해 Whisper Large v3 Turbo와 Qwen3-32B를 결합한 후처리 레이어를 활용하여 개발자 용어 인식 정확도를 높였습니다.

핵심 포인트

  • 로컬 ASR 모델만으로는 개발자 전문 용어 처리에 한계가 있음
  • Whisper와 LLM(Qwen3)을 결합한 후처리 레이어로 문맥 및 용어 교정 가능
  • Groq와 Cloudflare Workers를 활용해 약 600ms의 낮은 지연 시간 달성
  • 오픈 소스 프로젝트로 GitHub에 전체 코드 공개

안녕하세요 여러분, Matt입니다. 지난 5주 동안 저는 Wispr Flow와 같은 오픈 소스 받아쓰기(dictation) 앱을 개발해 왔습니다. 지금까지 받아쓰기 파이프라인을 구축하며 얻은 몇 가지 학습 내용을 공유하고자 합니다.

저는 온디바이스(on-device)에서 실행되는 로컬 ASR(자동 음성 인식) 모델을 주요 초점으로 삼아 시작했습니다. Qwen3 ASR, Whisper.cpp와 같은 모델들이 그 대상이었습니다. 하지만 곧 이러한 모델들만으로는 실용적인 사용에 충분하지 않다는 것을 깨달았습니다.

로컬 모델 자체만으로는 문맥(context)과 용어(terminology) 처리에 매우 어려움을 겪었으며, 특히 개발자들에게는 더욱 그러했습니다. 제가 Qwen3 ASR로 테스트한 몇 가지 예시는 다음과 같습니다:

내가 말한 내용Qwen3 ASR이 생성한 내용
"Upload a file to S3, which fires EventBridge, which triggers Lambda""Upload a file to S three, which fires an event bridge, which triggers lambda."
"We're on Postgres 16 with pgvector 0.7""We're on Postgres sixteen with PG vector zero point seven."

그래서 저는 전사(transcription) 결과에 문맥적 조정과 정리를 수행할 수 있는 후처리(post-processing) 레이어를 결합하는 방법을 탐구하기 시작했습니다. 지연 시간(latency)과 정확도(accuracy) 사이의 트레이드오프(tradeoff)는 항상 치열한 싸움이었습니다.

받아쓰기 파이프라인에 대한 다양한 설정을 실험한 끝에, 저는 다음과 같은 파이프라인에 도달했습니다. 매우 간단합니다:

  1. 단축키를 누르고 말한 뒤 떼기 → 오디오가 Cloudflare Workers에 호스팅된 파이프라인으로 전달됨
  2. Whisper Large v3 Turbo(Groq에서 실행)를 사용하여 전사하되, 개발자 어휘에 가중치를 둠
  3. Qwen3-32B로 후처리 수행. 문법/구두점 및 개발자 어휘 수정 ("my sequel" → MySQL)
  4. 커서 위치에 붙여넣기

지금까지 결과에 만족하고 있습니다. 소프트웨어 개발 어휘를 잘 포착하며 상당히 정확합니다. 엔드 투 엔드(end-to-end) 전사 지연 시간은 약 600ms로, Wispr Flow와 경쟁할 만한 수준입니다. 저는 이를 완전히 신뢰하며 Wispr Flow를 대체할 수 있게 되었습니다. 다음 주에는 스트리밍(streaming)과 함께 Soniox를 사용하는 방안을 탐구해 볼 계획입니다. 그 학습 내용도 공유하겠습니다.

이 프로젝트가 흥미로우시다면, 지금까지의 모든 작업물을 GitHub에 공개했습니다. 꼭 확인해 주시고 별(star)을 눌러주시면 감사하겠습니다!


https://github.com/freestyle-voice/freestyle
제출자: /u/matt8p
[링크] [댓글]

AI 자동 생성 콘텐츠

본 콘텐츠는 r/LocalLLaMA의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0