-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
3줄 요약
options = whisper.DecodingOptions(fp16 = False, language="ko")whisper 예제 코드를 단순히 이렇게 바꾸셈
전체 소스 코드
audio = whisper.load_audio("voice/input.wav") # 저장된 음성 파일로 텍스트 추출
audio = whisper.pad_or_trim(audio)
mel = whisper.log_mel_spectrogram(audio).to(model.device)
_, probs = model.detect_language(mel)
# print(f"- 감지된 언어 : {max(probs, key=probs.get)}") # 입력 값 확인 후 반환
options = whisper.DecodingOptions(fp16 = False, language="ko") # 항상 한글로 해석해줌
result = whisper.decode(model, mel, options)
os.remove('voice/input.wav')해결 방법
위에 코드처럼
단순히 whisper.DecodingOptions에 language="ko"를 넣어주면된다.
options = whisper.DecodingOptions(fp16 = False, language="ko")whisper 처리 동작 소스 코드를 확인해보니깐,
whisper 모델 동작 구조는 다음과 같다.
- 음성 파일에 대한 언어 탐지
- 옵션에서 언어 설정을 하지 않으면, 가장 확률이 높은 언어를 선정
- 선정된 언어에 대해 speech2text 진행
물론 model.detect_language(대충 객체 뭐시기)
를 했을 경우 감지된 언어가 ko 한글이 아닌 다른 걸로 출력 될 수 있다. 하지만 이는 단순히 가장 높은 언어 확률을 내 뿜는 함수이며,
언어를 위에서 한 것 처럼 별도로 지정해주면 그냥 그 언어를 기준으로 STT를 진행해준다.
Metadata
Metadata
Assignees
Labels
No labels