본문으로 건너뛰기

성능 향상 방법

이 플러그인은 플랫폼에 따라 다른 GPU 가속 방법을 사용합니다: Windows와 Linux에서는 Vulkan을, Mac과 iOS 플랫폼에서는 Metal을 사용하여 인식 프로세스를 크게 가속화합니다. 다른 플랫폼에서는 CPU + 내장 함수(intrinsics)를 사용하여 가속합니다. 그러나 아래 권장 사항을 따르면 플러그인의 성능을 더욱 향상시킬 수 있습니다:

  1. 음성 활동 감지(Voice Activity Detection, VAD) 사용

    고정된 시간 간격을 기다리는 대신 사용자가 말을 멈추자마자 음성을 인식하도록 전송하여 인식기의 응답성을 향상시키기 위해 음성 활동 감지 사용을 적극 권장합니다. 특히 Silero VAD를 이 목적으로 권장합니다. 자세한 구현 방법은 음성 활동 감지 문서를 참조하세요.

  2. 스텝 크기(Step Size) 감소

    기본적으로 스텝 크기는 5000ms(5초)로 설정되어 있어, 캡처 중에 오디오 데이터가 5초마다 인식됩니다. 오디오 데이터를 더 자주 인식하려면 스텝 크기를 500ms(0.5초)와 같이 줄일 수 있습니다. 그러나 VAD가 활성화된 경우(일반적으로 권장되며, 고정 간격이 필요한 특별한 요구사항이 없는 한), 스텝 크기 감소에 의존하지 않는 것이 좋습니다. 음성 활성화 명령 인식이나 최종 버퍼 처리를 통한 자동 초기화 음성 인식과 같은 일반적인 설정에서 VAD를 사용할 경우, 사용자가 말을 멈추자마자 음성이 인식될 것입니다.

  3. 더 작은 언어 모델 사용

    모델 크기를 줄이고 성능을 향상시키기 위해 Tiny Quantized (Q5_1)와 같은 더 작은 언어 모델 사용을 고려할 수 있습니다. 언어 모델을 선택하는 방법에 대한 지침은 여기에서 찾을 수 있습니다.

  4. 인식 상태 관리 최적화

    마이크 입력 작업 시, 음성 인식기의 불필요한 중지와 시작을 피하세요. 리소스 재할당이 필요한 StopSpeechRecognitionStartSpeechRecognition을 자주 호출하는 대신, 오디오 입력을 직접 제어하는 것을 고려하세요. 예를 들어, 캡처 가능한 사운드 웨이브를 사용할 때는 인식 스레드를 활성 상태로 유지하면서 오디오 흐름을 관리하기 위해 StopCaptureStartCapture를 사용하세요.